別の質問で 、トーマスの答えは、私の好奇心をそそるAES-NI命令セットに言及しました。
CPUモデル番号の比較以外に、命令セットが使用可能かどうかを確認するためのツールやプロセスはありますか?
Linuxシステムでは、次のようにします。
grep flags /proc/cpuinfo
これにより、CPUコアごとに、そのコアが実行できる処理のリストが表示されます。フラグのリストにフラグ「aes
」が表示されると、AES-NI命令がそこにあります。可能なフラグ値のリストについては このページ を参照してください。
macOSでは、次のようにします。
sysctl -n machdep.cpu | grep -i aes
何も見つからない場合、このマシンにはAES-NIがありません。
Windowsについては、この SuperUserに関する質問 を参照してください。
私はもはや低レベルのハードウェアの人ではありませんが、FreeBSD実装に関するこの投稿の例では、 Features2から情報を取得:
Features2=0x29ee3ff<SSE3,PCLMULQDQ,DTES64,MON,DS_CPL,VMX,SMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,<b17>,DCA,SSE4.1,SSE4.2,POPCNT,AESNI>
Windowsシステムでは、Sysinternalsの無料のコンソールツール " Coreinfo "を使用できます。
cpuid
ユーティリティもいくつかのOS(FreeBSD、Linux、macOS、NetBSDを含む)で利用できます。
cpuid | grep -i aes
AES instruction = true