インテル® oneAPI ツールキット 2025.0 で AI と高速コンピューティングの生産性を向上


この記事は、インテルのウェブサイトで公開されている「Boost AI and Accelerated Compute Productivity with Intel® oneAPI Toolkits 2025.0」の日本語参考訳です。原文は更新される可能性があります。原文と翻訳文の内容が異なる場合は原文を優先してください。


oneAPI は長い道のりを歩んできました。5 年前の 2019年11月、当時インテル コーポレーションのアーキテクチャー、グラフィックス & ソフトウェア担当 VP 兼コンピュート・パフォーマンス開発製品グループ本部長であった Bill Savage は、米国コロラド州デンバーで開催された SC19 (英語) で、oneAPI 業界イニシアチブの創設を発表しました。

インテル® ソフトウェア開発ツールの最新リリース 2025.0 は、oneAPI が約束する、ベンダーに依存しない拡張可能な高度に並列化された高速エッジ、AI、HPC コンピューティング向けのオープンなクロスアーキテクチャー・ソフトウェア開発プラットフォームへの大きな進展を表しています。

主な機能改善など、バージョン 2025.0 の詳細については、以下のリンクを参照してください。
→ oneAPI 誕生から 5 周年を記念するインテル® ソフトウェア開発ツールのバージョン 2025.0 がリリース

最新リリース 2025.0 は、LLVM、SPIR-V、OpenMP、SYCL、Fortran、MPI、Python などのオープンな業界標準を全面的に採用し、開発者の生産性を強化することに重点を置いています。インテルは、生産性、ソフトウェアのスケーリング、保守性、柔軟性を考慮して、最先端の AI およびコンピューティング・プラットフォーム向けの最新の並列プログラミング拡張機能、最適化、チューニングのサポート拡大に取り組んできました。

その結果、並列ハードウェア・ランタイムから Fortran、C/C++、Python ツール、データ・アナリティクス、ML および AI モデル、フレームワークに至るまで、すべてを網羅する包括的なソフトウェア開発スタックが誕生しました。

図 1: ソフトウェア開発スタック

このソフトウェア開発スタックには、E-cores 搭載インテル® Xeon® 6 プロセッサーP-cores 搭載インテル® Xeon® 6 プロセッサー、統合 GPU と NPU を備えたインテル® Core™ Ultra プロセッサー (シリーズ 2) などの最新のインテル® プラットフォーム向けの最適化サポートが含まれています。

oneAPI の 5 年の歩み: 取り組みの進化

oneAPI のビジョン (英語) は、ライブラリー、オープンソース・リポジトリー、SYCL ベースの C++ 言語拡張、最適化されたリファレンス実装の包括的なセットを提供し、以下の目標を達成することです。

  1. 共通の統合されたオープンなマルチアーキテクチャー、マルチベンダーのソフトウェア・プラットフォームを定義します。
  2. 多様なハードウェア・ベンダーとアクセラレーター・テクノロジーで動作するコードとパフォーマンスの移植性を確保します。
  3. さまざまなセクターやユースケースにわたるプログラミング・ドメインのニーズに対応する包括的なライブラリー API セットを維持および育成します。
  4. 統一されたマルチアーキテクチャー・ソフトウェア開発モデルのニーズを満たす統合 API 機能とインターフェイスを推進するための開発者コミュニティーとオープンフォーラムを提供します。
  5. 開発者エコシステム全体で、oneAPI プロジェクトと互換性のある oneAPI 実装のコラボレーションを促進します。

数百万のインストールに加え、30 を超える研究機関と大学からなる oneAPI アカデミック・センター・オブ・エクセレンス (英語) と多数の awesome-onapi (英語) プロジェクトを含む、成長を続ける活発な開発者コミュニティーにより、oneAPI は 2024年9月に 1 周年を迎えた (英語) Unified Acceleration Foundation (UXL) (英語) へと進化しました。

oneAPI (英語) ソフトウェア・プラットフォームとオープンなマルチアーキテクチャー・プログラミング・モデルは、150 を超えるアクティブメンバーからなるコミュニティー、ライブラリー、仕様により、UXL Foundation が拡張している豊富なビルディング・ブロックのセットを完成させます。

図 2: oneAPI 仕様の要素

