通过lscpu拿到cpu flags字段,可以对比指令之间的差异。Cpu flags的定义,可以参考Linux内核的头文件:cpufeatures.h « asm « include « x86 « arch - kernel/git/torvalds/linux.git - Linux kernel source tree
根据下表的对比,可以发现Hygon基于AMD Zen1,在加解密、安全防护、性能加速等方面是有指令缺失的。海光2代相比1代多出了cpb和ssbd两个指令集。
| AMD EPYC 7401P(Zen1) | Hygon C86 7185 | Hygon C86 7285 | 差异 |
| fpu | fpu | fpu | |
| vme | vme | vme | |
| de | de | de | |
| pse | pse | pse | |
| tsc | tsc | tsc | |
| msr | msr | msr | |
| pae | pae | pae | |
| mce | mce | mce | |
| cx8 | cx8 | cx8 | |
| apic | apic | apic | |
| sep | sep | sep | |
| mtrr | mtrr | mtrr | |
| pge | pge | pge | |
| mca | mca | mca | |
| cmov | cmov | cmov | |
| pat | pat | pat | |
| pse36 | pse36 | pse36 | |
| clflush | clflush | clflush | |
| mmx | mmx | mmx | |
| fxsr | fxsr | fxsr | |
| sse | sse | sse | |
| sse2 | sse2 | sse2 | |
| ht | ht | ht | |
| syscall | syscall | syscall | |
| nx | nx | nx | |
| mmxext | mmxext | mmxext | |
| fxsr_opt | fxsr_opt | fxsr_opt | |
| pdpe1gb | pdpe1gb | pdpe1gb | |
| rdtscp | rdtscp | rdtscp | |
| lm | lm | lm | |
| constant_tsc | constant_tsc | constant_tsc | |
| rep_good | rep_good | rep_good | |
| nopl | nopl | nopl | |
| nonstop_tsc | nonstop_tsc | nonstop_tsc | |
| cpuid | cpuid | cpuid | |
| extd_apicid | extd_apicid | extd_apicid | |
| amd_dcm | amd_dcm | amd_dcm | |
| aperfmperf | aperfmperf | aperfmperf | |
| pni | pni | pni | |
| pclmulqdq | PCLMULQDQ指令可以高效地执行无进位乘法,可应用于加速AES加密算法的执行. | ||
| monitor | monitor | monitor | |
| ssse3 | ssse3 | ssse3 | |
| fma | fma | fma | |
| cx16 | cx16 | cx16 | |
| sse4_1 | sse4_1 | sse4_1 | |
| sse4_2 | sse4_2 | sse4_2 | |
| movbe | movbe | movbe | |
| popcnt | popcnt | popcnt | |
| aes | 高级加密标准指令集,用于提升AES加密和解密速度 | ||
| xsave | xsave | xsave | |
| avx | avx | avx | |
| f16c | f16c | f16c | |
| rdrand | rdrand | rdrand | |
| lahf_lm | lahf_lm | lahf_lm | |
| cmp_legacy | cmp_legacy | cmp_legacy | |
| svm | svm | svm | |
| extapic | extapic | extapic | |
| cr8_legacy | cr8_legacy | cr8_legacy | |
| abm | abm | abm | |
| sse4a | sse4a | sse4a | |
| misalignsse | misalignsse | misalignsse | |
| 3dnowprefetch | 3dnowprefetch | 3dnowprefetch | |
| osvw | osvw | osvw | |
| skinit | skinit | skinit | |
| wdt | wdt | wdt | |
| tce | tce | tce | |
| topoext | topoext | topoext | |
| perfctr_core | perfctr_core | perfctr_core | |
| perfctr_nb | perfctr_nb | perfctr_nb | |
| bpext | bpext | bpext | |
| perfctr_llc | perfctr_llc | perfctr_llc | |
| mwaitx | mwaitx | mwaitx | |
| cpb | cpb | AMD Core Performance Boost,一种动态加速技术,可以根据负载需求自动提高处理器的频率,以提供更好的性能。类似于Inte睿频技术。 | |
| hw_pstate | hw_pstate | hw_pstate | |
| sme | AMD Secure Memory Encryption,主内存加密, | ||
| ssbd | ssbd | Speculative Store Bypass Disable,防止幽灵漏洞 | |
| sev | 支持加密虚拟机 | ||
| ibpb | ibpb | ibpb | |
| vmmcall | vmmcall | vmmcall | |
| fsgsbase | fsgsbase | fsgsbase | |
| bmi1 | bmi1 | bmi1 | |
| avx2 | avx2 | avx2 | |
| smep | smep | smep | |
| bmi2 | bmi2 | bmi2 | |
| rdseed | rdseed | rdseed | |
| adx | adx | adx | |
| smap | smap | smap | |
| clflushopt | clflushopt | clflushopt | |
| sha_ni | SHA1/SHA256 Instruction Extensions,用于提升SHA1/SHA256加解密速度 | ||
| xsaveopt | xsaveopt | xsaveopt | |
| xsavec | xsavec | xsavec | |
| xgetbv1 | xgetbv1 | xgetbv1 | |
| xsaves | xsaves | xsaves | |
| clzero | clzero | clzero | |
| irperf | irperf | irperf | |
| xsaveerptr | xsaveerptr | xsaveerptr | |
| arat | arat | arat | |
| npt | npt | npt | |
| lbrv | lbrv | lbrv | |
| svm_lock | svm_lock | svm_lock | |
| nrip_save | nrip_save | nrip_save | |
| tsc_scale | tsc_scale | tsc_scale | |
| vmcb_clean | vmcb_clean | vmcb_clean | |
| flushbyasid | flushbyasid | flushbyasid | |
| decodeassists | decodeassists | decodeassists | |
| pausefilter | pausefilter | pausefilter | |
| pfthreshold | pfthreshold | pfthreshold | |
| avic | avic | avic | |
| v_vmsave_vmload | v_vmsave_vmload | v_vmsave_vmload | |
| vgif | vgif | vgif | |
| overflow_recov | overflow_recov | overflow_recov | |
| succor | succor | succor | |
| smca | smca | smca |
参考公开资料:
2 X Hygon C86 7185 32-core Benchmarks, Linux Performance - OpenBenchmarking.org
2 X Hygon C86 7285 32-core Benchmarks, Linux Performance - OpenBenchmarking.org
2859

被折叠的 条评论
为什么被折叠?



