1
0
Fork 0
mirror of https://github.com/anrieff/libcpuid synced 2025-06-07 00:51:40 +00:00
Commit graph

82 commits

Author SHA1 Message Date
The Tumultuous Unicorn Of Darkness
2b2aeea9fa
Enable LFS for XZ files 2025-05-24 07:33:18 +02:00
The Tumultuous Unicorn Of Darkness
098d155c2c
DB: add AMD Strix Halo
Related to InstLatx64/InstLatx64@8107d5c93f
2025-05-24 07:25:07 +02:00
The Tumultuous Unicorn Of Darkness
b71d8216cb
Tests: add more AMD Strix Point
Related to InstLatx64/InstLatx64@fd320d2182
2025-05-24 07:19:29 +02:00
The Tumultuous Unicorn Of Darkness
56ed6bd7bf
DB: add AMD Krackan Point
Related to InstLatx64/InstLatx64@7127e3f99a
2025-05-17 15:24:28 +02:00
The Tumultuous Unicorn Of Darkness
87bc719460
DB: add more AMD CPUs from K5 to Zen 3 2025-05-03 21:46:06 +02:00
The Tumultuous Unicorn Of Darkness
790c067401
Tests: rename all files according to brand string 2025-05-01 09:30:29 +02:00
The Tumultuous Unicorn Of Darkness
0ce318ee58
Add technology_node field to struct cpu_id_t 2025-04-30 21:33:05 +02:00
The Tumultuous Unicorn Of Darkness
dc06877f4f
Update match_entry_t to remove internal codes and bits
Remove brand_code, model_bits and model_code fields, add a new brand sub-struct.

There fields were complicated to manage, adding complex functions to make it work.
amd_bits_t and intel_bits_t enums were truncated, I had to replace them with #define in 2e01aa0303.

Some of these #define were conflicting with other C headers (ctype.h on OpenBSD, corecrt_wctype.h on Windows), that is why I wanted to get rid of it.

I updated some CPU codenames meanwhile for more consistency.

