x86-64-v3 は 256 ビット SIMD をもたらします。浮動小数点用の AVX と整数用の AVX2、融合積和演算 (FMA)、そして BMI1 と BMI2 のビット操作命令です。また、オペレーティングシステムが AVX のレジスター状態を有効にしていること (OSXSAVE) も必要です。

x86-64-v3 で、それより低いすべてのレベルに加えて追加される機能。
機能提供するもの列挙方法Linux のフラグ例
AVX256-bit floating-point SIMD with VEX encoding.CPUID.01H:ECX[28]avxvzeroall
AVX2256-bit integer SIMD, gathers and permutes.CPUID.(EAX=07H,ECX=0):EBX[5]avx2vpermd
BMI1Bit manipulation instructions, group 1.CPUID.(EAX=07H,ECX=0):EBX[3]bmi1andn
BMI2Bit manipulation instructions, group 2.CPUID.(EAX=07H,ECX=0):EBX[8]bmi2bzhi
F16CHalf-precision float conversion.CPUID.01H:ECX[29]f16cvcvtph2ps
FMAFused multiply-add (three-operand FMA3).CPUID.01H:ECX[12]fmavfmadd132pd
LZCNTLeading zero count, shown as abm by Linux.CPUID.80000001H:ECX[5]abmlzcnt
MOVBELoad or store with a byte swap.CPUID.01H:ECX[22]movbemovbe
OSXSAVEThe OS has enabled XSAVE, so AVX state is saved across context switches.CPUID.01H:ECX[27]
OS のサポート。ハードウェア機能: XSAVE
表示なしxgetbv

ソフトウェアにもたらすもの

コンパイラーは、128 ビットのレジスターの代わりに 256 ビットのレジスターでループをベクトル化し、乗算と加算を丸めが 1 回だけの 1 つの演算に融合し、ビット操作に ANDN、BZHI、SHLX、LZCNT などの命令を使えます。圧縮、ハッシュ、数学関数のコードなどのライブラリで、最も大きな効果が出ることがよくあります。

このレベルのプロセッサー

Intel Core (client)
Haswell (2013), Broadwell (2014), Skylake (2015), Kaby Lake (2016), Coffee Lake (2017), Comet Lake (2019), Alder Lake (2021), Raptor Lake (2022), Meteor Lake (2023), Arrow Lake (2024), Lunar Lake (2024), Panther Lake (2026)
Intel Xeon (server)
Sierra Forest (2024), Clearwater Forest (2026)
Intel Atom and E-cores
Gracemont (2021)
Intel Xeon Phi
Knights Landing (2016), Knights Mill (2017)
AMD (high performance)
Excavator (2015), Zen (2017), Zen+ (2018), Zen 2 (2019), Zen 3 (2020)
Hygon
Dhyana (2018)
Zhaoxin
Century Avenue (Shijidadao) (2023)

注意点

  • Intel の Atom 系列が x86-64-v3 に達したのは Gracemont (2021 年) になってからです。Pentium Silver や Celeron として販売された、Tremont までのそれ以前の低消費電力チップは x86-64-v2 です。
  • AMD の Bulldozer、Piledriver、Steamroller は AVX を備えていますが AVX2 がないため、x86-64-v2 です。v3 に達した最初の AMD のコアは Excavator です。
  • 仮想マシンは、特に設定しない限り、ゲストから AVX を隠すことがよくあります。

このレベルを必要とするもの

x86-64-v3 を必要とするオペレーティングシステムとソフトウェア。
名前最小時期注記確認日
AlmaLinux 10
オペレーティングシステム
x86-64-v310.0 (2025)AlmaLinux also publishes a separate x86_64_v2 build of AlmaLinux 10 for older processors. 出典
Red Hat Enterprise Linux 10
オペレーティングシステム
x86-64-v310.0 (2025)出典
Rocky Linux 10
オペレーティングシステム
x86-64-v310.0 (2025)出典

すべての最小要件を参照してください。

このレベル向けのビルド

gcc -march=x86-64-v3 ...     # GCC 11+, Clang 12+
GOAMD64=v3 go build ...      # Go 1.18+
RUSTFLAGS="-C target-cpu=x86-64-v3" cargo build ...

この方法でビルドしたバイナリは、このレベルに満たないプロセッサーでは不正な命令のエラー (SIGILL) で停止します。多くの場合、最初のベクトル化されたループで停止します。共有ライブラリの最適化されたコピーを glibc-hwcaps/x86-64-v3 にインストールすれば、これを避けられます。glibc 2.33 以降は、実行できる場所でだけそれを読み込みます。

出典

  1. x86-64 psABI: Micro-Architecture Levels
  2. GCC 11 release notes
  3. glibc 2.33 release notes (glibc-hwcaps)
  4. Intel ARK: Products formerly Haswell
  5. Intel ARK: Products formerly Comet Lake
  6. Intel ARK: Intel Pentium Processor D1508
  7. Intel ARK: Intel Pentium Gold 6500Y Processor
  8. Intel ARK: Intel Celeron Processor 4305U