diff options
| author | Ashkan Aliabadi <ashkanaliabadi@fb.com> | 2020-01-21 14:15:03 -0800 |
|---|---|---|
| committer | Ashkan Aliabadi <ashkanaliabadi@fb.com> | 2020-01-21 16:28:18 -0800 |
| commit | 0e6bde92b343c5fbcfe34ecd41abf9515d54b4a7 (patch) | |
| tree | c6e450a5ee5a86c335f4e7de7e7eed9db4fac155 /tools | |
| parent | 97785054145da55cfef2ddc23babce455bbf90f9 (diff) | |
| download | platform_external_cpuinfo-0e6bde92b343c5fbcfe34ecd41abf9515d54b4a7.tar.gz platform_external_cpuinfo-0e6bde92b343c5fbcfe34ecd41abf9515d54b4a7.tar.bz2 platform_external_cpuinfo-0e6bde92b343c5fbcfe34ecd41abf9515d54b4a7.zip | |
Upstream the cpuinfo updates in XNNPACK/third_party/cpuinfo.patch. Author: The XNNPACK Team.
Diffstat (limited to 'tools')
| -rw-r--r-- | tools/cache-info.c | 2 | ||||
| -rw-r--r-- | tools/cpu-info.c | 50 | ||||
| -rw-r--r-- | tools/isa-info.c | 2 |
3 files changed, 43 insertions, 11 deletions
diff --git a/tools/cache-info.c b/tools/cache-info.c index ba0706f..05f69ee 100644 --- a/tools/cache-info.c +++ b/tools/cache-info.c @@ -60,6 +60,8 @@ int main(int argc, char** argv) { fprintf(stderr, "failed to initialize CPU information\n"); exit(EXIT_FAILURE); } + printf("Max cache size (upper bound): %"PRIu32" bytes\n", cpuinfo_get_max_cache_size()); + if (cpuinfo_get_l1i_caches_count() != 0 && (cpuinfo_get_l1i_cache(0)->flags & CPUINFO_CACHE_UNIFIED) == 0) { report_cache(cpuinfo_get_l1i_caches_count(), cpuinfo_get_l1i_cache(0), 1, "instruction"); } diff --git a/tools/cpu-info.c b/tools/cpu-info.c index caef424..7fa5187 100644 --- a/tools/cpu-info.c +++ b/tools/cpu-info.c @@ -73,8 +73,10 @@ static const char* uarch_to_string(enum cpuinfo_uarch uarch) { return "Broadwell"; case cpuinfo_uarch_sky_lake: return "Sky Lake"; - case cpuinfo_uarch_kaby_lake: - return "Kaby Lake"; + case cpuinfo_uarch_palm_cove: + return "Palm Cove"; + case cpuinfo_uarch_sunny_cove: + return "Sunny Cove"; case cpuinfo_uarch_willamette: return "Willamette"; case cpuinfo_uarch_prescott: @@ -87,6 +89,10 @@ static const char* uarch_to_string(enum cpuinfo_uarch uarch) { return "Silvermont"; case cpuinfo_uarch_airmont: return "Airmont"; + case cpuinfo_uarch_goldmont: + return "Goldmont"; + case cpuinfo_uarch_goldmont_plus: + return "Goldmont Plus"; case cpuinfo_uarch_knights_ferry: return "Knights Ferry"; case cpuinfo_uarch_knights_corner: @@ -117,6 +123,8 @@ static const char* uarch_to_string(enum cpuinfo_uarch uarch) { return "Excavator"; case cpuinfo_uarch_zen: return "Zen"; + case cpuinfo_uarch_zen2: + return "Zen 2"; case cpuinfo_uarch_geode: return "Geode"; case cpuinfo_uarch_bobcat: @@ -157,6 +165,8 @@ static const char* uarch_to_string(enum cpuinfo_uarch uarch) { return "Cortex-A55"; case cpuinfo_uarch_cortex_a57: return "Cortex-A57"; + case cpuinfo_uarch_cortex_a65: + return "Cortex-A65"; case cpuinfo_uarch_cortex_a72: return "Cortex-A72"; case cpuinfo_uarch_cortex_a73: @@ -165,6 +175,10 @@ static const char* uarch_to_string(enum cpuinfo_uarch uarch) { return "Cortex-A75"; case cpuinfo_uarch_cortex_a76: return "Cortex-A76"; + case cpuinfo_uarch_cortex_a76ae: + return "Cortex-A76AE"; + case cpuinfo_uarch_cortex_a77: + return "Cortex-A77"; case cpuinfo_uarch_scorpion: return "Scorpion"; case cpuinfo_uarch_krait: @@ -181,12 +195,16 @@ static const char* uarch_to_string(enum cpuinfo_uarch uarch) { return "Denver 2"; case cpuinfo_uarch_carmel: return "Carmel"; - case cpuinfo_uarch_mongoose_m1: - return "Mongoose M1"; - case cpuinfo_uarch_mongoose_m2: - return "Mongoose M2"; - case cpuinfo_uarch_meerkat_m3: - return "Meerkat M3"; + case cpuinfo_uarch_exynos_m1: + return "Exynos M1"; + case cpuinfo_uarch_exynos_m2: + return "Exynos M2"; + case cpuinfo_uarch_exynos_m3: + return "Exynos M3"; + case cpuinfo_uarch_exynos_m4: + return "Exynos M4"; + case cpuinfo_uarch_exynos_m5: + return "Exynos M5"; case cpuinfo_uarch_swift: return "Swift"; case cpuinfo_uarch_cyclone: @@ -258,13 +276,23 @@ int main(int argc, char** argv) { printf(", %s %s\n", vendor_string, uarch_string); } } - printf("Logical processors:\n"); + printf("Logical processors"); + #if defined(__linux__) + printf(" (System ID)"); + #endif + printf(":\n"); for (uint32_t i = 0; i < cpuinfo_get_processors_count(); i++) { const struct cpuinfo_processor* processor = cpuinfo_get_processor(i); + printf("\t%"PRIu32"", i); + + #if defined(__linux__) + printf(" (%"PRId32")", processor->linux_id); + #endif + #if CPUINFO_ARCH_X86 || CPUINFO_ARCH_X86_64 - printf("\t%"PRIu32": APIC ID 0x%08"PRIx32"\n", i, processor->apic_id); + printf(": APIC ID 0x%08"PRIx32"\n", processor->apic_id); #else - printf("\t%"PRIu32"\n", i); + printf("\n"); #endif } } diff --git a/tools/isa-info.c b/tools/isa-info.c index 594c46a..98ef919 100644 --- a/tools/isa-info.c +++ b/tools/isa-info.c @@ -67,6 +67,8 @@ int main(int argc, char** argv) { printf("\tAVX512BITALG: %s\n", cpuinfo_has_x86_avx512bitalg() ? "yes" : "no"); printf("\tAVX512VPOPCNTDQ: %s\n", cpuinfo_has_x86_avx512vpopcntdq() ? "yes" : "no"); printf("\tAVX512VNNI: %s\n", cpuinfo_has_x86_avx512vnni() ? "yes" : "no"); + printf("\tAVX512BF16: %s\n", cpuinfo_has_x86_avx512bf16() ? "yes" : "no"); + printf("\tAVX512VP2INTERSECT: %s\n", cpuinfo_has_x86_avx512vp2intersect() ? "yes" : "no"); printf("\tAVX512_4VNNIW: %s\n", cpuinfo_has_x86_avx512_4vnniw() ? "yes" : "no"); printf("\tAVX512_4FMAPS: %s\n", cpuinfo_has_x86_avx512_4fmaps() ? "yes" : "no"); |
