世界を動かす技術を、日本語で。

AMDはArm ISAがx86に対して効率的な優位性を提供しないと主張しています

概要

  • IFA 2025 でのAMDのメディアディスカッション内容
  • x86とArm の効率性・バッテリー寿命論争
  • x86ノートPC の長時間駆動とソフトウェア互換性強調
  • Arm ISA の市場進出と現状
  • AMDの公式見解 と今後の展望

IFA 2025でのAMDのx86 vs. Arm論争

  • IFA 2025 のベルリン開催時、AMDがメディア向けディスカッションを実施
  • x86プロセッサ (AMD・Intel両方)がノートPCで長時間バッテリー駆動を実現可能と主張
  • 数十年続くx86ソフトウェアエコシステム の維持を強調
  • 全体的なパッケージの価値 (CPUコアの命令セットではなく)が電力効率とバッテリー寿命を左右するというAMDの見解
  • Intel "Lunar Lake"AMD "Strix Point" などの最新x86設計で高効率・高性能を両立
    • GPUやメモリも含めたパッケージ全体の最適化

AMDの公式コメントとArmの現状

  • x86の効率性神話 は昨年で否定されたとAMDが主張
    • AMD RyzenやIntel CoreがノートPCで長時間駆動を実現
    • x86エコシステム全体へのアクセスが可能
  • Arm ISA (命令セットアーキテクチャ)にはパッケージ全体での優位性がないとAMDが指摘
  • AMD K12プロジェクト でArm ISAを評価したが、ソフトウェア面での利点からx86路線を継続
  • Armのシェア拡大 (Qualcomm Snapdragon X、NVIDIA N1/N1xなど)も進行中
    • しかし、現時点ではx86搭載PCの出荷台数やシェアに比べて微小
  • ノートPCや携帯型ゲーム機 の大多数がx86を採用
    • Arm ISAの方が効率的という過去の主張は現状で否定

今後の展望と業界の動向

  • x86とArmの競争 は今後も継続
  • ソフトウェア互換性パッケージ全体での最適化 が重要な評価軸
  • 新興Armベンダー の動向にも注視が必要
  • PC業界全体のエコシステム とユーザー体験の変化が今後の鍵

Hackerたちの意見

これはこの分野の専門家の間では全く論争のない意見だね。x86は古いCISCのごちゃ混ぜ。RISC-Vは新しい学術的なごちゃ混ぜ。最近のARMは実際かなり良い。けど、どれも重要じゃない。なぜなら、アンコアや製造の詳細(特に、フルスピードで動くように調整されているか、フルパワーで省エネか)がISAを完全に支配しているから。昔はx86が低消費電力で優位に立てなかったのは、Intelが気にするリソースを持っていたけど、実際には何もしなかったから。AMDは試すリソースすらなかった。他の会社がそのニッチを埋めるために入ってきて、他のISAを使わざるを得なかった。(もしx86を合法的に使えたら、使ってたかもしれないね。うっかり?)それが変わるかもしれないし、AMDがx86をフェードアウトさせるかもしれない。

VIAは昔、低消費電力のx86プロセッサを作ってたよね。

ジム・ケラーのインタビューを読んだことがあるよ:https://web.archive.org/web/20210622080634/https://www.anand... 要するに、ARMとx86の違いは主に命令デコードに集約されるってこと。- ほとんどの命令は、両方のアーキテクチャで単純なロード/ストア/条件分岐などになっていて、エンコーディング効率に違いはほとんどない - 可変長命令はx86でほぼ解決されていて、もはやボトルネックではない。あと、個人的な補足として、今日のIntelの効率コアは、10年前の大きなIntelコアよりもトランジスタ数が多くてパフォーマンスも良いよ。

