ニュース

ARM、HSAの取り組みについて説明

~Mali-T600シリーズでHSAの機能を先取り

ARMジェム・デイビス氏
1月23日 実施

 CPU/GPUのデザインIPを開発しSoCベンダーなどに提供する英ARMは23日、日本法人において記者説明会を開催し、同社も参加している業界団体「HSA FOUNDATION」に関する取り組みなどについて説明した。

 HSA FOUNDATIONは、2012年6月にAMDが米国ワシントン州ベルビューで開催した技術イベント「AFDS」(AMD Fusion Developer Summit)において設立が発表された業界団体。CPUとGPUを1つのプロセッサのように扱うことができる業界標準を策定し、その普及を目指している。ARMはAMDと共にHSA FOUNDATIONのFounder(設立に寄与したメンバー企業)を務めており、主要メンバーの1社としてその普及に向けた活動を行なっている。

 ARMフェロー兼メディアプロセッシング部門テクノロジ担当副社長ジェム・デイビス氏は、同社がすでに顧客に対して提供を開始しているGPU「Mali-T600」がHSAの機能を一部取り入れており、今後投入する将来世代のGPUではさらに多くのHSA機能を搭載していくことを説明した。

CPUとGPUを1つのプロセッサのように扱うHSAのアーキテクチャ

 HSA(Heterogeneous System Architecture)とは、プログラマがCPUやGPUの命令セットに依存せずに、それらを1つのプロセッサ上で実行しているように簡単にプログラムが書けるようにするための仕組みで、AMDがAFDSで業界に向けて提唱したもの。AMDはそれまで自社用として開発してきたHSAの知的財産をすべてHSA FOUNDATIONに寄贈し、HSAをオープンでロイヤリティフリーな業界標準として普及させることにしたのだ。

 CPUに加えて、GPUを利用して演算しようというフレームワークは、GPGPUやGPUコンピューティングなど、呼び方はさまざまだが、すでに取り組みが始まっている。よく知られているところでは、業界標準のOpenCL、NVIDIAのCUDA、MicrosoftのDirectComputeなどがある。これらのGPUコンピューティングの方式は、すでにPC用のアプリケーションなどに実装されており、実際に使っているユーザーも少なくないだろう。

 一概には言えないのだが、これらのGPUコンピューティングの仕組みの多くは、これまでCPUがやっていた演算の一部をGPUにやらせるというアクセラレータ的な使われ方が多い。というのも、プログラマにとって、CPUとGPUをそれぞれ別のプロセッサとして扱わなければならないため、両方を効率よく使うプログラムを作るのが大変難しいからだ。

HSA FOUNDATIONの目指す目標

 そこでHSAではHSAILと呼ばれるCPUとGPUを抽象化する仮想的な命令セットアーキテクチャや、メモリアドレスをCPUとGPUで共有するモデルを作り、プログラマから見ればシステムに複数存在しているCPU/GPUを1つのプロセッサであるかのように見えるという仕組みを導入する。

 デイビス氏は「HSAのゴールは非常に明確だ。HSAによりCPUとGPUの組み合わせを、1つのプロセッサとして見ることができる仕組みをプログラマに提供することだ。それにより電力効率の改善や性能向上などを期待することができる」と述べ、CPUとGPUの組み合わせを現在よりも効率よく利用することで、コンピューティング能力の向上や、電力効率の改善などを成し遂げていきたいとした。

 デイビス氏によれば、HSA参加メンバー企業は増え続けており、「2012年6月のHSA FOUNDATION設立時には明らかにできなかったFounderとして、QualcommとSamsung Electronicsが参加したことをすでに明らかにしている。両社がFounderであることの発表が遅れたのは、両社は非常に大きな会社で法務部門での調整が遅れたからだ」と述べた。さらに、その後Promoters(Founderに次ぐ主要メンバー企業)としてLG Electronicsが参加したほか、Supporters/Contributerメンバーとしてソニー・モバイルなど複数の企業の参加が相次いでおり、今後も増えていくだろうと述べた。

