Commit Graph

58 Commits

Author SHA1 Message Date
Dr-Noob
1eb1a5246e [v1.02][x86] Extending peakperf computation to hybid cores 2022-11-05 18:17:38 +00:00
Dr-Noob
ff5166ea2e [v1.02][x86] Adding support for topology detection of hybrid cores 2022-11-05 17:48:20 +00:00
Dr-Noob
051d48b7d1 [v1.02][x86] Suport for detecting hybrid_flag 2022-10-20 20:49:10 +00:00
Dr-Noob
e91eef3e65 [v1.02][x86] Split feature detection into a separate function 2022-10-20 20:48:22 +00:00
Dr-Noob
4229e2c63b [v1.01][X86] Do not assume that cach and topo structures are non-NULL, which may easily happen in VMs. Add protection against NULL fields in cpu structure 2021-12-03 23:15:23 +01:00
Dr-Noob
4a9bbef086 [v1.01] Fix compiler warning 2021-11-20 10:27:34 +01:00
Dr-Noob
7226adb04d [v1.00] Skeleton for future support for other vector instructions in --accurate-pp 2021-11-19 21:36:55 +01:00
Dr-Noob
a5b321a966 [v1.00][X86] Retrieve topology from udev when APIC fails (like #119) 2021-11-01 13:55:49 +01:00
Dr-Noob
6981d61eaf [v1.00][X86] Show unknown string when the number of cores cannot be retrieved (like #119) 2021-11-01 13:07:48 +01:00
Dr-Noob
bb12a2c276 [v1.00] Fix ambiguity in uarch detection with 0x806E9; it may be Amber/Kaby Lake (thanks to #122 for pointing this out!). We can differentiate by CPU name (hacky, but is there a better way?) 2021-10-07 22:37:29 +02:00
Dr-Noob
2cdc31392a [v1.00] Add --accurate-pp option (Linux x86_64) only. Needs more work to make it stable (add support for non-AVX, AVX512, etc) 2021-09-16 15:13:26 +02:00
Dr-Noob
ca5677a77f [v0.99][X86] Improve CPU abbreviate code 2021-08-12 10:39:26 +02:00
Dr-Noob
6d79a96fa8 [v0.99][X86] Add --full-cpu-name option 2021-08-11 23:24:48 +02:00
Dr-Noob
06a76d4c75 [v0.99][X86] Add function to abbreviate Intel CPU names from CPUID 2021-08-10 15:57:27 +02:00
Dr-Noob
5737f1ecaf [v0.98][Refactoring] Do not use hv_present in get_freq_from_file 2021-08-07 10:38:32 +02:00
Dr-Noob
fba69daee0 [v0.98][Refactoring] Simplify x86 get_str_topology 2021-08-07 10:27:41 +02:00
Dr-Noob
a03f296390 [v0.98] Fix bug in get_str_peak_performance and always show unknown pp when freq is also unknown 2021-08-07 08:58:49 +02:00
Dr-Noob
2b21326167 [v0.98][Refactoring] Use printWarn + strerror(errno) instead of perror. Use fallback in ppc in case total_cores cannot be retrieved 2021-08-07 08:45:37 +02:00
Dr-Noob
c24dd7cbb6 [v0.98][Refactoring] Use int for peak performance, which makes code cleaner 2021-08-06 11:04:29 +02:00
Dr-Noob
6953d8dda5 [v0.98][Refactoring] Unify the use of get_str_peak_performance 2021-08-06 10:26:07 +02:00
Dr-Noob
44d4b3b553 [v0.98][Refactoring] Unify the use of init_topology_struct and init_cache_struct 2021-08-05 20:01:32 +02:00
Dr-Noob
6ab6afc974 [v0.98][Refactoring] Unify the use of unknown string 2021-08-05 19:07:09 +02:00
Dr-Noob
c4f6ba7c55 [v0.98] Fix compilation in different platforms 2021-08-04 23:33:44 +02:00
Dr-Noob
eac97bf721 [v0.98] Use malloc/calloc wrapper that exits when alloc fails, as suggested by #90 2021-08-04 10:01:32 +02:00
Dr-Noob
3a636c101b [v0.98] Use unsigned integers in bit operations as suggested by #76 2021-08-03 23:54:49 +02:00
Dr-Noob
e22c2a8f3c [0.97] Do not count "L4" cache when computing the max cache level. Fixes #43 2021-05-03 15:04:28 +02:00
Dr-Noob
37eba4ba0c [v0.97] Do not consider CPUID freq == 0 as a bug. Check udev if CPUID freq is not supported 2021-04-13 15:33:54 +02:00
Dr-Noob
9fa7b4ce7f [v0.97] Use DESTDIR instead of PREFIX in Makefile 2021-04-12 15:47:59 +02:00
Dr-Noob
ec5f80adc1 [v0.97] Fix compilation in macOS 2021-04-09 15:49:21 +02:00
Dr-Noob
ecca042d86 [v0.97] Manually merge bugfix branch with latest fixes 2021-04-09 15:37:17 +02:00
Dr-Noob
8bb65e0cc0 [v0.96] Fix compilation issue in Windows 2021-04-09 09:25:48 +02:00
Dr-Noob
e8d2898ae3 [v0.96] Remove cache sizes check 2021-04-08 13:18:35 +02:00
Dr-Noob
044608f31f [v0.95] Add 0x8000001D sublevel query to --raw option 2021-04-07 14:35:45 +02:00
Dr-Noob
2879876500 [v0.96] Dont treat unknown unified cache as a bug, since there are some processors with eDRAM which supports this level, like #41 2021-04-07 11:17:43 +02:00
Dr-Noob
c7cc8be712 [v0.96] Use lower verbosity for some errors found in cpuid 2021-04-07 10:37:17 +02:00
Dr-Noob
d56f7ffd14 [v0.96] Fix segfault when invalid cache size is found 2021-04-06 12:56:44 +02:00
Dr-Noob
7420792ef5 [v0.95] Fetch topology extensions field in AMD processors 2021-03-30 10:39:27 +02:00
Dr-Noob
db32cccd91 [v0.95] Add --raw option 2021-03-15 21:49:47 +01:00
Dr-Noob
a8d8ac2e91 [v0.95] Temporarily disable cache sanity checks 2021-03-06 22:13:32 +01:00
Dr-Noob
e21ca95da8 [0.95][x86] Merge bugfix branch, which adds macOS support to cpufetch 2021-01-14 18:46:41 +01:00
Dr-Noob
3bac5cbfe2 [v0.95][x86] Print CPUID 0x1 EAX register with debug flag 2021-01-10 22:03:25 +01:00
Dr-Noob
697a921042 [X86] Avoid checking /sys directory in macOS to find frequency 2021-01-10 09:01:50 +01:00
Dr-Noob
3b624f3025 [X86] Fix bug where unknown hypervisor caused a segfault. This should solve issue #38 2021-01-05 17:37:26 +01:00
Dr-Noob
797c708f2d [v0.94][x86] Consider missing frequency file in x86_64 as a bug if no hypervisor is present. Took this idea from issue #37. Add if hypervisor is present to debug mode to prevent more confusions in the future 2020-12-29 00:09:01 +01:00
Dr-Noob
56a1da3428 [v0.94] Do not consider missing frequency file in x86_64 as a bug. Fix typos 2020-12-26 08:52:14 +01:00
Dr-Noob
01e22b8090 [v0.94] Fix compilation issues 2020-12-01 16:13:38 +01:00
Dr-Noob
b1f3196e0d [v0.94] Refactor CPU features in a separate struct. Remove x86 debug functions 2020-12-01 12:16:12 +01:00
Dr-Noob
fbea497740 [v0.89] Change freq from int64 to int32, which fixes a compilation issue. Fix Makefile in Windows 2020-11-24 12:52:42 +01:00
Dr-Noob
fcb2c716db [v0.87][FREQ] Frequency in udev is now fetched as a per core basis. Before this commit, freq was always fetched from core 0. This allows ARM do detect the max frequency of each of the cores (which may or may not be the same in all of them) 2020-11-22 10:23:02 +01:00
Dr-Noob
0875c4d425 [v0.87][ARM] cpuInfo now holds all the structs (freq, cache, etc), instead of having them separated. This allows ARM to represent a single CPU, because from its pointer, it is able to access the specific frequency, cache, etc 2020-11-22 09:57:50 +01:00