私も同じように理解してるよ。この分野に興味はあるけど、プロとして働いたことはないからね。CPUはみんなISAとは全く違うマイクロアーキテクチャを持っていて、ISAの1つ以上の命令をゼロまたはそれ以上のマイクロアーキテクチャ命令に翻訳する命令デコーダを持っている。より規則的なISAを持つことには、同じサイズの命令を並行してデコードしやすくなるとか、命令デコーダに使うトランジスタを減らせるという利点があるけど、デスクトップやノートパソコン、スマホにある大きなスーパースカラーチップでは、その欠点は微小だと思う。でも、MCUにある小さなインオーダーCPUでは、その違いはもっと大きいと思う。amd64デコーダがトランジスタ予算のかなり大きな割合を占めるからね。

Apple Siliconの登場以来、みんなが言ってる「その利点はArmのおかげ」っていうのはちょっとイラッとする。いや、実際はそうじゃない。利点はAppleが効率を重視してることで、Intelはそんなこと全然気にしてなかったからね。

ちょっと細かいこと言うけど、高性能やスーパースカラーアーキテクチャでは、ISAよりもアンコアや製造の詳細が重要だよ(だって、現代のスーパースカラーはフロントエンドでISAをほぼ抽象化しちゃうから)。小さいコア(つまりMCU)では、x86は全然勝負にならないね。

これを完全に信じるのは難しいな。カスタム命令が増えて、カスタムハードウェアも増えて、熱も増える。どうやってそれを避けるの?

AMDが命令デコーダーをRISC-Vのものに入れ替えたチップを出したら、どうなるか見てみたいな。

「RISC-Vは新しい学校のハイパーアカデミックな混乱だ。」うん… 前はRISC-Vの大ファンだったけど、ソフトウェア開発者としてもう少し深く掘り下げてみたら、熱意がかなり冷めちゃった。メインストリームのオープンISAができたのは素晴らしいけど、今はハードウェアの世界のLinuxみたいに見てる。つまり、素晴らしい成果だけど、疑問の余地がある選択肢がたくさん含まれていて、残念ながら「十分良い」ってことで他のオープンな選択肢を抑えちゃってる。

この論文は素晴らしいよ。「私たちの体系的な調査は、ISAが現代のマイクロプロセッサのパフォーマンスとエネルギー効率に果たす役割を示しています。ARM、MIPS、x86プロセッサは、異なるパフォーマンスレベルに最適化されたエンジニアリングデザインポイントに過ぎず、どちらのISAクラスにも本質的にもっとエネルギー効率の良いものはありません。RISCかCISCかは関係ないようです。」https://dl.acm.org/doi/10.1145/2699682 https://abdullahyildiz.github.io/files/isa_wars.pdf

もしかしたらAMDはx86をフェードアウトさせるかもしれないね。君の書いてることには同意するけど、これだけは違うと思う。どうしてAMDが「x86をフェードアウトさせる」必要があるの?彼らはx86エコシステムの二大オリゴポリストの一つで、価値は何兆円もあるんだ。ARM(やRISC-Vなど)のCPUの別のプロバイダーになるために、それを捨てる理由はないよ。x86市場が健全で、AMDがその市場で競争できる立場にある限り、彼らは続けると思うよ。

経験豊富な人の話を聞いてみたいし、最近の研究があれば知りたいけど、学校でこの論文を読んだことがあるよ:https://research.cs.wisc.edu/vertical/papers/2013/hpca13-isa... > x86とARMの命令セットは消費電力に大きな違いがないという意見に同意しているみたい。GCCがx86用にコンパイルするときにRISCのような命令を選ぶことが多いってことも分かったし、ARMとx86のマイクロオプが似ていることも示している。x86チップはそのRISCのような命令にうまく最適化されていて、ARMチップと同じくらい効率的だって。彼らの引用には「パフォーマンスの違いはISAではなくマイクロアーキテクチャに起因する」とある。

