実装面での分断化はお互い様
命令セットの分断化はむしろArmのほうがひどい
(3)もかなり言いがかりであって、ベンダーが異なっていてもRISC-V ISAをきちんとサポートしている限りは、命令セット面からの分断化(Fragmentation)は「原理的に」起きないし、実装面での分断化はどちらでも起き得る。
Armも例外ではない。2011年のことだが、Linus Torvalds氏が増え続けるARMのサポートに苦言を呈した(というかブチ切れた)。
当時はすでにCortex-A8やA9がリリースされていたが、ターゲットとなったのはその前のARM11ベースのSoCである。これらのLinuxサポートが2011年頃に大挙して行なわれたのだが、当時のARM11ベースのSoCはメーカーごと、下手をすると同一メーカーでも製品ごとに実装がまちまちで、初期化ロジックや周辺回路のアクセス方法、メモリーマッピングなどが全部異なっており、しかもそれを画一的に扱う方法がなかった。
結果、その製品専用のデバイスドライバーをカーネルに組み込む形になり、これをLinuxカーネルのコードに取り混ぜたため、x86向けのコードが5000ほど組み込まれる間にARM用のコードが7万あまり(しかもほとんどがその特定製品向けのデバイスドライバーの追加)という事態になったことが理由である。これも立派な分断化である。
Armの側に立った言い方をすれば、そういう苦い経験があったからこそCortex-M向けにはCMSIS(Cortex Microcontroller Software Interface Standard)が用意され、Cortex-A向けにもCMSIS-Coreなどが提供されるようになり、現在はHAL(Hardware Abstraction Layer)が提供されてこのあたりの問題は解決している。
一方2018年の段階ではRISC-Vにはこうした仕組みが提供されていなかったの、言いたくなる気持ちもわからなくはない。ただ命令セットそのものの分断化はArmの方がひどい。
ARMv7はお世辞にもキレイな命令セットではないし、ARMv8は32bitと64bitでまったく異なる。Cortex-M系はThumb2のみの実行が可能なので、Arm v7までの32bit ARM命令も実行できない。また拡張命令もVFP/DSP/NEON/SVEとまったくバラバラである。
ついでに言えば、現在ではRISC-VもRISC-V Processor ProfileやRVM-CSI(RISV-V Common Software Interface)など、ハードウェアの違いを吸収してくれる互換レイヤーの構築が進んでおり、ARM11の時代の混乱をそのまま再現することなく普及が進みそうなので、この点ではArmの言うことはあまり当てはまらない。
この手の話の場合、先行者の苦労を後発者は見ながら発展していくので、とても苦労した先行者の立場にあるArmが、そうしたノウハウをちゃっかり手に入れている後発者のRISC-Vに一言いいたくなる気持ちはわかる。
セキュリティはRISC-Vもしっかりしている
(4)はさすがにイチャモンである。もちろんArmは以前からTrust Zoneに代表されるセキュア向けソリューション(あまり目立たないが、クレジットカードなどに代表されるスマートカード向けにSC000というプロセッサーなど)を提供しているし、最近ではSecure Enclaveの提供も始まっている。またArmv8.3-AではPAC(Pointer Authentication Core:ポインター認証)の機能も追加されるなど、いろいろ対策が進んでいる。
RISC-Vにはそうした対応がないわけではないし、またスマートカード向けはともかくセキュア・エレメント向けにすでに採用事例が複数存在する。さすがに最近のセキュリティ動向はRISC-Vベンダーもきちんと把握しており、今さらセキュリティの対策のないコアを大量に発売したりはしない。そもそもRISC-V ISAの中にセキュリティの要素も含まれているので、これを無視した実装にでもしない限り、Armの言うようなことは発生し得ない。
この連載の記事
-
第804回
PC
AI向けシステムの課題は電力とメモリーの膨大な消費量 IEDM 2024レポート -
第803回
PC
トランジスタの当面の目標は電圧を0.3V未満に抑えつつ動作効率を5倍以上に引き上げること IEDM 2024レポート -
第802回
PC
16年間に渡り不可欠な存在であったISA Bus 消え去ったI/F史 -
第801回
PC
光インターコネクトで信号伝送の高速化を狙うインテル Hot Chips 2024で注目を浴びたオモシロCPU -
第800回
PC
プロセッサーから直接イーサネット信号を出せるBroadcomのCPO Hot Chips 2024で注目を浴びたオモシロCPU -
第799回
PC
世界最速に躍り出たスパコンEl Capitanはどうやって性能を改善したのか? 周波数は変えずにあるものを落とす -
第798回
PC
日本が開発したAIプロセッサーMN-Core 2 Hot Chips 2024で注目を浴びたオモシロCPU -
第797回
PC
わずか2年で完成させた韓国FuriosaAIのAIアクセラレーターRNGD Hot Chips 2024で注目を浴びたオモシロCPU -
第796回
PC
Metaが自社開発したAI推論用アクセラレーターMTIA v2 Hot Chips 2024で注目を浴びたオモシロCPU -
第795回
デジタル
AI性能を引き上げるInstinct MI325XとPensando Salina 400/Pollara 400がサーバーにインパクトをもたらす AMD CPUロードマップ -
第794回
デジタル
第5世代EPYCはMRDIMMをサポートしている? AMD CPUロードマップ - この連載の一覧へ