単一ソースコードでメニーコアやGPUやFPGAに対応したクロスアーキテクチャー対応のソフトウェア開発を可能に。インテルの「oneAPI ツールキット 2022」[PR]

今回は「単一ソースコードでメニーコアやGPUやFPGAに対応したクロスアーキテクチャー対応のソフトウェア開発を可能に。インテルの「oneAPI ツールキット 2022」[PR]」についてご紹介します。

関連ワード (価格、用意、製品等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


コンピュータの処理能力を大きく左右するプロセッサの進化は、CPUだけではなくGPUやFPGAなどさまざまなアーキテクチャーにも及んでいます。

特にビッグデータや機械学習のような大規模データ処理のニーズが増してきているなかで、それを高速に処理するための多数のコアや命令群、高速なキャッシュメモリなどを備えたCPU、GPU、FPGAなどの能力を最大限引き出せるかどうかは大変重要です。

その成否がソフトウェアのレスポンス、さらには従量課金制のクラウドのコストなどに大きく関わってくるためです。

figこれからのソフトウェアには、多数のコアやキャッシュを持つメニーコアのCPUや、GPUやFPGAといったアクセラレーションデバイスなどの高性能なハードウェアの性能を最大限引き出すことが求められる。写真はインテルの最新Xeon 第3世代スケーラブルプロセッサとIris Xe MAXグラフィックスプロセッサ(写真出典:インテル)

しかしながら、ハードウェアの性能を徹底的に引き出すために、特定のプロセッサやアーキテクチャーに依存したアプリケーションを開発してしまうことにも課題があります。

特定のプロセッサやアーキテクチャーに依存したコードは、さらに優れたアーキテクチャーのハードウェアが登場したときに、それらへの移植を難しくしてしまい、将来の性能や効率を改善する機会を失う可能性を高めてしまうのです。

理想は単一のコードで、現在のCPUやGPUやFPGAから将来のプロセッサまで性能を引き出せる、クロスアーキテクチャー対応のソフトウェアを実現できることです。

そしてその理想を実現しようとしているのが、インテルなどが取り組んでいる「oneAPI業界イニシアチブ」です。

fig

oneAPI業界イニシアチブの取り組み

oneAPI業界イニシアチブは、ハードウェアの違いを意識することなくソフトウェアの開発が行えるソフトウェア環境の実現を推進する団体です。

そのためのプログラミング言語やライブラリなどを提供しています。

細かいところまでユーザー自身がプログラミングしたい場合には、「データ並列C++」(DPC++:Data Parallel C++)と呼ばれるC++をベースにしたプログラミング言語が用意されており、効率的な開発を進めたい場合には用途別のライブラリが用意されています。

oneAPI業界イニシアチブは2019年にスタートし、さまざまな企業や団体、学術機関がさまざまなプロセッサやアーキテクチャーへ対応への協力や支援を行っています。

インテル oneAPI ツールキット 2022

このoneAPI業界イニシアチブのソフトウェア群をベースに、インテルのプロセッサやGPUなどのハードウェアの能力を引き出すことに特化したソフトウェアパッケージ製品が「インテル oneAPI ツールキット 2022」です。

fig

インテル oneAPI ツールキット 2022は、「ベース・ツールキット」と、目的別のアドオンとして「HPCツールキット」「IoTツールキット」「AIアナリティクス・ツールキット」「レンダリング・ツールキット」のラインナップが用意されています。

ベース・ツールキットは、DPC++によるダイレクトプログラミングとライブラリによるAPIプログラミングをサポート。パフォーマンスチューニングを行う上で欠かせない解析ツールやデバッグツールも含まれています。

これによりインテルのプロセッサや内蔵GPU、ディスクリートGPU、FPGAなど多様なハードウェアのネイティブコードを完全にサポートします。

ベース・ツールキットの主要な構成要素であるDPC++と、インテルAdvisor、インテルVTuneプロファイラーについて見ていきましょう。

プログラミング言語を学び直すことなく開発可能

DPC++は、標準のC++と、OpenGLなどの標準規格を策定するThe Khronosグループの「Khronos SYCL」をベースに、コミュニティによる拡張が行われたプログラミング言語です。

fig

C++を知っているプログラマであれば新しくプログラミング言語を学び直すことなく、馴染みのある形式でコードを記述しつつハードウェアの性能を最大限に引き出すことが可能となっています。

DPC++では、ホストコードと呼ばれるCPUで実行される部分のコードと、GPUやFPGAのようなアクセラレーターデバイスで実行することを想定したコードを混在して同一のソースコード内に記述できます。

fig

処理がアクセラレーターデバイスでの実行を想定した部分にたどり着くと、GPUやFPGAといった選択したハードウェア上で非同期に処理が行われ、そのあいだホストプログラムは別の処理を実行します。

このハードウェアの選択は開発者が指定できるほか、GPUが使える場合には優先して使うと言った優先度の設定も可能になっているため、実行するマシンのハードウェア構成に適合した実行を行えます。

コードを最適化するためのアドバイザやプロファイラー

ではコードのどの部分をCPU以外のデバイスへオフロードして実行すべきで、それによりどのくらいの速度向上が見込めるのか? これをシミュレーションし、ビジュアルに見せてくれるのが「Advisor」です。

fig

Advisorでは、CPUのマルチコアやキャッシュを最適に使うためのアドバイスや、コードのどの部分をGPUなどにオフロードさせるべきか、その際にどのくらい性能が向上するかの推定もしてくれます。

一方「VTuneプロファイラー」は、コードのどこにチューニングの改善余地があるか、キャッシュへのヒット率の改善から演算内容の改善、処理すべきハードウェアの選択などを実行結果のプロファイルを元に示してくれます。

fig

これらのツールを用いることで、DPC++のコードに関する総合的な最適化がカバーできるわけです。

「インテル oneAPI ツールキット 2022」はほぼ毎年アップデートが継続して行われているoneAPIツールキットの最新版です。

今回の最新バージョンでは最新のインテルデバイスへの対応、Fortranコンパイラの登場、解析ツールの強化により将来のGPUに移行した場合の性能上のメリットを予測するなど、より強力な開発ツールとなっています。

fig

安心して導入できるエクセルソフトの各種サービス

この「インテル oneAPI ツールキット 2022」を日本国内で販売するエクセルソフトは、日本語ドキュメントの提供、セミナーの開催、導入支援など、製品導入に関わるさまざまな施策を実施中です。

fig

これらにより、最新のハードウェア能力を最大限引き出す「インテル oneAPI ツールキット 2022」を安心して導入することができます。

より詳しい製品情報や価格などについてはエクセルソフトの製品公式サイトをご覧ください。

fig

≫インテル oneAPI ツールキット : クロスアーキテクチャー対応の統合プログラミング・モデル | XLsoft エクセルソフト

(本記事はエクセルソフト提供のタイアップ記事です)

COMMENTS


Recommended

TITLE
CATEGORY
DATE
タニタが「アイドルマスター」コラボ計量器 歌詞の“空耳”きっかけで「5年の時を経て」実現
ネットトピック
2021-08-11 19:48
日立と産総研が共同開発した墨塗署名技術、ISO/IECに採用
IT関連
2024-08-29 02:21
登大遊氏、日本は「超正統派」のICT人材を育成すべき。そのために、自由な試行錯誤を許容するインチキネットワークの普及に取り組む(中編)。JaSST'22 Tokyo
働き方 / 給与 / 学び
2022-03-17 21:39
MS&AD、セキュリティリスク低減にアタックサーフェス管理を提言–イオンペットの事例も
IT関連
2024-06-19 17:55
SASはこれからどう進化していくのか–SAS Japan手島新社長に聞く
IT関連
2023-08-31 11:09
キヤノンITS、メインフレームをオープン系に移行するサービスで富士通に対応
IT関連
2023-12-20 10:08
AWS、Java 18対応の独自Javaディストリビューション「Amazon Corretto 18」正式リリース
AWS
2022-03-24 15:54
KDDI、VMwareベースのプライベートクラウドをマネージドサービスで提供
IT関連
2021-06-26 11:40
Vercel、生成AIへのプロンプトでWebアプリのUIを自動生成してくれる「v0」をベータ公開。Freeプランも提供
HTML/CSS
2023-10-18 22:07
ソニー「ZV-E10」はレンズ交換できる民生用ビデオカメラ 新しい市場を作るか :荻窪圭のデジカメレビュープラス(1/2 ページ)
くらテク
2021-07-29 14:00
Snowflake、データクラウドの機能を拡充–「Document AI」や開発者向けフレームワークなど
IT関連
2023-06-29 15:52
マイクロソフト製の最新Linuxディストリビューション「Azure Linux 3.0」正式リリース。Azureに最適化され、Kernel 6.6を採用
Linux
2024-08-08 07:22
アマゾン、約1万人の人員削減を計画か–週内にも
IT関連
2022-11-16 23:51
SAPジャパンは「GROW with SAP」で今度こそ中堅中小企業の市場へ入り込めるか
IT関連
2023-07-21 17:55