確か、数年前にジム・ケラーのインタビューで彼がほぼ同じことを言ってた気がする(Tenstorrentに参加した頃だったかな?)。ISA自体は重要じゃなくて、ただの命令だから。チップがその命令をどう解釈するかが違いを生む。ARMは最初から低消費電力デバイス向けに設計されていたけど、x86はそうじゃなかった。もしx86がARM(やRISC-V)と競争するつもりなら、チップも低消費電力デバイス向けに最適化する必要があるけど、それは古いソフトウェアとの互換性を壊すかもしれない。

おそらく、彼がやったレックス・フリードマンのポッドキャストからだと思う。正直に言うと、彼は「重要じゃない」とは言ってなくて、「それほど重要じゃない」と言ったんだよね。

https://chipsandcheese.com/p/arm-or-x86-isa-doesnt-matter

ジム・ケラーは基本的にそう言ってたよね。これには二つの事実が証明されてると思う。まず、x86は長い間、直接x86命令を実行してない。次に、ロゼッタ2についてだけど、ISAは重要じゃない。論理が重要なんだ。キャッシュも重要。分岐予測や投機的実行も大事。バッファも重要だし、命令の再配置もね。ノードサイズやパッケージングも関係ある。SIMDは特定のワークロードには重要だし、他にも色々あるよ。

関係ない話だね。x86_64チップを作ることが許されているのは2つの企業だけ(それもAMDが64ビットISAの競争に勝ったからで、そうじゃなければIntelだけだった)。彼らが選ぶことができる。残りはARMを使うしかない。あ、x86_64は、どちらかの企業が大きな数字を競うのをやめて、実際に電力管理を心配するようになれば、ARMと同じくらい電力効率が良くなるだろうね。もしかしたら、電力消費に最適化された?Linux?を提供するかも。

AMDは電力消費をうまく扱ってるよ、少なくともCPUを限界まで押し上げるんじゃなくてエコモードで動かすならね。俺はいつも最新のRyzenではエコモードをオンにしてる。

あと、x86_64は、どちらかの企業が数字の大きさで競争するのをやめて、実際に電力管理を気にするようになれば、ARMと同じくらい電力効率が良くなると思う。IntelもAMDもランタイムパワーコントロールを提供してるから、調整は可能だよ。最後の約10%のパフォーマンスには、10%以上の電力が必要なんだ。

SSE4やAVXがどうしても必要じゃない限り(ちょっと怪しい特許の状況を回避できないなら)、誰でもx86_64チップを作れるよ。その特許ももうすぐ切れるしね。

もちろん、X ISAがY ISAより速いって言うのは、Javaの構文がC#の構文より速いって言うのと同じだよ。すべては実装次第:コンパイラ、JIT、ランタイム/VM、標準ライブラリなど。

C#の構文はJavaより速いよ。Javaにはカスタム値型や構造体を定義する方法がないからね(前回チェックしたとき、実験的な取り組みがあったのは知ってるけど)。

ARMハードウェアで遊んでみたけど、ブートプロセスが今のままクソみたいな状態なら、ARMが効率的かどうかはどうでもいいかな。個人的には、IBM PCプラットフォームの大きな勝利は、最初からブートプロセスを標準化したことだと思う。最初はBIOS、後にUEFIで、どんなOSのランダムなISOでも動くからね。一方、ARMの世界では、どのCPUボードも独自のドライバーやデバイスツリー、カスタムOSビルドが必要みたい。RISC-Vも同じ問題を抱えてるみたいで、この問題が解決されるまでは、まるで有害廃棄物のように避けるつもり。

UEFIをサポートしているARMシステムは、結構楽しいよ。それ以外は全部そうじゃないけど。「ベンダーカーネル」って言葉を聞くと、面倒な経験が待ってるって分かる。

ARMのSBSA/SBBRをチェックしてみて。これが大体の問題を解決することを目指してるみたいだよ。https://en.wikipedia.org/wiki/Server_Base_System_Architectur... RISCVも似たようなものを出してくれるといいな。