Fix #212.
2025-04-27 19:22:11 +02:00
The Tumultuous Unicorn Of Darkness
4308bc4986
Tests: compress some big files with XZ 2025-02-23 10:56:52 +01:00
The Tumultuous Unicorn Of Darkness
44ba0e69a0
DB: add AMD Turin Dense
Related to InstLatx64/InstLatx64@6b10282fa6
2025-02-23 10:52:15 +01:00
The Tumultuous Unicorn Of Darkness
43be84460c
DB: add AMD Turin 2024-11-30 12:32:41 +01:00
The Tumultuous Unicorn Of Darkness
39506501d5
Tests: fix the --fix option
--fix was removing delimiters from real output, but there are required.
2024-08-25 21:05:36 +02:00
The Tumultuous Unicorn Of Darkness
3b8b7dfaf8
Detect x2APIC and AVX512 for AMD CPUs and update tests
AVX512 is supported since Zen 4, meaning all Zen 4 CPUs are x86-64-v4.
x2APIC and AVX512 are present in 'Processor Programming Reference (PPR) for AMD Family 19h Model 11h, Revision B1'.
2024-08-25 20:49:56 +02:00
The Tumultuous Unicorn Of Darkness
ca5e1e399d
Tests: add more AMD Raphael 2024-08-25 20:16:19 +02:00
The Tumultuous Unicorn Of Darkness
0438cbaae5
Tests: add more AMD Vermeer 2024-08-25 20:16:04 +02:00
The Tumultuous Unicorn Of Darkness
a9ec98f2bf
DB: add AMD Granite Ridge 2024-08-25 20:09:32 +02:00
The Tumultuous Unicorn Of Darkness
23b6674ba1
Fill CPU purpose for AMD in cpuid_identify_amd() 2024-06-29 17:45:36 +02:00
The Tumultuous Unicorn Of Darkness
f627d0ee6f
Tests: update CPUID 8FFFFFFF value
No comment.
2024-06-29 17:30:34 +02:00
The Tumultuous Unicorn Of Darkness
959edc34e7
Add cpu_feature_level_t enumerated values for x86 CPUs
I had to fix run_tests.py to update all test files properly.
Fix #177
2024-06-29 17:01:50 +02:00
The Tumultuous Unicorn Of Darkness
0dae8b8d92
check-consistency: fix processor definitions checks
Processor definitions checks were not working due to old harcoded values.
The tool pointed a typo in codename for "Athlon 64 (Sherman/512K)".
2024-06-23 20:10:22 +02:00
The Tumultuous Unicorn Of Darkness
ddb8000fd3
DB: add more AMD Phoenix (8000 series) 2024-06-01 10:43:05 +02:00
The Tumultuous Unicorn Of Darkness
838cfa6bce
DB: add AMD Hawk Point
Related to TheTumultuousUnicornOfDarkness/CPU-X#329
2024-06-01 09:53:15 +02:00
The Tumultuous Unicorn Of Darkness
67319216d8
DB: add more AMD Van Gogh
Related to InstLatx64/InstLatx64@8684ca320e
2024-04-28 11:18:59 +02:00
The Tumultuous Unicorn Of Darkness
43ee47f965
DB: add AMD Storm Peak
Related to InstLatx64/InstLatx64@37bd7b1ac2
2023-12-30 12:14:27 +01:00
The Tumultuous Unicorn Of Darkness
ede3b8ca9e
DB: add AMD Ryzen Z1 2023-09-24 11:41:18 +02:00
The Tumultuous Unicorn Of Darkness
c0f1c9c7ec
DB: add AMD Phoenix
Related to InstLatx64/InstLatx64@de67975202
2023-05-14 19:19:20 +02:00
The Tumultuous Unicorn Of Darkness
5553b37043
Tests: fix test result for AMD EPYC Genoa
amd_ext_topology Git branch not merged yet.
2023-05-08 16:35:31 +02:00
The Tumultuous Unicorn Of Darkness
b4aa93f204
DB: add AMD Genoa
Related to InstLatx64/InstLatx64@7faa0c2306
2023-05-02 21:04:10 +02:00
The Tumultuous Unicorn Of Darkness
a4fd6b5ecb
DB: add AMD Rembrandt APU
Related to InstLatx64/InstLatx64@a9b0a0f160
2023-04-01 16:43:58 +02:00
The Tumultuous Unicorn Of Darkness
e94d675039
DB: add AMD 4700S, rename 4800S
https://www.amd.com/fr/desktop-kits/amd-4700s
2022-11-11 19:27:57 +01:00
The Tumultuous Unicorn Of Darkness
94930cb891
DB: add AMD Athlon 64 Sherman
Related to TheTumultuousUnicornOfDarkness/CPU-X#255
2022-11-11 16:59:21 +01:00
The Tumultuous Unicorn Of Darkness
ac084cc6e9
DB: add more AMD Renoir
Ryzen 7 4800S Desktop Kit
Refer to InstLatx64/InstLatx64@2cdaa4a2ec
https://www.amd.com/en/product/9081
2022-11-11 16:42:09 +01:00
The Tumultuous Unicorn Of Darkness
c839e597ae
DB: add AMD Mendocino
Refer to InstLatx64/InstLatx64@936e7e1c80
https://www.anandtech.com/show/17584/amd-launches-mendocino-apus-zen-2-ryzen-and-athlon-7020-series-with-rdna-2-graphics
2022-11-11 16:23:37 +01:00
Xorg
afd80271bd
DB: add AMD Van Gogh
This APU is used by Steam Deck
2022-10-01 18:07:13 +02:00
Xorg
3524cb5203
DB: add AMD Dali
https://en.wikichip.org/wiki/amd/cores/dali
2022-10-01 18:07:00 +02:00
Xorg
863bf79bc9
DB: add AMD Raphael 2022-10-01 17:36:40 +02:00
Xorg
7ab6b3273c
DB: add AMD custom APU for Steam Deck
Fix X0rg/CPU-X#236
2022-09-27 20:19:12 +02:00
Xorg
3ed66b7613
Treat others CPU packages as different CPU types
If a RAW dump is containing for instance 256 logical CPUs (2 sockets with 64 cores and SMT), they should not be considered as a 128 cores CPU with SMT.
2022-09-22 21:50:08 +02:00
Xorg
1a0eb95d02
DB: add more AMD Kabini 2022-09-22 20:54:25 +02:00
Xorg
f23a2e3a41
DB: add AMD Steppe Eagle 2022-09-22 20:46:36 +02:00
Xorg
e591e52245
DB: add AMD Beema 2022-09-22 20:46:23 +02:00
Xorg
a3b9b7a798
DB: add AMD Abu Dhabi 2022-09-22 20:27:08 +02:00
Xorg
401a56e4cb
DB: add AMD Interlagos 2022-09-22 20:26:55 +02:00
Xorg
ee97ed213a
DB: rename AMD Bulldozer to Zambezi 2022-09-22 20:17:33 +02:00
Xorg
a98817b804
DB: add AMD Bald Eagle 2022-09-22 20:10:36 +02:00
Xorg
5b8d89a37d
Tests: replace converted RAW dumps from instlatx64 to AIDA64 format
Since 2b8023f733 and 6b742be8cb, it makes sense to update these tests to add:
- RAW CPUID for all CPU cores
- Number of caches instances
2022-09-22 19:36:48 +02:00
Xorg
6b742be8cb Add cache instances field in cpu_id_t and system_id_t 2022-09-22 17:49:38 +02:00
Xorg
0c9ef3249c Decode deterministic cache info for AMD CPUs too
Since Zen-based CPUs, cpu_id_t::l3_cache is the size of the total L3 cache for the whole chip, while cpu_id_t::l1_cache and cpu_id_t::l2_cache are size for each instances.
This change provide L3 cache size per instance.
2022-09-22 17:49:38 +02:00
Xorg
b1732e4785
Tests: minor fixes
Since ff5aafb5f4, xeon-scalable-4114.test and qemu.test are failling because RAW came from a VM.
Since 2b8023f733, godavari-x4.test is failling due to the merge after 9710e7c0ba
2022-09-20 06:58:32 +02:00
Xorg
2b8023f733
Support for hybrid CPU (#166)
* Set CMAKE_C_FLAGS_DEBUG to display warnings during build

CI workflows are reporting warnings. Adding more C flags here help to avoid that.

* Add new types

* Add set_cpu_affinity function

* Add cpu_identify_all function

* Add cpu_request_core_type function

* Add cpuid_get_all_raw_data, cpuid_serialize_all_raw_data and cpuid_deserialize_all_raw_data functions

* Detect hybrid architecture for Intel CPUs

* Update cpuid_tool to detect all CPU logical cores

* Rename tests subdirectories for Intel Core

* Update all tests

Since e4309a6c4bc3ad875711a1599cba01a205b3103e, new fields are reported by cpuid_tool

* Add Intel Alder Lake

Fix #157

* Remove convert_instlatx64.c

This tool is not useful anymore because the cpuid_deserialize_raw_data_internal() function can natively parse them since 5667e1401c

* Fix affinity_mask computation

* Define _GNU_SOURCE in configure.ac

Forgotten in 4f80964db5

* Use dynamic raw array in cpu_raw_data_array_t

* Add cpu_affinity_mask_t type

* Improve set_cpu_affinity function

- Print a warning if logical CPU number is not supported on operating system
- Return a boolean value in case of success instead of an integer

* Improve cpu_identify_all and cpu_request_core_type functions

* Use dynamic array for cpu_types in system_id_t

This commit also adds cleanups, fixes and consistency

* Tests: update Ryzen 5 Matisse with all CPU cores

* Add affinity_mask_str_r function and address other comments

- Fixed cpuid_grow_raw_data_array and cpu_raw_data_array_t.logical_cpu_t with the correct type
- Added a note about hard limit of cpu_raw_data_array_t
- Fixed a typo in cpuid_deserialize_raw_data_internal

* Fix build on Windows
2022-09-15 18:37:08 +02:00