Template:Table of CPU flags: Difference between revisions

From CNM Wiki
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
 
(22 intermediate revisions by the same user not shown)
Line 1: Line 1:
<!-- /opt/nodeskel/tasks/compare-cpu-flags -->
<!-- generated by /opt/ccms/tasks/compare-cpu-flags; 2024-01-19
-----------------------------------------------
    To expand acronyms, simply consult kernel sources:
  CPU FLAGS          :    NODE GEN           
 
                    : gen2 gen3 gen4 gen5   
    sed -n '/^#define.*X86_[A-Z]\+_\([A-Z0-9_]\+\)[^(].*[/][*]/  {s//\L\1\t\t/;  s/[[:space:]]\?[*][/]//;  p}' \
  -----------------------------------------------
      /usr/src/kernels/*/arch/x86/include/asm/cpufeatures.h \
[https://en.wikipedia.org/wiki/Intel_ADX '''adx''']               :                x      
      | sort -u  | column -s"$(printf '\t')" -t
[https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#Advanced_Vector_Extensions_2 '''avx2''']               :                x      
-->
[http://en.wikipedia.org/wiki/FMA_instruction_set '''fma''']               :                x      
{| class="wikitable" style="text-align: center; margin: 1em auto 1em 1em;"
[https://en.wikipedia.org/wiki/Advanced_Vector_Extensions '''avx''']               :            x   x      
|+ style="caption-side:bottom; text-align: left; font-weight: normal;" | Major CPU capability flags by node generation. For details, see:  [https://en.wikipedia.org/wiki/CPUID#EAX.3D1:_Processor_Info_and_Feature_Bits CPUID instruction] in Wikipedia, a [https://unix.stackexchange.com/questions/43539/what-do-the-flags-in-proc-cpuinfo-mean StackExchange article], or <code>/usr/src/kernels/*/[https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/tree/arch/x86/include/asm/cpufeatures.h arch/x86/include/asm/cpufeatures.h]</code> in kernel sources.
[https://en.wikipedia.org/wiki/SSE4#SSE4.2 '''sse4_2''']             :  x   x   x   x      
|- style="background:#eee;"
-----------------------------------------------
! width="50%" | Flag name
! width="50"  |                                                                                                        gen5
! width="50" |                                                                                                              gen6
! width="50"  |                                                                                                                  gen7
! width="50" |                                                                                                                        gen8
|-
|                      cat_l2 cdp_l2 cldemote gfni movdir64b movdiri pconfig sha_ni umip vaes vpclmulqdq            || – || – || – || x
|-
| [https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#AVX-512                          avx512_bitalg      ] || – || – || – || x
|-
| [https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#AVX-512                          avx512_vbmi2        ] || – || – || – || x
|-
| [https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#AVX-512                          avx512_vpopcntdq    ] || – || – || – || x
|-
| [https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#AVX-512                          avx512ifma          ] || – || – || – || x
|-
| [https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#AVX-512                          avx512vbmi          ] || – || – || – || x
|-
| [https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#AVX-512                          avx512_vnni        ] || – || – || x || x
|-
| [https://en.wikipedia.org/wiki/Intel_MPX                                                    mpx                ] || – || x || x || –
|-
| [https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#AVX-512                          avx512bw            ] || – || x || x || x
|-
| [https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#AVX-512                          avx512cd            ] || – || x || x || x
|-
| [https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#AVX-512                          avx512dq            ] || – || x || x || x
|-
| [https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#AVX-512                          avx512f            ] || – || x || x || x
|-
| [https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#AVX-512                          avx512vl            ] || – || x || x || x
|-
| art clwb flush_l1d ibpb mba md_clear ospke pku ssbd stibp tsc_deadline_timer xgetbv1        xsavec                || – || x || x || x
|-
| 3dnowprefetch abm acpi aes aperfmperf apic arat arch_perfmon bmi1 bmi2 bts cat_l3 cdp_l3 cmov constant_tsc cqm cqm_llc cqm_mbm_local cqm_mbm_total cqm_occup_llc cx16 cx8 dca de ds_cpl dtes64 dtherm dts eagerfpu epb ept erms est f16c flexpriority fpu fsgsbase fxsr hle ht ida invpcid invpcid_single lahf_lm lm mca mce mmx monitor movbe msr mtrr nonstop_tsc nopl nx pae pat pbe pcid pclmulqdq pdcm pdpe1gb pebs pge pln pni popcnt pse pse36 pts rdrand rdseed rdt_a rdtscp rep_good rsb_ctxsw rtm sdbg sep smap smep smx ss sse sse2 sse4_1 ssse3 syscall tm tm2 tpr_shadow tsc tsc_adjust vme vmx vnmi vpid x2apic xsave xsaveopt xtopology xtpr        || x || x || x || x
|-
| [https://en.wikipedia.org/wiki/Advanced_Vector_Extensions                                  avx                ] || x || x || x || x
|-
| [https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#Advanced_Vector_Extensions_2     avx2               ] || x || x || x || x
|-
| [https://en.wikipedia.org/wiki/FMA_instruction_set                                         fma                 ] || x || x || x || x
|-
| [https://en.wikipedia.org/wiki/Intel_ADX                                                    adx                ] || x || x || x || x
|-
| [https://en.wikipedia.org/wiki/SSE4#SSE4.2                                                 sse4_2             ] || x || x || x || x
|}

Latest revision as of 16:57, January 19, 2024

Major CPU capability flags by node generation. For details, see: CPUID instruction in Wikipedia, a StackExchange article, or /usr/src/kernels/*/arch/x86/include/asm/cpufeatures.h in kernel sources.
Flag name gen5 gen6 gen7 gen8
cat_l2 cdp_l2 cldemote gfni movdir64b movdiri pconfig sha_ni umip vaes vpclmulqdq x
avx512_bitalg x
avx512_vbmi2 x
avx512_vpopcntdq x
avx512ifma x
avx512vbmi x
avx512_vnni x x
mpx x x
avx512bw x x x
avx512cd x x x
avx512dq x x x
avx512f x x x
avx512vl x x x
art clwb flush_l1d ibpb mba md_clear ospke pku ssbd stibp tsc_deadline_timer xgetbv1 xsavec x x x
3dnowprefetch abm acpi aes aperfmperf apic arat arch_perfmon bmi1 bmi2 bts cat_l3 cdp_l3 cmov constant_tsc cqm cqm_llc cqm_mbm_local cqm_mbm_total cqm_occup_llc cx16 cx8 dca de ds_cpl dtes64 dtherm dts eagerfpu epb ept erms est f16c flexpriority fpu fsgsbase fxsr hle ht ida invpcid invpcid_single lahf_lm lm mca mce mmx monitor movbe msr mtrr nonstop_tsc nopl nx pae pat pbe pcid pclmulqdq pdcm pdpe1gb pebs pge pln pni popcnt pse pse36 pts rdrand rdseed rdt_a rdtscp rep_good rsb_ctxsw rtm sdbg sep smap smep smx ss sse sse2 sse4_1 ssse3 syscall tm tm2 tpr_shadow tsc tsc_adjust vme vmx vnmi vpid x2apic xsave xsaveopt xtopology xtpr x x x x
avx x x x x
avx2 x x x x
fma x x x x
adx x x x x
sse4_2 x x x x