一般的に、最近のARM 8/9の64ビットSoCは多くの古い問題を解消してるよね。でも、ほとんどのプリコンパイルされたパッケージビルドは、互換性や安全性の理由で高度なASIC機能を有効にしてないんだ。AMDが弱体化したARMコアの機能を比較するのは、ちょっとずるいPRだと思う。Tegraは予算版のApple M3 Proになれるかもしれないけど、あの人たちは素晴らしさよりも架空の「AI」マネーを選んじゃったね。=3

ISAの問題じゃないよ。最近のMacbookは電力効率がいいのは、- パッケージ内RAM - PMIC電力供給 - OSによるより良い電力管理があるから。Geekerwanがこれについて調べてたけど、見てみて:https://www.youtube.com/watch?v=Z0tNtMwYrGA https://www.youtube.com/watch?v=b3FTtvPcc2s https://www.youtube.com/watch?v=ymoiWv9BF7Q IntelとAMDは、Lunar LakeとStrix Haloでこれらの改善を実装してる。どのSoCを選ぶか知ってれば、今すぐMacbookのような効率のx86ノートPCを買えるよ。編集:訂正。Strix Haloのダイ画像を見たとき、パッケージ内RAMがあるように見えたけど、実際にはない。PMICも使ってない。今のところ、Lunar Lakeがx86でApple Mシリーズの唯一の競争相手だね。

PMICってVRMのこと?違うなら、二つの違いを教えてくれる?

インテルとAMDは、Lunar LakeとStrix Haloでこれらの改善を実施したんだ。どのSoCを選ぶか知っていれば、今すぐにMacbookのような効率のx86ノートパソコンが買えるよ。でも、これは真実じゃない。確かに、Lunar Lakeはアイドル時のパフォーマンスが素晴らしい。でも、実際にCPUを使うと、M4よりもかなり遅くて、消費電力も多いんだ。Strix Haloのバッテリー寿命と効率は、全然比較にならないよ。

インテルとAMDは、Lunar LakeとStrix Haloでこれらの改善を実施したんだ。どのSoCを選ぶか知っていれば、今すぐにMacbookのような効率のx86ノートパソコンが買えるよ。M4は負荷がかかるとStrix Haloの約3.6倍効率的なんだ。[0] 日常的には、この違いはもっと大きくなることもあるよ。Apple Siliconは本物のbig.Littleコアを持っていて、低優先度のタスクを効率的な小コアに送るからね。Lunar Lakeの基本M4は約35%速くて、2倍効率的で、実際にはM4よりもダイサイズが大きいんだ。[1] インテルはLunar Lakeラインを利益が出ないから中止するみたい。どうして「Macのような効率」と言えるのか、ちょっと疑問だね。[0]https://imgur.com/a/yvpEpKF [1]https://www.notebookcheck.net/Intel-Lunar-Lake-CPU-analysis-...

Windowsのノートパソコンは、バッテリー使用時のパフォーマンスがひどいよ。特に省電力モードにするとね。対照的に、Macbookはそんな問題がない。まるでiPadを使ってるみたいだよ。

「RISCが最初に出たとき、x86は半分がマイクロコードだったんだ。だから、ダイを見てみると、半分はROMか、もしくは三分の一くらい。RISCの人たちは、RISCチップにはROMがないからもっとパフォーマンスが出るって言えたんだ。でも今はROMがすごく小さくて、見つけられない。実際、加算器もすごく小さくて、ほとんど見つけられないんじゃないかな?今のコンピュータのパフォーマンスを制限しているのは予測可能性で、主に命令/分岐の予測可能性とデータの局所性が大きな要因だ。」ジム・ケラー

ただ主張するんじゃなくて、消費者向けにAppleの製品のメトリクスに匹敵するかそれ以上のチップを提供して証明してほしいね。

ここには二つの別々の問題がある。x86を無限の努力でARMチップと同じくらい効率的にできるか?もちろんできるよ。でも、優れたARM設計を作る方が、優れたx86設計を作るよりずっと簡単なんだ。後者は要素が多すぎて、フロントエンドも非同期のエンコーディングに対応するためにかなり複雑にならなきゃいけないからね。