oneAPI は、Khronos Group の SYCL (英語) および OpenCL (英語) プロジェクトや、UXL Foundation (英語) のもう 1 つの提携パートナーである Autoware Foundation (英語) とともに、30 を超えるメンバー、シリコンベンダー、ソフトウェア・ベンダー、設計メーカー、AI ソリューション・プロバイダー、自動車関連企業の目標達成を支援しています。その範囲は、オープンな高速並列コンピューティングを超えて、人工知能、ビジュアル・コンピューティング、エッジ・コンピューティングなどにも広がっています。

コミュニティーからの祝福の声

oneAPI は、ソフトウェア開発者コミュニティーが、さまざまなハードウェア構成にわたってアプリケーション・ソフトウェア・スタック全体を拡張する方法を変えました。これにより、ソフトウェア開発者はベンダー依存から解放され、多様なヘテロジニアス・アーキテクチャーと計算能力を持つハードウェア・プラットフォームへ移行する際に、コードを書き直す必要性が最小限に抑えられます。

以下では、oneAPI コミュニティーの仲間や貢献者が、oneAPI と UXL Foundation を定義するオープン・スタンダード・パラダイムを採用した経験を共有しています。

「oneAPI が 5 周年を迎えたことをお祝いいたします。ExaHyPE において、oneAPI は双曲方程式系の数値計算カーネルの実装に大きく貢献し、SYCL がこれらのバリエーションを探索する理想的な抽象化と不可知論を提供することで、パフォーマンスに大きな違いをもたらしました。この多用途性により、私たちのチームは、インテルのエンジニアとともに、カーネルの 3 つの異なる設計パラダイムを発表することができました。」
– ダラム大学データサイエンス研究所所長 Tobias Weinzierl 博士

「oneAPIは、アーキテクチャーを超えたシームレスな開発を可能にすることで、ヘテロジニアス・コンピューティングへのアプローチ方法に革命をもたらしました。オープンで統一されたプログラミング・モデルは、AI から HPC までの分野におけるイノベーションを加速し、研究者と開発者の新たな可能性を解き放ちました。oneAPI 5 周年おめでとうございます。」
– イスラエル工科大学コンピューター・サイエンス学部助教授 Gal Oren 博士

「インテルの oneAPI ソフトウェア・スタックへのコミットメントは、開発者重視のオープン・スタンダードへのコミットメントの証です。oneAPI は 5 周年を迎え、CPU と GPU 向けに OpenMP と SYCL の包括的で高性能な実装を提供し、インテル® プロセッサーを最大限に活用するライブラリーとツールのエコシステムによって強化されています。」
– ブリストル大学 先進 HPC 研究グループ長兼上級講師 Tom Deakin 博士

「oneAPI、5 周年おめでとうございます! 私たちは、2019年のプライベート・ベータ・プログラム以来のパートナーです。現在、材料科学のシミュレーションやバイオインフォマティクスのデータ・アナリティクス向けの電力効率の高いソリューションを、さまざまなアクセラレーターを使って模索しています。そのためには、oneAPI のコンポーネント、さまざまな GPU や FPGA 用のバックエンドを備えたコンパイラー、oneMKL、インテル® VTune™ プロファイラーやインテル® Advisor などのパフォーマンス・ツールが不可欠です。」
– ベルリン・コンラート・ツーゼ情報技術センター スーパーコンピューティング部門長 Thomas Steinke 博士

オープンな業界標準による柔軟性

ソフトウェア開発の生産性を次のレベルに引き上げるのに役立つ新しい拡張機能について説明します。

インテルは、oneAPI と UXL Foundation の創設メンバーであるだけでなく、長年オープンソース・ソフトウェア・エコシステムに取り組み、貢献してきました。2025.0 リリースにより、インテルは引き続き最前線で、最新のオープンな業界標準機能と提案の採用に取り組んでいきます。

LLVM

LLVM サニタイザーから見ていきましょう。LLVM サニタイザーは、コード内の望ましくない動作や未定義の動作を識別して特定するのに役立ちます。ソフトウェア開発者がコード変更をリポジトリー・ブランチに提出する前に検証する便利な方法を提供します。インテル® コンパイラーは、次のサニタイザーをサポートしています。

  1. AddressSanitizer – メモリーの安全性の問題を検出します。
  2. UndefinedBehaviourSanitizer – 未定義の動作を検出します。
  3. MemorySanitizer – 初期化されていないメモリーの使用を検出します。
  4. ThreadSanitizer – データ競合を検出します。
  5. Device-Side AddressSanitizer – SYCL デバイスコードのメモリーの安全性に関する問題を検出します。

