web-dev-qa-db-fra.com

Outil ou processus pour vérifier le support AES-NI sur le processeur?

Dans une autre question , la réponse de Thomas a mentionné l'ensemble d'instructions AES-NI, qui a piqué ma curiosité.

Existe-t-il un outil ou un processus disponible pour vérifier si l'ensemble d'instructions est disponible (en plus de comparer les numéros de modèle CPU)?

7
Steve

Sur Systèmes Linux , faites:

grep flags /proc/cpuinfo

Cela donnera, pour chaque noyau de la CPU, la liste de ce que ce noyau peut faire. Les instructions AES-NI sont là lorsque le drapeau "aes" apparaît dans la liste des indicateurs. Voir Cette page pour une liste de valeurs d'indicateur possibles.

Sur MacOS , faites:

sysctl -n machdep.cpu | grep -i aes

Si cela ne trouve rien, cette machine n'a pas AES-NI.

Pour Windows , voir ceci question sur superutilisateur .

11
Thomas Pornin

Je ne suis plus une personne de matériel de bas niveau, mais un exemple de ce post concernant une implémentation de FreeBSD montre que vous pouvez Prendre des informations de Caractéristiques2:

Features2=0x29ee3ff<SSE3,PCLMULQDQ,DTES64,MON,DS_CPL,VMX,SMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,<b17>,DCA,SSE4.1,SSE4.2,POPCNT,AESNI>
4
Rory Alsop

Sur les systèmes Windows, vous pouvez utiliser un outil de console gratuit " coreinfo " de Sysinternals

3
Artur D

Il y a aussi le cpuid utilitaire disponible sur un certain nombre de systèmes d'exploitation (y compris FreeBSD, Linux, MacOS et NetBSD).

cpuid | grep -i aes
  AES instruction                         = true
2
Juan