AMDとIntel共著のAPX仕様、x86を作り直す

AMDとIntel共著のAPX仕様、x86を作り直す
x86EAG

レジスタが16から32に倍増する。ロードは10%、ストアは20%減る。Intel単独だったAPXが、AMDとの共通仕様として書き直された。x86 EAGの第2弾、汎用命令そのものの作り替えだ。


Intel単独の拡張から、業界共通の標準へ

x86 Ecosystem Advisory Group(EAG)が4月28日付で公開したブログ記事「APX – Revitalizing the x86 General-Purpose Instruction Set」が、業界の景色を塗り替えている。タイトルにある「Revitalize」は単なる性能向上ではなく、汎用命令そのものを作り直すという宣言だ。

APX、すなわちAdvanced Performance Extensionsは、もともと2023年7月にIntelが単独で発表していた拡張命令である。今回の発表で重要なのは技術内容そのものではなく、EAGの共通仕様への格上げだ。AMDとIntelが同じ仕様書を共有する状態は、x86の歴史でほとんど前例がない。

EAGは2024年10月にIntel・AMD・主要OEMが共同で立ち上げた業界団体で、AVX10FRED、ChkTag、ACEといった次世代仕様を共同で策定してきた。2025年10月の1周年プレスリリースの時点では、APXは合意に至らなかった項目として目立っていた。それから半年を経て、APXがEAGのブログに正式に載った意味は重い。

APXは新しい命令を大量に追加する拡張ではない。既存命令の使い方を作り替えることで、コンパイラが生成するコードそのものの形を変える拡張だ。

レジスタ倍増が変えるコードの形

APXの最大の変更点は、汎用レジスタ(GPR)の数を16本から32本へ倍増させたことだ。GPRは、CPUが計算中のデータを一時的に置く最も高速な記憶領域で、ここに値が乗っているほど計算は速く、消費電力も低い。

x86の汎用レジスタは、1978年の8086時代の8本から拡張され続けてきたが、64ビット化(x86-64)以来、20年以上16本のままだった。ARMやRISC-Vが32本のレジスタを標準としているなか、x86のレジスタ不足はコンパイラ最適化のボトルネックとして長く指摘されてきた問題でもある。

EAGはAPXを使ってコンパイルしたコードについて、x86-64ベースラインと比較して ロードが10%、ストアが20%減る と説明している。これはSPEC CPU 2017整数ベンチマークのプロトタイプ模擬による数値であり、実シリコンの結果ではない。とはいえ、ロード・ストア命令はCPUのなかで最も電力を食う処理のひとつで、その削減は単なる速度向上以上に、消費電力と発熱に直接効いてくる。

APXが追加するのは新命令の山ではなく、既存命令の「使い方」だ。EVEXプレフィックスの拡張により、既存の整数命令から新しいレジスタへアクセスできる。命令長は若干増えるが、命令数自体が10%減るため、コード密度は既存バイナリとほぼ同等に保たれる。
x86汎用レジスタ数の推移
1978年
8086 / 16ビット時代 汎用レジスタ 8本 最初のx86アーキテクチャ。AX/BX/CX/DX等の8本構成。
2003年
x86-64 / 64ビット拡張 汎用レジスタ 16本 AMD Opteronで導入。R8〜R15の8本が追加され、以降20年以上この構成が続く。
2026年
APX / EAG共通仕様 汎用レジスタ 32本 x86 EAGがAPXをブログで正式公開。R16〜R31の16本を追加し、ARM・RISC-Vと同水準の本数に。

条件付き実行と非破壊形式の導入

レジスタ拡張と並ぶAPXのもう一つの柱が、条件付き命令の大幅な拡張だ。x86の条件付き実行は1995年のPentium ProでCMOV/SET命令として導入されたが、ロードやストアといった主要操作には適用できなかった。

APXでは条件付きロード、条件付きストア、条件付き比較・テスト命令が追加され、コンパイラが分岐をなくして条件付き命令に置き換える「if変換」の適用範囲が大きく広がる。深いパイプラインを持つ最新の高性能CPUでは、分岐予測の失敗が性能低下の主犯になる。データに依存する分岐は本質的に予測が困難なため、分岐そのものを減らす方向の最適化は、出力をパイプライン化する設計が深くなるほど効果が大きい。

