アカウント名:
パスワード:
ARMのことはよくわからんけど、○○のARM系CPUなら動くが、同じARM系でも××のやつだと動かない、なんてことは起こらないのか?
#なんか全く見当違いのようなことを言っている気もするのでAC
ARMは命令セットアーキテクチャをARM自身が決めていて、ARMv7の命令セットでビルドされたバイナリであれば、ARMv7をサポートするどのARMでも動くことにはなってますね。
実際のところx86と大差があるあけでもなくて、たとえばAVX命令を使ったバイナリはSandyBdirgeより昔のCPUでは未定義命令トラップが発生するわけです。互換性を維持しながら続くCPUでバイナリを動かそうとする場合につきものの面倒で、ARMに限ったもんでもないでしょう。むしろx86ではCPUファミリや世代によって細かく命令が拡張されてきたので、後付のMMX、SSE(の各世代)、AVXといった命令セットを使う場合、CPUIDでもってCPUを判定してからでないと使えないという面倒はあります。
いずれにしても、UNIX系であればソースからビルドしなおせば良いだけなので、バイナリの互換性はそう大した問題にはならず、問題になるとすればバイナリが主のWindows Serverにおいてでしょう。
ちなみに、ARMではアーキテクチャライセンスを得た企業は命令セットの拡張も可能で、最近ではQualcomm、NVIDIA、MSやなんかがアーキテクチャライセンスを取得してますから、これらの企業が命令セットを独自に拡張する可能性はあるかもですね。ただ、過去の例でいうとStrongARM/XScale系が独自の拡張でしたが、拡張命令セットはなかなか主流になれない……コンパイラなど開発ツールのサポートが広がらなかったり色々……こということもあるので、よほど上手くやるかARMに働きかけて自分たちの拡張をメインツリーに統合してもらうとかする必要があるんじゃないかな、と。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
日本発のオープンソースソフトウェアは42件 -- ある官僚
NVIDIA大勝利?と思ったら違うのか (スコア:1)
ARMのことはよくわからんけど、○○のARM系CPUなら動くが、同じARM系でも××のやつだと動かない、なんてことは起こらないのか?
#なんか全く見当違いのようなことを言っている気もするのでAC
Re:NVIDIA大勝利?と思ったら違うのか (スコア:2)
ARMは命令セットアーキテクチャをARM自身が決めていて、ARMv7の命令セットでビルドされた
バイナリであれば、ARMv7をサポートするどのARMでも動くことにはなってますね。
実際のところx86と大差があるあけでもなくて、たとえばAVX命令を使ったバイナリはSandyBdirge
より昔のCPUでは未定義命令トラップが発生するわけです。互換性を維持しながら続くCPUで
バイナリを動かそうとする場合につきものの面倒で、ARMに限ったもんでもないでしょう。
むしろx86ではCPUファミリや世代によって細かく命令が拡張されてきたので、後付のMMX、SSE(の各世代)、
AVXといった命令セットを使う場合、CPUIDでもってCPUを判定してからでないと使えないと
いう面倒はあります。
いずれにしても、UNIX系であればソースからビルドしなおせば良いだけなので、バイナリの互換性は
そう大した問題にはならず、問題になるとすればバイナリが主のWindows Serverにおいてでしょう。
ちなみに、ARMではアーキテクチャライセンスを得た企業は命令セットの拡張も可能で、最近では
Qualcomm、NVIDIA、MSやなんかがアーキテクチャライセンスを取得してますから、これらの企業が
命令セットを独自に拡張する可能性はあるかもですね。
ただ、過去の例でいうとStrongARM/XScale系が独自の拡張でしたが、拡張命令セットはなかなか主流に
なれない……コンパイラなど開発ツールのサポートが広がらなかったり色々……こということもあるので、
よほど上手くやるかARMに働きかけて自分たちの拡張をメインツリーに
統合してもらうとかする必要があるんじゃないかな、と。