ThreadSanitizer と Device-Side AddressSanitizer は新たに追加されたものです。

  • ThreadSanitizer を使用すると、OpenMP やスレッド化されたアプリケーションでデータ競合を検出できます。-fsanitize=thread オプションで有効にします。
  • C/C++ でメモリーエラーを検出する AddressSanitizer が SYCL デバイスコードに対応しました。デバイスコードでこの機能を有効にするには、-Xarch_device -fsanitize=address オプションを使用します。ホストコードのメモリーアクセス問題を特定するには、-Xarch_host -fsanitize=address オプションを使用します。

関連記事:
→ インテル® oneAPI DPC++/C++ コンパイラーでサニタイザーを使用してバグを素早く検出

インテル® oneAPI スレッディング ビルディング ブロック (インテル® oneTBB)

インテルのコミュニティーへの関与を示す代表的な例として、ダラム大学の oneAPI センター・オブ・エクセレンス (COE) との oneTBB に関するコラボレーションが挙げられます。Tobias Weinzierl 教授と彼のチームは、双曲方程式系の新しいソルバーを作成するため、最先端の数値要素の汎用コレクションである ExaHyPE を開発しています。

parallel_for などの最も広く使用されている oneTBB 汎用並列アルゴリズムは、範囲を引数として受け取ります。彼らはインテルのエンジニアと協力し、新しい oneTBB 範囲型である blocked_nd_range を開発して提案し、公式 oneTBB 仕様に含めることを目指しています。この拡張機能の詳細については、Unified Acceleration Foundation (UXL) の GitHub にある oneAPI 仕様 (英語) を参照してください。

新しいインテル® oneTBB の task_groupflow_graph、および parallel_for_each のスケーラビリティーの向上により、マルチスレッド・アプリケーションの実行速度が向上します。

ダラム大学は、oneTBB 開発チームと連携して task_group API の強化にも取り組んでいます。その中には、依存関係を追加する目的でタスクを表す task_group によって返されるオブジェクト (task_handle オブジェクト) の型の拡張があります。新しいハンドルを使用すると、タスクをすぐに送信し、後で他のタスクの先行タスクとして設定できます。これにより、理論上の並行性が劇的に向上し、逐次的なタスクグラフが作成されるのを回避できます。

関連記事:
→ ダラム大学の oneAPI センター・オブ・エクセレンスが ExaHype の経験を oneTBB に導入 (英語)

さらに、インテル® oneTBB フローグラフでは、共有グラフ上で重複するメッセージを処理できるようになり、新しい try_put_and_wait 実験的 API を使用して特定のメッセージを待機できるようになりました。

OpenMP

インテル® oneAPI DPC++/C++ コンパイラーおよびインテル® Fortran コンパイラーの最新リリースでは、OpenMP 5.2 の機能強化の一部として導入された多くの新機能と OpenMP 6.0 の最新の提案を実装しています。これには、最新世代のインテル® Arc™ グラフィックス GPU、インテル® データセンター GPU、および統合インテル® Arc™ Xe2 グラフィックス GPU のサポートが含まれます。

特に GPU 実行制御について、OpenMP は次の機能を提供します。

  1. ヘテロジニアス・メモリー・アーキテクチャーでのデータ管理
  2. GPU スレッド管理の実行ポリシー/構成
  3. GPU 向けに最適化されたライブラリーまたはその他のコンパイル単位への既存の API の活用
  4. GPU 命令の選択/最適化
  5. 同時スレッド実行の制御フロー/分岐制御

インテル® コンパイラー 2025.0 では、次の新しい OpenMP 機能が導入されています。

  • GPU 共有ローカルメモリー上のデータを管理する GROUPPRIVATE ディレクティブ (OpenMP 6.0)
  • LOOP ディレクティブ
  • TEAMS ディレクティブの REDUCTION 節
  • 実行ポリシーの TARGET ディレクティブ (OpenMP 5.1) の NOWAIT 節
  • 既存の API を利用し、SYCL と OpenMP の相互運用性を実現する DISPATCH ディレクティブ (OpenMP 6.0) の INTEROP 節

関連記事:
→ インテル® コンパイラーによる高度な OpenMP デバイスオフロード (英語)

MPI

