如何检测处理器是否支持AES-NI指令集?

本文介绍如何检测处理器是否支持AES-NI指令集,首先我们先了解一下什么是AES-NI指令集。

AES-NI指令集

高级加密标准指令集(或称英特尔高级加密标准新指令,简称AES-NI)是一个x86指令集架构的扩展,用于Intel和AMD微处理器,由Intel在2008年3月提出。该指令集的目的是改进应用程序使用高级加密标准(AES)执行加密和解密的速度。

点击查看详细介绍

_______________________________________________________________________________________

接下来我们开始步入正题,我们常用的系统分为LinuxMacWindows,下面我们将分别介绍这三类系统如何检测处理器是否支持AES-NI指令集。

Linux

使用命令【grep aes /proc/cpuinfo】即可查看,当此命令能返回内容,说明此服务器的处理器是支持AES-NI的。

[root@xxxxx ~]# grep aes /proc/cpuinfo  flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx lm constant_tsc rep_good nopl eagerfpu pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch bmi1 avx2 bmi2 rdseed adx xsaveopt  flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx lm constant_tsc rep_good nopl eagerfpu pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch bmi1 avx2 bmi2 rdseed adx xsaveopt

Mac

使用命令【sysctl -n machdep.cpu | grep -i aes】即可查看,当此命令能返回内容,说明此服务器的处理器是支持AES-NI的。

xxx-MB0:~ xxxxxx$ sysctl -n machdep.cpu | grep -i aes  FPU VME DE PSE TSC MSR PAE MCE CX8 APIC SEP MTRR PGE MCA CMOV PAT PSE36 CLFSH DS ACPI MMX FXSR SSE SSE2 SS HTT TM PBE SSE3 PCLMULQDQ DTES64 MON DSCPL VMX SMX EST TM2 SSSE3 FMA CX16 TPR PDCM SSE4.1 SSE4.2 x2APIC MOVBE POPCNT AES PCID XSAVE OSXSAVE SEGLIM64 TSCTMR AVX1.0 RDRAND F16C
【sysctl -n machdep.cpu | grep -i aes】 命令截图

Windows

Windows服务器没有命令可以直观的查看当前处理器支持的指令集,需要借助第三方工具,我这里使用的是 CPU-Z,点击下载

此处下载、安装步骤省略,直接查看结果,如图:

CPU-Z软件截图