この記事は、インテルのサイトで公開されている「oneAPI in 2023: A Year of Growth and Broadening Adoption」の日本語参考訳です。原文は更新される可能性があります。原文と翻訳文の内容が異なる場合は原文を優先してください。
この記事の PDF 版はこちらからご利用になれます。
2023年は、Linux Foundation がオープン・スタンダードのアクセラレーター・プログラミング・モデルを提供する業界横断グループの Unified Acceleration (UXL) Foundation を発表し、oneAPI 仕様をその出発点として採用したことで、oneAPI 業界イニシアチブにとって重大な転機の年となりました。
2023年12月に開催された oneAPI DevSummit for AI and HPC (英語) において、インテル コーポレーションの Joe Curley と Sanjiv Shah は、oneAPI コミュニティーのこの 1 年の活動と、これからのエキサイティングな 1 年の方向性を定めた素晴らしい成果を振り返り (英語) ました。
インテル コーポレーションのソフトウェア & 先端技術部門 (SATG) 担当副社長兼ソフトウェア開発製品事業本部長 Sanjiv Shah は冒頭で、過去 40 年間、開発者は PC や組み込み機器からメインフレームやスーパーコンピューターに至るまで、あらゆるデバイス上でコンピューティング言語を実行できたが、アクセラレーター・テクノロジー (GPU、FPGA、AI 用 ASIC) の登場により、特定のデバイスでしか実行できないアーキテクチャー固有のコードを記述することを迫られ、コードの移植性が損なわれたとの見解を述べました。アクセラレーターの世界がこれまでと異なる必要はあるのでしょうか?
アクセラレーターが提供する前例のない機能を活用するには、独自のソフトウェアによってアクセラレーターの選択が制限されるのを受け入れ、さまざまなターゲットデバイスに合わせてコードを書き直す高額なコストを負担しなければなりませんでした。oneAPI プログラミング・モデルの使命は、アクセラレーター・プログラミングをオープンで移植可能なものにすることです。
oneAPI は、アクセラレーター・プログラミングをオープンで移植可能なものにし、誰でもアクセラレーターのメリットを得られるにする、というビジョンを持ってスタートしました。oneAPI は、C++ with SYCL* (英語) によるダイレクト・プログラミングと、数学、スレッド化、ニューラル・ネットワークなどの一般的な機能を提供するライブラリー群、1 つの言語で異なるアクセラレーター向けのプログラミングを可能にするハードウェア抽象化レイヤーにより、単一のコードベースを CPU、GPU、FPGA など複数のコンピューティング・アーキテクチャーに展開できるようにします。さらに、PyTorch* や TensorFlow* を含む主要な AI フレームワーク (英語) には、oneAPI による最適化が組み込まれています。これらはすべてオープンソース、オープン仕様、オープンライセンスで構築されています。そのため、開発者はパフォーマンス、生産性、そして任意のデバイスでプログラミングする自由が得られます。
インテルは、oneAPI をインテル製品向けに最適化するツールキットを提供する一方で、この 1 年は、インテルのツールを利用する開発者が複数のベンダーのデバイスをターゲットにできるように、Codeplay による NVIDIA* と AMD* GPU 用のプラグインの開発に注力しました。
oneAPI は、実証された移植性とパフォーマンスを提供します。Shah は、NVIDIA* GPU と AMD* GPU 上で SYCL* アプリケーションを実行した多くの例を示し、ベンダーネイティブの CUDA* 言語や HIP 言語と比較して、幅広いワークロードで同等のパフォーマンスを実証しました。開発者は、インテル® DPC++ 互換性ツールやオープンソースの SYCLomatic (英語) などの自動化ツールを使用して、CUDA* コードを SYCL* に移行できます。この 1 年間で、成長を続ける oneAPI エコシステムは、インテル、NVIDIA、AMD 製品以外にも新しい言語やハードウェアをサポートしました。
oneAPI の設立当初から、インテルは「世界中の誰もが参加できる中立的な団体によって、オープンに管理されるようにする」ということを明確にしていました。この約束は、9月に発表された Unified Acceleration (UXL) Foundation (英語) という Linux Foundation 傘下の共同基金プロジェクトによって果たされ、現在同プロジェクトが oneAPI 仕様を管理しています。運営メンバーには、ARM、富士通、Google Cloud、Imagination Technologies、Intel、Qualcomm、Samsung、VMware が名を連ねています。Shah は、Linux Foundation と協力する大きなメリットについて、以下のように述べています。
「Linux Foundation は、皆とエンゲージする非常に素晴らしい、構造化された方法を確立しており、誰もが協力できる中立的な組織として、明確なガバナンス構造を持っています。
oneAPI を世に送り出し、すべてのガバナンス、オープンソース・プロジェクト、仕様書、そしてこのプロジェクトの進め方を UXL に引き継ぐことを、これ以上誇りに思うことはありません。」
インテル コーポレーションのソフトウェア & 先端技術部門 (SATG) 担当副社長兼ソフトウェア製品 & エコシステム事業本部長の Joe Curley は、oneAPI の採用が拡大していることを、Geoffrey Moore が『Crossing the Chasm』 (邦題『キャズム』) の中で示した、新技術が市場に採用されるまでの有名な図に当てはめて次のように説明しました。、
「それは段階的に起こります。最初の段階では、説得力のあるビジョンを特定する必要があります。」
oneAPI の場合、それはデバイスごとに個別のソフトウェア・スタックのコストや複雑さを伴わずに、開発者がさまざまなアクセラレーターを AI やその他のタスクに利用できることでした。
「まず、理念的にやろうとしていることに賛同してくれるイノベーターを見つける必要があります。そして、彼らと協力して、そのアイデアが技術的に可能であることを証明するのです。そうすることで、取り組みに共感した開発者が、存在証明を見て協力し、投資してくれる第 2 段階につながります。」
ここで課題となるのが、新技術の共同開発に意欲的なイノベーターや早期採用者は、潜在的なユーザー層のごく一部であり、大多数のユーザーは完成品を期待していることです。技術の成熟には時間がかかります。キャズムを超えるには、大多数がその価値を理解し、最終的には信頼し、広く採用できるように技術を構築する必要があります。
このような観点から、Curley は次のように続けました。
「oneAPI センター・オブ・エクセレンス (英語) を設立した主要大学や研究機関に代表されるように、私たちは、市場のリーダーたちと知り合うことができ、本当に幸運でした。彼らは皆、アクセラレーターのマルチスタンダード、マルチアーキテクチャー・プログラミングの必要性を感じており、早い段階から私たちに協力してくれました。」
Curley は、これらのイノベーターたちによって oneAPI をベースに開発された複雑な HPC アプリケーションの数々 (Supercomputing 23 (英語) で紹介されたものを含む) を挙げ、初期のサクセスストーリーが早期採用者の第 2 の波を生み出すと指摘しました。
特に、SYCL* を使用して oneAPI にコードを移行するコミュニティーの数が増えている (英語) こと、そして彼らがアプリケーションを簡単に移植し、同等のパフォーマンスを得られていることに触れました。
「SYCLomatic や子会社の Codeplay を通じて、他のハードウェアで動作する高品質な実装の開発に取り組むインテルの姿勢に、初期のパートナーは気付きました。」
このアプリケーション・ベースの成長 (英語) は、oneAPI や oneAPI を利用するツールを展開して CPU やアクセラレーターでスケーラブルなパフォーマンスを生み出す、TensorFlow* や PyTorch* などの ISV や AI フレームワークを含む、より大きな導入の波に繋がっています。
「oneAPI の量産と使用はすでに始まっており、4 年目を迎えて非常にやりがいを感じています。」
oneAPI をさらに利用しやすくするため、インテルは、インテル® ソフトウェア開発ツール 2024.0 を含む最新のソフトウェアと、最新のインテル® ハードウェアにアクセスできるインテル® デベロッパー・クラウドを発表しました。インテル® ソフトウェア開発ツール 2024.0 は、oneAPI をベースとする高度なコンパイラー、ライブラリー、解析およびデバッグツール、最適化されたフレームワークの完全なセットを提供し、アクセラレーション・コンピューティング・ソリューションの開発と導入を簡素化します。
ぜひ、コミュニティーに参加してください! 以下は、oneAPI ツールに関連した情報へのリンクです。
関連情報:
- oneAPI DevSummit for AI and HPC のセッション (英語) と 基調講演 (英語)
- oneAPI の概要ビデオ (英語)
- インテル® ソフトウェア開発ツールの最新情報
- インテル® デベロッパー・クラウドを開始する
- Unified Acceleration (UXL) Foundation (英語) に参加する
- oneAPI イノベーター (英語) になる
- スチューデント・アンバサダー (英語) になる
- スタートアップ向けのインテル® Liftoff プログラムに参加する
* その他の社名、製品名などは、一般に各社の表示、商標または登録商標です。
SYCL は Khronos Group の商標です。