web-dev-qa-db-ja.com

LinuxマシンがAVX / AVX2命令をサポートしているかどうかを確認する方法は?

私はSUSE Linux Enterprise 10/11マシンを使用しています。 Intelプロセッサを実行しているマシンのファームで回帰を開始します。ツールがAVX/AVX2命令のサポートを必要とするライブラリを使用して構築されているため、テストの一部が失敗します。 Illegal exceptionエラー。

Linuxでは、CPUコード/ファミリ名を決定するために使用できるコマンドはありますか?

AVXとAVX2はそれぞれIntel SandyBridgeとHaswellファミリーから入手できると思います。

19
user4979733

Linux(またはUNIXマシン)では、CPUに関する情報は/proc/cpuinfo。そこから情報を手で、またはgrepコマンド(grep flags /proc/cpuinfo)。

また、ほとんどのコンパイラは__AVX2__ので、それも確認できます。

17
hr0m

次のコマンドを実行します:

grep avx /proc/cpuinfo

または

grep avx2 /proc/cpuinfo

これにより、以下が得られます。

フラグ:fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc Arch_perfmon xsx_nt_tc_ntxsqdqsqdqsqdqsqdqsqdqqsqdqqsqdqsqdqqsqdqsqdqsqdqsdqsqdqsqdqsdqdqsqdqsdqsdqsqsdqsdqsdqsdqsdqsdqsdqssdハイパーバイザーlahf_lm arat tsc_adjust xsaveopt

27
khrm

lscpuを実行して、最後に手順のリストを確認することもできます。

4
Ibrahim A

/proc/cpuinfo、例:.

$ grep avx2 /proc/cpuinfo
flags       : fpu vme ... sse4_1 sse4_2 ... bmi1 avx2 ... bmi2 ...
2
Paul R