加えてAPXは、整数命令に 非破壊形式 を導入した。従来のx86命令は基本的に「ソースを上書きする」設計で、計算前の値を保持したい場合はコンパイラが事前に別レジスタへコピーする必要があった。非破壊形式では、宛先レジスタを別に指定できるため、無駄なコピー命令が消える。

スタック操作にも手が入った。新たに追加された PUSH2/POP2命令 は、2つのレジスタを1回のメモリ操作で転送する。関数呼び出しの多いコードでは、レジスタ退避・復帰のコストが累積してくるため、この最適化は地味ながら無視できない。

APX前後で変わるx86の挙動
項目 従来のx86-64 APX対応後 主な利点
汎用レジスタ数 16本 32本 レジスタ常駐値が増加
ロード命令数 基準値 10%減 メモリ読み出し低減
ストア命令数 基準値 20%減 消費電力の削減
命令形式 ソース上書き型 非破壊形式に拡張 無駄なコピー命令を削減
条件付き実行 CMOV / SETのみ ロード・ストア・
比較まで拡張
分岐ミス予測の
影響を縮小
スタック操作 PUSH / POP
(1レジスタ)
PUSH2 / POP2を
追加(2レジスタ)
関数呼び出しの
退避コスト圧縮
コード密度 基準値 ほぼ同等 命令長増を
命令数減で相殺
レガシー互換性 完全維持 再コンパイルのみで
恩恵を享受
※ ロード10%減・ストア20%減はSPEC CPU 2017整数ベンチマークでのプロトタイプ模擬値。出典:Intel APX技術文書、x86 Ecosystem Advisory Group。

「過去への配慮」が決断のすべて

APXがEAG共通仕様に組み込まれた背景には、もう一つ意味深い事実がある。新しいGPRはXSAVEで管理され、廃止されたMPX(Memory Protection Extensions)レジスタの空きスペースに収まる設計になっている。XSAVEとは、コンテキストスイッチでCPUの状態を保存・復元する仕組みで、APX対応OSが既存のXSAVE領域のサイズや配置を変えずに済むよう配慮されている。

この設計が示すのは、APXがレガシーソフトウェアとの共存を最優先したという事実だ。APXに対応していない命令は今までどおり16本のレジスタで動き、APXを使う新しいバイナリだけが32本のレジスタを使う。OSとアプリケーション・バイナリ・インターフェース(ABI)の期待を壊さないよう設計されており、新しいGPRはABI上「caller-saved(呼び出し元が保存)」として扱われる。

APXのコンパイラ対応はシンプルである。レガシーの整数命令とAVX命令は、命令エンコーディングを拡張するかたちで新しいレジスタにアクセスする。ソースコードの変更は基本的に不要で、再コンパイルだけで恩恵を受けられる。

x86は44年間、命令エンコーディングの可変長性によって新機能を増分的に追加してきた歴史を持つ。APXはその設計思想の延長にあり、デコードハードウェアの増分的な変更だけで命令セット全体を強化できる柔軟性が、x86の長寿を支えてきた事実を改めて示すものだ。

x86 EAGが合意した拡張命令の状況
拡張名 機能・役割 合意状態
FRED 低遅延・高信頼な
割り込みモデル
標準機能として確定
AVX10 次世代ベクトル命令
セット拡張
共通仕様として確立
ChkTag メモリ安全性向上の
ハードウェアタグ機能
仕様策定中、年内完成予定
ACE 行列乗算アクセラレータ
(AI演算高速化)
採用・実装が進行中
APX 汎用レジスタ倍増・
条件付き命令拡張
2026年4月にブログで公開
※ 2025年10月のEAG 1周年プレスリリースおよび2026年4月のx86 Ecosystem Advisory Group公式ブログに基づく。

残された問いはAMDの実装時期

EAGがAPXを共通仕様として認めた以上、Intel側の実装はほぼ確定している。Intelは2025年11月13日に「Architecture Instruction Set Extensions and Future Features Programming Reference」第60版を公開し、次期デスクトップCPUNova Lake」でAPXとAVX10.2を公式サポートすると明言した。Nova Lakeは2026年末から2027年初めの投入が見込まれる。