インテル® MPI ライブラリーは、分割通信や改善されたエラー処理を含む完全な MPI 4.0 実装を提供します。

MPI_Allreduce の新しい最適化により、インテル® GPU のスケールアップおよびスケールアウト・パフォーマンスが向上します。

暗号化

今日のデジタル環境では、特に機密情報を管理する組織にとって、暗号化モジュールのセキュリティーを確保することが非常に重要です。FIPS 準拠 (英語) と、量子コンピューターの脅威 (英語) に備える必要があります。インテル® クリプトグラフィー・プリミティブ・ライブラリー (英語) は、スレッドセーフな並列処理が有効な暗号化アルゴリズム・ソリューションを備えた最新のオープン・スタンダードに準拠し、最先端のセキュリティーとプライバシーを提供します。

並列処理による高速化

並列コンピューティングの高速化の重要性はそれだけにとどまりません。

インテル® oneAPI マス・カーネル・ライブラリー (インテル® oneMKL)

30 年目を迎えたインテル® oneMKL は、今もなお数学ライブラリーの最前線に立ち続けています。

  • 単精度 3 次元実数インプレース FFT を使用するワークロードは、インテル® データセンター GPU 上で実行することでパフォーマンスが大幅に改善されます。
  • SYCL 離散フーリエ変換 API は、型安全性のコンパイルメッセージが追加され、使いやすく、デバッグしやすくなり、特にインテル® GPU 向けのアプリケーションの開発期間を短縮します。
  • SYCL API のスパースドメインが、座標フォーマット (COO) を使用した疎行列をサポートしました。この形式は、高速な疎行列構築で広く使用されており、圧縮スパース行 (CSR) や圧縮スパース列 (CSC) などのほかの一般的な形式に簡単に変換できます。
  • SYCL デバイス API を使用した乱数生成 (RNG) に新しい分布モデルとデータ型を利用できるようになりました。

並列処理の向上に注力することで、インテル® oneMKL アルゴリズムのパフォーマンスが向上する具体的な例の 1 つは、GPU で乱数生成にサブシーケンス並列処理を導入したことです。

乱数ジェネレーターは、暗号化、シミュレーション、科学計算など、多くのアプリケーションで不可欠です。予知保全、定量的金融リスク評価、地震および津波緊急対応計画など、さまざまな予測シナリオに乱数シードを提供する上で重要な役割を果たします。

アルゴリズムを同時に処理可能な複数の小さなタスクに分割することで、パフォーマンスをさらに向上させることができます。

関連記事:
→ インテル® oneMKL MRG32k3a 乱数ジェネレーターの高速なサブストリーム並列化 (英語)

インテル® ディストリビューションの Python

Python の並列実行の効率化は、インテルが行っている PyTorch エコシステムへの最適化のアップストリームや貢献といった多くの取り組みの中核をなしています。

最新バージョンのインテル® ディストリビューションの Python には、次の新機能が含まれています。

  • oneAPI により、CPU と GPU でドロップインの、ネイティブに近い数値計算パフォーマンスを実現します。
  • Python 向けデータ・パラレル・エクステンション (dpnp) は、互換性を拡張し、ランタイムに NumPy 2.0 のサポートを追加して、オフロードされた操作の非同期実行を提供します。このアップデートでは、重要な新機能として、CuPy と機能的に 90% 互換な、25 を超える新しい関数とキーワードのサポートが提供されます。
  • データ・パラレル・コントロール (dpctl) は、互換性を拡張し、ランタイムに NumPy 2.0 のサポートを追加して、オフロードされた操作の非同期実行を提供します。このアップデートでは、Python 配列 API サポートの機能が拡張されます。

PyTorch 最適化

PyTorch* 2.5 のネイティブサポート (英語) は、インテルの データセンター GPU、インテル® Core™ Ultra プロセッサー、インテルのクライアント GPU で利用できます。インテル® Arc™ グラフィックスとインテル® Iris® Xe グラフィックス GPU のサポートにより、Windows* で PyTorch* を使用した開発が可能です。

現世代のプロセッサー向けに最適化された Torch.Compile サポートと PyTorch 2.5 により PyTorch 推論の CPU パフォーマンスを向上 (英語) し、インテル® oneAPI DPC++/C++ で TorchInductors をコンパイル (英語) できます。

最新の AI およびコンピューティング・プラットフォーム向けに最適化

