万歳、AMD HSAIL
Alex Woodie

AMDのHSA財団は、ヘテロジニアス・コンピューティング資源を最大限に活用して、開発者を妨げる障壁を削減するという目標を達成するために先行して数多くの作業を行っており、その作業には、ハードウェアとソフトウェアで克服すべき課題が含まれている。このグループのソフトウェア計画の重要なコンポーネントの一つは、HSAILと呼ばれるものでHSA中間言語とも呼ばれている。
AMDは、2012年にARM、Texas Instrumentsと他2社のチップメーカーとともにHSA財団を設立し、HPCシステムや汎用サーバからゲーム機やモバイルデバイスに至るまで、あらゆるタイプのデバイスを横断的に、一度記述するだけで実行可能なソフトウェアのオープンな仕様を策定することを目標としている。このグループは他に創設者も存在しているが、主にAMDが2007年に始めた単一のダイ上にGPUとCPU機能およびメモリ管理を統合する「Fusion」プロジェクトの結果である。尚、Intelは、Many Integrated Core(MIC)アーキテクチャで別々に行っており、HSAには参加しないようである。
GPUの容易なプログラミングを可能にすることが、HSAプログラムの目的の一つであり、その目標はソフトウェア側とハードウェア側での互換性を実現するための基準を設定する事が含まている。ハードウェア側では、HSAは、結合されたCPU-GPUシステムがどのように見えるかをレイアウトし、その見え方は、GPUとCPUのためのページテーブルエントリーの共通セット、共通アドレス空間、独立したキュー命令およびスイッチタスク等のような事柄を含んでいる。
先週、スタンフォード大学でのHot Chipsカンファレンスで、AMDの代表者は、ソフトウェア側で見えるもの、具体的にはHSAIL言語に必要なコンポーネントをレイアウトした。
Extreme Techの記事によると、HSAILは、C++、AMP、OpenCL、JavaまたはPython等の他の高水準言語を介して実行時に生成される中間翻訳言語である。コードは、HSAILとGPUがシステムに統合されたどのようなものでも動作するようにコンパイルされる。
このアプローチは、開発者が最も快適と感じる如何なる言語でもGPU用のコードを記述することを可能にする。それは、またX86互換であるためにGPU向けに開発しているか、もしくは開発をしていない半導体メーカーの活躍の場を均等にするのに役立つ、とジョエル・ハラスカはExtreme Techに書いている。
HPCは、ゲーム、モバイルデバイス、および顔認識や自然言語処理のようなワークロードと一緒にHSAとHSAIL中間言語からの恩恵を受ける予定のコンピューティングの分野の一つである。
しかし、グラフィックスを多用する次世代のゲームを記述するためにはHSAのアプローチをサポートするための新しい物理エンジンやプログラミング・モデルを開発する必要があるため、HPCはおそらくHSA財団の支援による異種デバイスサポートの短期的利益の大部分のシェアを獲得することになるだろう、とハラスカは書いている。