昨年の6月の発表時にはリストに無かったQualcommとSamsung ElectronicsがFounderとして追加されている
HSAのロードマップ。CPUやGPUを1つのダイにするところから始まって、メモリアドレスの共有など段階を経て実現していく
現在GPUコンピューティングで一般的に利用されているOpenCLなどとは競合しない
CPUとGPUを並列して利用できるようになることで電力効率や性能向上などを期待できる

HSAの機能を多数取り入れているARMのMali-T600シリーズ

 デイビス氏は、ARM自身のHSAへの取り組みについても説明した。これまでARMと言えば、ARMプロセッサの命令セットアーキテクチャそのものや、CPUのIPデザインのライセンスビジネスで知られてきたが、近年はMali(マリ)のブランド名によるGPU IPデザインの開発、ライセンスにも力を入れており、Samsung ElectronicsのSoC(Exynosシリーズ)など採用例が相次いでいる。

 デイビス氏は「Androidタブレット市場では50%を超える市場シェアで1位、またデジタルTV市場に採用されているGPUとしてもシェア1位となっている。すでに16のパートナー企業がMaliベースのSoCを採用している」と、同社のGPU IPデザインがARMアーキテクチャのSoC市場において徐々に市場シェアを増やしていると強調した。同氏によれば、2012年末の時点でMaliを内蔵したデバイスは15億台に達しているとのことで、スマートフォン向けとしても市場シェアが20%に達するなど成長を続けているという。

 同社が顧客に提供しているGPU IPデザインは、Mali-300、Mali-400、Mali-T600という大きく3つのシリーズラインナップがあるのだが、このうち最新のデザインになるMali-T600シリーズは、HSAの機能を一部先取りしているという。Mali-T600はARMにとってGPUコンピューティングをサポートした最初のGPUとなる。Mali-T600ではHSAの機能の多くを先取りしており、64bit整数/浮動小数点演算器、CPUのページテーブルのシャドーイング機能、GPU I/OとCPUの一貫性維持などの機能を搭載しており、HSAの実装で必要となる機能を実現している。

 さらに、現在ARMが開発中の将来のMaliでは、CPUのページテーブルをGPUが直接共有したり、GPUとCPUでデータの一貫性維持が行なわれるなどの機能を増やし、よりHSAに対応できるようにしていく。

同社がSoCベンダなどに対して提供しているGPU IPデザインのMali。すでに16社のSoCに採用されている
Mali-T600シリーズではHSAの機能が多数先取りされている。将来世代ではさらに機能が追加されていく予定

IntelやNVIDIAに対してもHSA FOUNDATIONへの参加を呼びかけ

 HSAの目標や仕組みはわかったが、エンドユーザーとしてはそれがいつになったら使えるのかについて気になるところだろう。その時期についてデイビス氏は「現時点では明確にいつと申し上げることはできない。現在はプラットフォームを作っている段階で、そちらにフォーカスしている」と述べ、今はCPUベンダーやGPUベンダーなどに対してHSAへの対応を呼びかけ、対応するハードウェアを増やしていくことに力を入れている段階だと述べた。なお、AMDは同社が2013年後半にリリースを予定しているKaveri(カベリ、開発コードネーム、Trinityの後継となるAPU)においてHSAをサポートするとすでに明らかにしている。

 また、HSA FOUNDATIONのメンバーに、CPU/GPUベンダーとしては主要なベンダーとなるIntel、NVIDIA、そしてAppleが含まれていないことに関しては「AppleはiOSやMac OSにしろ独自のソリューションとして展開しており、オープンスタンダードに参加する必要がないのではないだろうか。IntelやNVIDIAに関してはもちろん参加して欲しいと思っており、常に参加の呼びかけを行なっている」と説明した。

 HSA陣営にとっては、スマートフォン市場で事実上の標準と言ってよいARMを陣営に抱えていることは強みと言えるが、依然としてIntelが握っているPCの市場は大きく、CUDAでGPUコンピューティングで先行しているNVIDIAも無視できない存在ではある。HSA陣営にとっては、今後この2社が参加せざるを得ないような状況を作り出すことが成功への鍵となるだろう。

(笠原 一輝)