問題はAMDだ。Linuxカーネル6.16ではX86_FEATURE_APXフラグやAPXステート管理がマージされ、ユーザー空間からAPX対応CPUを扱う準備は完了している。一方で、AMD公式が2025年10月のEAG 1周年プレスリリースで挙げた合意項目はFRED・AVX10・ChkTag・ACEの4つにとどまり、APXは含まれなかった。AMDが どの世代でAPXを実装するか は依然として明確ではない。

2025年12月にマージされたGCC 16のZen 6サポートパッチでは、AVX512_FP16やAVX_VNNI_INT8など複数の拡張命令が列挙されたが、APXは含まれていない。Zen 6世代での実装は当面見送りという見方が現実的だが、EAGがブログでAPXを正式に取り上げた今回の動きは、AMDがその先での実装を視野に入れているサインとも読める。

Intel単独の最適化機能と、AMDも実装する業界標準とでは、コンパイラ作者にとっての意味がまったく違う。両CPUベンダーが同じ命令セットをサポートする保証があれば、デフォルトで生成するコードに含めやすい。

ACEに続いてAPXがEAGの旗の下に並んだ。Intel・AMDの長年の競合関係において、ISAレベルの分断は縮小に向かっている。x86を共通の競争基盤として保つ意思を、両社が文書として残した。

x86は今、終わった命令セットの整理ではなく、次の40年に向けた書き直しに入っている。レジスタの数を増やす話に見えて、その実、x86が誰のものなのかを問い直す作業だ。


参照元

関連記事

Read more

FCC、中国全ラボ排除を全会一致で可決

FCC、中国全ラボ排除を全会一致で可決

米国向け電子機器の75%を試験している中国の認証ラボが、全面的に締め出されようとしている。FCCが4月30日に可決した提案は、中国の認証コストの安さに依存してきた世界の電子機器サプライチェーンを根底から揺さぶる規模だ。 4月30日、3つの提案が同時に動いた 米連邦通信委員会(Federal Communications Commission、FCC)は4月30日、中国本土と香港のすべての試験ラボから、米国市場向け電子機器の認証権を剥奪する提案を全会一致で可決した。対象はスマートフォン、カメラ、コンピューターなど、電波を発するほぼすべての電子機器を含む。 米国で電子機器を販売するためにはFCCの機器認証が必要であり、それを得るためにはFCCが認可した試験ラボでの試験が必須となる。FCC自身の推計では、米国市場に流れる電子機器の 約75% が中国で試験されている。この数字は、世界の電子機器エコシステムが特定の地域に過度に集中していることを意味する。 この提案は単独ではない。同日、FCCは別の3対0の票決で、中国移動(China Mobile)、中国電信(China Telecom

AIが救急トリアージで医師を上回った、その意味

AIが救急トリアージで医師を上回った、その意味

ハーバード・メディカルスクールがOpenAIの推論モデルと医師数百人を真っ向から比較した。救急外来の早期診断でAIは67%、医師は50〜55%。差は本物だ。ただ、研究者自身が最も警戒しているのは「これでAIに任せられる」と読む空気のほうだ。 「医師を超えた」と書ける数字、書きたくない但し書き ハーバード・メディカルスクールとベス・イスラエル・ディーコネス医療センター(Beth Israel Deaconess Medical Center、以下BIDMC)の研究チームが、OpenAIの推論モデルo1-previewと現役の臨床医を、臨床推論の幅広いタスクで比較した結果が4月30日付で科学誌『Science』に掲載された。狙いは単純で、AIが医師の日常業務、つまりカルテを読んで診断と次の一手を決める作業をどこまでこなせるかを測ることだ。 実験のひとつは、ボストンの病院に運ばれてきた救急外来患者76人のデータを使う。AIと医師2人組のそれぞれに、バイタル、人口統計、看護師の数行のメモといった同じ電子カルテを渡し、診断を求める。結果はAIが67%で正解または近似診断にたどり着き、医師