インテル® ソフトウェア開発ツールの最新リリースは、次のメリットをもたらします。

インテルの CPU および GPU ポートフォリオ全体でパフォーマンスをスケーリングできます。

開発者の生産性に注目

パフォーマンスだけでなく、生産性も重要です。

コンパイラーの最適化レポート

ソフトウェア開発の早い段階でアプリケーションのパフォーマンスを向上させることができます。バージョン 2025.0 のインテル® oneAPI DPC++/C++ コンパイラーインテル® Fortran コンパイラーでは、最適化レポートが大幅に強化されており、次の項目をカバーしています。

  • インライン展開
  • プロファイルに基づく最適化 (PGO)
  • ループ最適化
  • SIMD ベクトル化
  • OpenMP
  • コード生成

コードの作成時に、コンパイラーがコードがどれくらい効率的であるか教えてくれます。

関連記事:
→ コンパイラー最適化レポートを使用して、高度に最適化されたアプリケーションをより迅速に開発

AI ワークロードのパフォーマンス・チューニング

インテル® VTune™ プロファイラー 2025.0 を使用したアプリケーションのチューニングとプロファイルは、高速コンピューティングに限定されません。CPU、GPU、インテル® Core™ Ultra プロセッサー (シリーズ 2) NPU を使用する PyTorch および OpenVINO™ AI ワークロードもプロファイルできます。

ワークロードに対してインテル® VTune™ プロファイラーを実行し、インテル® インストルメンテーションおよびトレーシング・テクノロジー (ITT) API と Python 認識および OpenVINO™ 統合を活用するだけで、パフォーマンスのボトルネックを特定し、ディープラーニング推論とトレーニング・ワークロードの並列実行を効率化し、メモリーとキャッシュのレイテンシーを排除できます。

インテル® VTune™ プロファイラーを使用すると、CPU、GPU、NPU で ML と AI のパフォーマンスを効率化および高速化できます。

クックブックの関連レシピ:
→ インテル® Core™ Ultra プロセッサー 200V シリーズでの大規模言語モデルのプロファイル
→ OpenVINO™ アプリケーションのプロファイル
→ データ並列 Python アプリケーションのプロファイル

ソフトウェアのダウンロード

インテル® oneAPI ツールキット 2025.0 は、以下からダウンロードできます。

小さなダウンロード・パッケージも利用可能

ツールキット・セレクター (英語) を使用して、フルキットまたは特定のユースケースに必要なコンポーネントのみを含むより小さなサイズの新しいサブバンドルをインストールすることで、ソフトウェアのセットアップを効率化できます。インテル® C++ エッセンシャルズ、インテル® Fortan エッセンシャルズ、インテル® ディープラーニング・エッセンシャルズを利用して、時間を節約し、手間を減らし、プロジェクトに最適なツールを入手できます。

関連情報

コンパイラー

ライブラリーと API

パフォーマンス・プロファイル


製品および性能に関する情報

1 性能は、使用状況、構成、その他の要因によって異なります。詳細については、http://www.intel.com/PerformanceIndex/ (英語) を参照してください。

最新メジャーバージョン 2025 対応!インテル® ソフトウェア開発ツール向けサポートサービス

エクセルソフトが提供するインテル® ソフトウェア開発ツール向けサポートサービスでは、インテル® ソフトウェア開発ツールの旧バージョンから新バージョンへの移行、CUDA から SYCL へのコード移行、他社製 GPU とのコード互換など、新しい環境でこれまで通り業務を遂行するための移行を支援します。製品の移行に関してお悩み、質問などお気軽にお問い合わせください。

最新のドキュメント日本語参考訳

エクセルソフトでは、バージョン 2025.0 に対応するドキュメントの日本語参考訳を一般公開しています。現在、以下のドキュメントに関する日本語参考訳をご参照いただけます。

  • インテル® ソフトウェア開発ツールのリリースノート (ベース・ツールキット、ベース & HPC ツールキット)
  • インテル® ソフトウェア開発ツールの製品紹介資料
  • インテル® oneAPI DPC++/C++ コンパイラーのリリースノート
  • インテル® Fortran コンパイラーのリリースノート
  • インテル® VTune™ プロファイラーのリリースノート
  • インテル® DPC++ 互換性ツールのリリースノート
  • oneAPI for NVIDIA* GPU および AMD* GPU 導入ガイド
  • インテル® oneAPI プログラミング・ガイド