高速化された計算、ハードウェア選択の自由のためのクロスアーキテクチャー・プログラミング

oneAPI:

業界イニシアチブ & インテル製品
One インテル® ソフトウェア & アーキテクチャー・グループ
インテル® アーキテクチャー、グラフィックス & ソフトウェア
2020 年 12 月

ここに記載されているすべての情報は、予告なく変更されることがあります。
インテルの最新の製品仕様およびロードマップをご希望の方は、インテルの担当者までお問い合わせください。

複数のアーキテクチャー向け
プログラミングの課題

アプリケーション・ワークロード
多様なハードウェアが必要

スカラー専門化したワークロードの増加

ベクトル

空間

行列

ミドルウェア/フレームワーク

各種データセントリック・ハードウェアへの対応が必要
現在は各アーキテクチャー向けに個別のプログラミング・
モデルとツールチェーンが必要

CPU
プログラミング・モデル

GPU
プログラミング・モデル

FPGA
プログラミン
グ・モデル

CPU

GPU

FPGA

その他のアクセラレーター
プログラミン
グ・モデル

ソフトウェア開発の複雑さはアーキテクチャー選択の自由を制限する
その他のアクセラレーター

XPU

2

概要

oneAPI
アプリケーション・ワークロード
多様なハードウェアが必要

スカラー

最適なハードウェアを自由に選択できるクロスアーキテク
チャー・プログラミング

ベクトル

空間

行列

ミドルウェア/フレームワーク

業界標準とオープンな仕様に基づく
最新のハードウェアの最先端のパフォーマンス機能を活用

業界イニシアチブ

C++、OpenMP*、Fortran、MPI を含む既存のハイパフォー
マンス言語やプログラミング・モデルと互換

インテル製品

XPU

CPU

GPU

FPGA

その他のアクセラレーター3oneAPI 業界イニシアチブ
独自のアーキテクチャーに代わる選択肢

アプリケーション・ワークロード
多様なハードウェアが必要

ミドルウェア/フレームワーク

C++ および SYCL* 標準ベースのクロスアーキテクチャー言語..
.

ドメイン固有の関数を高速化するように設計された強力なライブラリー

低水準ハードウェア抽象化レイヤー

oneAPI 業界仕様
ダイレクト・プログラミング

API ベースのプログラミング
ライブラリー

コミュニティーと業界の協力を促進するオープンな環境
複数のアーキテクチャーとベンダーでコードを再利用可能

データ並列 C++

数学

スレッド化

DPC++
ライブラリー

解析/ML

DNN

ML 通信

ビデオ処理

低水準ハードウェア・インターフェイス

経済的および技術的な負担を伴う独自のプログラミング・
モデルに代わって、高速なコンピューティングを実現する
生産性に優れたスマートなパス

詳細は、oneapi.com (英語) を参照してください。

XPU

CPU

GPU

FPGA

その他のアクセラレーター4データ並列 C++ (DPC++)
標準ベースのクロスアーキテクチャー言語
DPC++ = ISO C++ と Khronos SYCL*CPU とアクセラレーターに並列処理、生産性、パフォーマン
スを提供▪

ハードウェアの機能を活用して高速なコンピューティングを実現▪

ターゲット・ハードウェア間でコードの再利用が可能、特定のアクセラレーター向けのカスタム・チューニングを行うことが可能▪

単一アーキテクチャー専用のソリューションに代わる、オープンな業界共通のソリュー
ションを提供

C++ および SYCL* ベース▪

C++ の生産性の利点を提供、一般的で使い慣れた C および C++ 構造を使用▪

The Khronos Group の SYCL* を継承し、データ並列処理とヘテロジニアス・プログラ
ミングをサポート

ダイレクト・プログラミング:

データ並列 C++
コミュニティーによる拡張
Khronos SYCL*ISO C++

コミュニティー・プロジェクトを通じて言語の拡張を推進▪

データ並列プログラミングを簡素化する拡張機能を提供▪

オープンな共同開発により継続的に進化

次のハードウェア・プラットフォーム向けのソフトウェア
変更ではなく、次のイノベーションにスキルを活用できる
オープンソースおよびインテルの DPC++/C++ コンパイラーはインテルの CPU、GPU、FPGA をサポートしています。
Codeplay* は、NVIDIA* GPU をターゲットとする DPC++ コンパイラー (英語) を発表しています。

5強力な oneAPI ライブラリー▪ 主要なドメイン固有の関数を高速化するように設計▪ 最高のパフォーマンスが得られるように各プラットフォーム
向けに事前に最適化

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

oneAPI ディープ・ニューラル・
ネットワーク・ライブラリー

oneAPI ビデオ・プロセシング・
ライブラリーoneAPI データ・アナリティク
ス・ライブラリー(oneVPL)(oneDAL)

oneAPI スレッディング・ビル
ディング・ブロック

oneAPI コレクティブ・コミュ
ニケーション・ライブラリー(oneCCL )(oneTBB)(oneDNN)

oneAPI DPC++ ライブラリー(oneDPL)

6

oneAPI 業界イニシアチブの歴史
2019
Q1

oneAPI
業界
イニシアチブoneAPIの業界
での採用

業界
イニシアチブ
を発表

2021

2020

oneAPI
0.6 仕様Q2
oneAPI
0.7 仕様CodePlay がoneAPI で NVIDIA*
GPU をサポート

oneAPI
0.8 仕様Q3
oneAPI
0.9 仕様Q4

oneAPI
1.0 仕様将来

ハイデルベルク大学がoneAPI で AMD*GPU をサポート

7

7

oneAPI エコシステムのサポート

IndianInstitute ofTechnology
Delhi

これらの組織は、クロスアーキテクチャー開発のための単一の統合プログラミング・モデルとして oneAPI イニシアチブのコンセプトをサポートしています。
インテルの製品の購入または使用に関する契約を示すものではありません。
* その他の社名、製品名などは、一般に各社の表示、商標または登録商標です。

UNIVERSITYOF
CAMBRIDGE

8

oneAPI エコシステムのサポート
AI、マシンラーニング、データセントリックなアプリケーションの成長に伴い、業界は、プロセッ
サー・アーキテチャーの急速なイノベーションを開発者が利用できるプログラミング・モデルを必要としています。TensorFlow* は、oneAPI 業界イニシアチブと標準ベースのオープン仕様をサポートしています
oneAPI は、TensorFlow* のモジュール設計を補完し、ハードウェア・ベンダーとソフトウェア・アーキテクチャーの選択肢を広げ、次世代アクセラレーターを迅速にサポートできるようにします。TensorFlow* は、現在インテル® Xeon® プロセッサー上で oneAPI を使用していますが、今後のインテル® アーキテクチャー上で oneAPI を使用して実行できることを楽しみにしています「…oneAPI の目標は、ハードウェア・ベンダーとソフトウェア・アーキテクチャーの選択肢を広げ、次世代アクセラレーターを迅速にサポートできるようにすることです
Microsoft はイニシアチブの一環としてインテル® ハードウェア全体で oneAPI の要素を使用しており、オープン・スタンダードベースの仕様をサポートしています
ユーザーの選択をサポートし、AI とマシンラーニングの成長を促進できることを嬉しく思います」

これらの組織は、クロスアーキテクチャー開発のための単一の統合プログラミング・モデルとして oneAPI イニシアチブのコンセプトをサポートしています。
インテルの製品の購入または使用に関する契約を示すものではありません。
* その他の社名、製品名などは、一般に各社の表示、商標または登録商標です。

9

インテル® oneAPI
製品

アプリケーション・ワークロード
多様なハードウェアが必要

インテルの CPU ツールの豊富な経験を基に構築され、XPU に拡張

ミドルウェア/フレームワーク...

高度なコンパイラー、ライブラリー、移植、解析およびデバッグツールの完全なセット

インテル® oneAPI 製品▪ 最先端のハードウェアの機能を活用して計算を高速化▪ 既存のプログラミング・モデルやコードベース (C++、
Fortran、Python*、OpenMP* など) と相互運用可能であり、開発者は既存のアプリケーションが oneAPIを利用してシームレスに機能することを確信できる

互換性ツール▪ 新しいシステムやアクセラレーターへの移行を促進- 単一のコードベースを使用することで、開発者はイノベーションに多くの時間を費やすことができる

言語

ライブラリー

解析/デバッグ
ツール

低水準ハードウェア・インターフェイス

XPU

CPU

GPU

FPGA

今すぐ入手 (英語)
詳細は、software.intel.com/oneapi (英語) を参照してください。
一部の機能はアーキテクチャーごとに異なり、カスタム・チューニングが必要な場合があります。その他のアクセラレーターは将来サポートされる予定です。

10

11

インテル® DPC++ 互換性ツール
コードの移行時間を最小化

すでに CUDA* で記述されているコー
ドを DPC++ に移行する開発者を支援、可能な場合は人間が解読可能なコードを生成インテル® DPC++ 互換性ツールの使用フロー

80-90% を変換

通常はコードの 80-90% を自動的に移行
開発者がアプリケーションの移植を完了できるように支援するインラインコメ
ントを提供

コーディングを完了して目的のパフォーマンス
にチューニング

インラインコメント付きの人間が解読可能な
DPC++ コード

開発者の CUDA*
ソースコード互換性ツールDPC++
ソースコードhttps://software.intel.com/content/www/us/en/develop/tools/oneapi/components/dpc-compatibility-tool.html

11解析/デバッグツール
ハードウェアを最大限に活用

設計

デバッグ

インテル® Advisor

GDB 向けインテル® ディストリビューション

▪ コードを GPU へ効率良くオフロード▪ CPU、GPU、FPGA エミュレーションでさまざまなアクセラレーターをサポート▪ CPU/GPU コードの計算とメモリーを最適化▪ ベクトル並列処理をさらに有効にして効率を向上▪ データ並列 C++ (DPC++)、C、C++、
Fortran コードの詳細なシステム全体のデバッグが可能

チューニングインテル® VTune™ プロファイラー▪ DPC++ を解析▪ GPU、CPU、FPGA 向けにチューニング

▪ オフロードのパフォーマンスを最適化▪ DPC++、C、C++、Fortran、Python*、
Go*、Java*、混在言語をサポート▪ スレッド化されていないアプリケーションに効率的なスレッド化を追加

高度なツールを使用して、抽象化のすべてのレベルでコードを効率良くデバッグおよびプロファイルできます。
12インテル® oneAPI ツールキット
CPU から XPU までカバーする優れた開発者ツールの完全なセット

ネイティブコード開発者

特殊なワークロード

C++、データ並列 C++ アプリケーション
および oneAPI ライブラリー・ベースのアプリケーションを構築するためのハイパフォーマンス・ツールの基本セット

インテル®
oneAPI HPC
ツールキットインテル®
oneAPI IoT
ツールキットインテル®
oneAPI レンダリ
ング・ツールキット

スケーラブルで高速な
Fortran、OpenMP* およ
び MPI アプリケーションを開発

ネットワークのエッジで実行する、効率的な、信頼性の高いソリューション
を構築

ハイパフォーマンスで高忠実度のビジュアライ
ゼーション・アプリケー
ションを作成インテル® AI アナリティクス・
ツールキット

データ・サイエンティスト/AI 開発者

最適化された DL フレームワークとハイパフォーマンスの Python* ライブラリー
でマシンラーニングとデータ・サイエンス・
パイプラインを高速化

インテル® ディストリビュー
ションの OpenVINO™
ツールキット
Toolkit

エッジからクラウドまでハイパフォー
マンスな推論とアプリケーションを
デプロイ

13

インテル® oneAPI
ツールキット無料版

ツールをローカルで実行

ツールをクラウドで実行

ダウンロード

素早く開始

リポジトリー

コードサンプル、クイック・スタート・ガイド、ウェビナー、トレーニング

DevCloud

software.intel.com/oneapi (英語)
コンテナー

14

商用版インテル® oneAPI ツールキット
次世代の商用インテル® ソフト
ウェア開発製品▪ インテルのテクニカル・コンサルティン
グ・エンジニアによるワールドワイドなサポートを含む

+

+

インテル®
ParallelStudio XE

インテル®
SystemStudio+▪ 以前の商用ツールスイート、インテル®
Parallel Studio XE およびインテル®
System Studio はインテル® oneAPI
製品に移行

15

oneAPI 開発の例
ZIB は EasyWave アプリケーションを CUDA*から DPC++ に移植し、マルチアーキテクチャーで優れたパフォーマンスを提供▪ インテル® DPC++ 互換性ツールを使用して CUDA* で記述された EasyWave を効率良くデータ並列 C++ に移植▪ インテル® アーキテクチャー (CPU、GPU、FPGA) で NVIDIA*
P100 の CUDA* パフォーマンスに匹敵する (5% 以内) 強力なパフォーマンスを達成

oneAPI

EasyWave 津波シミュレーション・アプリケーションのビジュアライゼーション
出典: Zuse Institute Berlin (ZIB)
インテルは、サードパーティーのデータについて管理や監査を行っていません。ほかの情報も参考にして、正確かどうかを評価してください。

10

16

oneAPI を利用可能

インテル® DevCloud
インテル® oneAPI ソフトウェアを使用して、さまざまなインテルの CPU、GPU、FPGAのワークロードを開発、テスト、実行できる
開発サンドボックス

DevCloud
1 分でコード生成
ハードウェアの取得不要
ダウンロード、インストール、設定不要

数秒で起動して実行可能

サンプルとチュートリアルに簡単にアクセス可能

software.intel.com/devcloud/oneapi (英語)Jupyter* Notebook、Visual Studio* コードをサポート

17

エコシステムの採用とサポート
トレーニング

アカデミック

コミュニティー

オンラインウェビナー (英語) およびコース、
デベロッパー・ガイド、サンプルコード

oneAPI 研究拠点: 研究、コードの有効化、カリキュラム、教育

oneAPI オープン仕様、インテル® DevMesh
イノベーター、コミュニティー・サポート・フォーラム

サミットおよびワークロード

業界のエキスパート

インテル® DevCloud

ライブおよびオンデマンド仮想ワークショップ、
コミュニティー主導のセッション

世界中の主要なテクニカル・トレーニング
会社によるトレーニング

最先端のソフトウェアとハードウェア
インテル® oneAPI ツールキット + 最新のインテル® Xeon®
プロセッサー、GPU (統合およびディスクリート)、FPGA

18

oneAPI リソース (英語)software.intel.com/oneapi
oneAPI 入門

業界イニシアチブ▪ software.intel.com/oneapi▪ トレーニング▪ ドキュメント▪ コードサンプル▪ oneAPI.com▪ oneAPI 業界仕様
▪ オープンソースの実装

エコシステム▪ コミュニティー・フォーラム▪ アカデミック・プログラム▪ インテル® DevMesh イノベーター・プロジェクト

19インテル® oneAPI ツールキットの詳細
インテル® oneAPI ベース・ツールキット

インテル® ソフトウェア製品のパフォーマンスおよび最適化に関する注意事項については、software.intel.com/articles/optimization-notice#opt-jp を参照してください。
© Intel Corporation. 無断での引用、転載を禁じます。
* その他の社名、製品名などは、一般に各社の表示、商標または登録商標です。

20

インテル® oneAPI
ベース・ツールキット
データセントリックなワークロードを高速化
インテルの CPU、GPU、FPGA でハイパフォーマンス
なアプリケーションを開発するための基本ツールとライブラリーの基本セット

対象ユーザー▪

さまざまな業界の広範な開発者▪

アドオン・ツールキットのユーザー (これはすべてのツール
キットの基本となるため)

主な特徴/利点▪

データ並列 C++ コンパイラー、ライブラリー、解析ツール▪

CUDA* で記述された既存のコードからの移行を支援する
DPC++ 互換性ツール▪

高速化された scikit-learn、NumPy*、SciPy* ライブラ
リーを含む Python* ディストリビューション

▪

スレッド化、数学、データ・アナリティクス、ディープラーニ
ング、ビデオ/画像/信号処理向けに最適化されたパフォー
マンス・ライブラリー

詳細: intel.com/oneAPI-BaseKit (英語)インテル® oneAPI ベース・ツールキット
ダイレクト・プログラミング
インテル® oneAPI DPC++/C++
コンパイラーインテル® DPC++ 互換性ツール

API ベースのプログラミング
インテル® oneAPI DPC++
ライブラリー(インテル® oneDPL)

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

解析/デバッグツール
インテル® VTune™
プロファイラーインテル® Advisor(インテル® oneMKL)

Python* 向けインテル®
ディストリビューション
oneAPI ベース・ツールキット用
インテル® FPGA アドオン

インテル® oneAPI データ・
アナリティクス・ライブラリー(インテル® oneDAL)

GDB 向けインテル®
ディストリビューション

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

インテル® oneAPI ビデオ・
プロセシング・ライブラリー(インテル® oneVPL)

インテル® oneAPI コレクティブ・
コミュニケーション・ライブラリー(インテル® oneCCL)

インテル® oneAPI ディープ・ニュー
ラル・ネットワーク・ライブラリー(インテル® oneDNN)

インテル® インテグレーテッド・
パフォーマンス・プリミティブ インテル® IPP

21

インテル® oneAPI
DPC++/C++ コンパイラー
並列プログラミングの生産性とパフォーマンスを向上
oneAPI DPC++/C++ コンパイラーとランタイム

CPU とアクセラレーターに妥協のない並列プログラミングの生産性とパフォーマンスを提供するコンパイラー

DPC++ ソースコード▪

ターゲット・ハードウェア間でコードの再利用が可能、特定のアクセラレーター向けのカスタム・チューニングを行うことが可能

Clang/LLVM▪

単一アーキテクチャー専用の言語に代わる、オープンな業界全体の代替手段

DPC++ は ISO C++ および Khronos SYCL* ベース▪

C++ の生産性の利点を提供、一般的で使い慣れた C および C++ 構造を使用▪

The Khronos Group の SYCL* を継承し、データ並列処理とヘテロジニアス・プログ
ラミングをサポート

インテルの数十年にわたるアーキテクチャーとハイパフォー
マンス・コンパイラーの経験を基に構築

現時点では各アーキテクチャー向けにチューニングする必要があります

DPC++ ランタイム

CPU

GPU

FPGA

22

23

インテル® DPC++ 互換性ツール
コードの移行時間を最小化

すでに CUDA* で記述されているコー
ドを DPC++ に移行する開発者を支援、可能な場合は人間が解読可能なコードを生成インテル® DPC++ 互換性ツールの使用フロー

80-90% を変換

通常はコードの 80-90% を自動的に移行
開発者がアプリケーションの移植を完了できるように支援するインラインコメ
ントを提供

コーディングを完了して目的のパフォーマンス
にチューニング

インラインコメント付きの人間が解読可能な
DPC++ コード

開発者の CUDA*
ソースコード互換性ツールDPC++
ソースコード23

インテル® oneAPI DPC++ ライブラリー
インテルの CPU、GPU、FPGA 上で DPC++ カーネルを高速化

最適化された C++ 標準アルゴリズム
さまざまなハードウェア上での効率的なアプリケーション開発とデプロイメントのために 75 の並列化された C++17 アルゴリズムとユーティリティーを含む

C++ 開発者がすでに利用している並列ライブラリーがベース
簡単に開発者が採用できるように一般的なライブラリー Parallel STL および Boost.Compute を含む

インテル® DPC++ 互換性ツールと統合
すべての oneAPI DPC++ コンポーネントを補完して開発者の CUDA* コードから DPC++ コードへの移行を単純化

24インテル® oneAPI ディープ・ニューラル・ネットワーク・
ライブラリー
ハイパフォーマンスなディープラーニングを実現
開発者がハイパフォーマンスなディープラーニ
ング・フレームワークを作成できるように支援
命令セットとパフォーマンス最適化の複雑さを抽象化
インテルの CPU と GPU で同じ API を利用して、ジョブに最適なテクノロジーを使用

Linux*、Windows* をサポート
オープンソース化によりコミュニティーに貢献

25

インテル® oneAPI ビデオ・プロセシング・ライブラリー
メディア・パフォーマンスを向上

ハードウェア・アクセラレーション・コーデックお
よびインテルの CPU と GPU のプログラム可能なグラフィックスによりメディアとビデオ・ア
プリケーションのパフォーマンスを向上
CPU と GPU で同様に機能するシンプルな API
API を使用して開発者はコーデックのビジュア
ルな品質とパフォーマンスを完全に制御可能

26

インテル® oneAPI コレクティブ・コミュニケーション・
ライブラリー
ディープラーニング・
フレームワーク

通信パターンを最適化

インテル® oneCCL API
インテル® oneCCL

複数のノードでの分散モデル・トレーニングのためにインテルの CPU と GPU 向けにハイパフォーマンス
な最適化された通信パターンを提供

OFI
API

インテル® ソフトウェア

MPI 集合 API
サードパーティーのソフトウェア

OFI
API

ハードウェアインテル® Omni-Path アーキテクチャー (インテル®
OPA)、InfiniBand*、イーサネットなど、多くのインターコネクトを透過的にサポート
低レベルの通信ミドルウェア上に構築された MPIと libfabrics
ディープラーニングのトレーニングに使用される処理 (all-gather、all-reduce、reduce-scatter) の効率的な実装が可能

インテル® oneCCL

SPIR-V/
Level0インテル® MPI
ライブラリー

API/制御データ

libfabric

DPC++ ランタイム(Open Fabrics Interface)

ドライバー
/カーネル

EFA
ドライバー

ハードウェア

EFA

Verbs

RoCE

iWarp

psm2

ソケット

InfiniBand*

イーサ
ネット

インテル®
OPA

ドライバー

GPU

ネット
ワーク

27

インテル® VTune™ プロファイラー
DPC++ プロファイル - CPU、GPU、FPGA 向けにチューニング

データ並列 C++ (DPC++) の解析
最も多くの時間を費やしている DPC++ の行を確認

インテルの GPU、CPU、FPGA 向けのチューニング
サポートしているハードウェア・アクセラレーター向けに最適化

オフロードの最適化
OpenMP* オフロードのパフォーマンスをチューニング

広範なパフォーマンス・プロファイル
CPU、GPU、FPGA、スレッド、メモリー、キャッシュ、ストレージなど

一般的な言語をサポート
DPC++、C、C++、Fortran、Python*、Go*、Java*、混在

現時点では各アーキテクチャー向けにチューニングする必要があります28インテル® Advisor
最新ハードウェア向けの設計を支援
オフロード・アドバイザー
アクセラレーターにオフロードした際のパフォーマンスを推定

ルーフライン解析
CPU/GPU コードの計算とメモリーを最適化

ベクトル化アドバイザー
ベクトル化とその最適化

スレッド化アドバイザー
スレッド化されていないアプリケーションに効率的なスレッド化を追加

フローグラフ・アナライザー
効率的なフローグラフを作成して解析

現時点では各アーキテクチャー向けにチューニングする必要があります29

GDB 向けインテル® ディストリビューション
DPC++ デバッグ - ヘテロジニアス・アプリケーションのデバッグ

高水準言語のデバッグをサポート

さまざまなアクセラレーターをサポート:
インテルの CPU、GPU、FPGA のエミュ
レーション
アプリケーションの実行中にアクセラレー
ターのアーキテクチャーを自動検出
GDB ベースの独自仕様でないオープン
ソースのソリューション

30

oneAPI による FPGA 開発
空間アーキテクチャーの DPC++ コーディング
経験豊富な FPGA 開発者向け

使いやすさ
経験豊富な FPGA ユーザーはデータ並列 C++ を使用して合理化されたプログラミング・
モデルを活用できる

ダイレクト・プログラミング
データ並列 C++

リアルタイム処理
決定性のある低レイテンシーと高スループットでデータを高速に処理

CPU にエミュレーション

機能の
反復処理

レポートの生成

アーキテク
チャーの
反復処理

ランタイム解析のサポート
インテル® VTune™ プロファイラーを使用してランタイムにプロファイル・データを収集し、CPU と FPGA のインタラクションを解析

デバイス固有の最適化
経験豊富な FPGA 開発者向けに、FPGA 向けに oneAPI コードの最適化を開始する 1 日のトレーニング・クラスを提供

FPGA ビットストリームの生成

カスタム・ソリューション

31

特殊なワークロード向けのドメイン固有のアドオン・ツールキット

32

HPC 向けインテル® oneAPI ツール

インテル® oneAPI
HPC ツールキット
スケーラブルで高速なアプリケーションを実現

ツールキットの概要
C++、Fortran、OpenMP* および MPI でエンタープライズ、
クラウド、HPC、AI 向けのハイパフォーマンスでスケーラブ
ルな並列アプリケーションを開発するためにインテル®
oneAPI ベース・ツールキットに追加するツールキット

インテル®
ベース &
HPC ツール
ツールキットHPC oneAPI
向けインテル®
oneAPI
ダイレクト・プログラミング

API ベースのプログラミング

解析/デバッグツール

インテル® C++ コンパイラー・クラシック

インテル® MPI ライブラリー

インテル® Inspector

インテル® Fortran コンパイラー・クラシック

インテル® oneAPI DPC++
ライブラリー

ベータ版インテル® Fortran
コンパイラー

OEM/ISV▪

C++、Fortran、OpenMP*、MPI 開発者

ツールキットの重要性▪

▪

インテル® Xeon® プロセッサー、インテル® Core™ プロ
セッサーおよびインテル® アクセラレーターのパフォー
マンスを向上
少ない労力で、高速かつ安定した、スケーラブルな業界標準の並列コードを作成

詳細: intel.com/oneAPI-HPCKit (英語)インテル® oneAPI マス・
カーネル・ライブラリー

インテル® Cluster Checker(インテル® oneMKL)

インテル® oneAPI DPC++/C++
コンパイラーインテル® oneAPI データ・
アナリティクス・ライブラリー

インテル® DPC++ 互換性ツール

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

対象ユーザー▪

(インテル® oneDPL)

インテル® Trace Analyzer &Collector(インテル® oneDAL)

インテル® VTune™
プロファイラーインテル® Advisor(インテル® oneTBB)

Python* 向けインテル®
ディストリビューション
oneAPI ベース・ツールキット用
インテル® FPGA アドオン

インテル® oneAPI ビデオ・
プロセシング・ライブラリー(インテル® oneVPL)

GDB 向けインテル®
ディストリビューション

インテル® oneAPI コレクティブ・
コミュニケーション・ライブラリー(インテル® oneCCL)

インテル® oneAPI ディープ・ニュー
ラル・ネットワーク・ライブラリー(インテル® oneDNN)
インテル® oneAPI HPC ツールキット +インテル® oneAPI ベース・ツールキット

インテル® インテグレーテッド・
パフォーマンス・プリミティブ(インテル® IPP)

特殊なワークロード向けのドメイン固有のアドオン・ツールキットに戻る

33

IoT 向けインテル® oneAPI ツール

インテル® IoT
ツールキットネットワークのエッジで動作するスマート・コネクテッ
ド・デバイス向け IoT アプリケーションの開発を高速化するために開発者が必要なものを提供

対象ユーザー
インテルの CPU、GPU、FPGA 上で動作する信頼性の高い
IoT デバイスを作成する広範なアプリケーション開発者

主な特徴/利点▪ 最適化されたコンパイラーとライブラリーを使用してインテル® アーキテクチャー・ベースのプラットフォームの多くのコアとビルトイン・テクノロジーを活用▪ IoT 接続ツールを利用してセンサーとデバイス、デバイ
スとクラウドを簡単に接続▪ Yocto Project* プラットフォーム・プロジェクトの開発と保守を高速化▪ スレッド化、メモリー、オフロードの最適化の可能性を見つける強力な解析ツールを使用して信頼できる開発が可能▪ CUDA* で記述された既存のコードからの移行を支援
する DPC++ 互換性ツール

詳細: intel.com/oneAPI-IoTKit (英語)

IoT
開発向けインテル®
oneAPI
ツール
HPC
向けインテル® oneAPI
ツール
ダイレクト・プログラミング

API ベースのプログラミング

解析/デバッグツール

インテル® C++ コンパイラー・
クラシック

IoT 接続ツール

インテル® Inspector

Eclipse* IDEインテル® oneAPI DPC++
ライブラリー(インテル® oneDPL)

Linux* カーネル・ビルド・ツール

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

インテル® VTune™
プロファイラーインテル® Advisor(インテル® oneMKL)

インテル® oneAPI DPC++/C++
コンパイラーインテル® oneAPI データ・
アナリティクス・ライブラリー

インテル® DPC++ 互換性ツール

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

GDB 向けインテル®
ディストリビューション

(インテル® oneTBB)

Python* 向けインテル®
ディストリビューション
oneAPI ベース・ツールキット用
インテル® FPGA アドオン

インテル® oneAPI ビデオ・
プロセシング・ライブラリー(インテル® oneVPL)

インテル® oneAPI コレクティブ・
コミュニケーション・ライブラリー(インテル® oneCCL)

インテル® oneAPI ディープ・ニュー
ラル・ネットワーク・ライブラリー(インテル® oneDNN)
インテル® oneAPI IoT ツールキット +インテル® oneAPI ベース・ツールキット +インテル® インテグレーテッド・
パフォーマンス・プリミティブ(インテル® IPP)

特殊なワークロード向けのドメイン固有のアドオン・ツールキットに戻る

34

最高の忠実度でビジョンをレンダリング

インテル® oneAPI レン
ダリング・ツールキット

インテル® oneAPI レンダリング/レイトレーシング・ライブラリー
インテル® Embree
ハイパフォーマンスで機能が豊富なレイトレーシン
グと写実的なレンダリング

高忠実度のビジュアライゼーション・アプリ
ケーション向けの強力なライブラリー▪

インテル® アーキテクチャー上でパフォーマンスと忠実度に優れたビジュアライゼーション・アプリケーションを作成▪

グローバル・イルミネーションに対応したレイトレーシングにより、驚くほどの視覚効果がある、超現実的なレンダリングを作成▪

すべてのシステムメモリー空間にアクセスし、最大のデータセットを使用してレンダリングを作成▪

オープンソース・ライブラリーを使用した、
柔軟性と費用対効果に優れたデプロイメント

1

インテル® Open Image Denoise
優れたビジュアル品質のために AI で高速化された
デノイザー

2

インテル® OpenSWR
ハイパフォーマンスで、スケーラブルな、OpenGL*
互換のラスタライザー

3

インテル® オープン・ボリューム・
カーネル・ライブラリー
3D 空間データ処理のレンダリングとシミュレーション

4

インテル® OSPRay
スケーラブルで、移植可能な、分散レンダリング API

インテル® OSPRay Studio
この新しいシーン・グラフ・アプリケーションを使用したグラフィカル・ユーザー・インターフェイスによるリアルタイム・レンダリング

インテル® OSPRay for Hydra
プラグインによりレンダリング・ツールキットのライ
ブラリーから Universal Scene Description Hydra
レンダリング・サブシステムに接続

5

1 Avengers: Infinity War - デジタル・ドメイン、マーベル・スタジオ、Chaos Group V-Ray
2 シーン出典: Frank Meinl

3 ウィスコンシン大学の Leigh Orf のモデル、竜巻のビジュアライゼーションの詳細は Leigh Orf のサイトを参照
4 煙のシミュレーション、データ提供: OpenVDB サンプル・リポジトリー

5 モアナ島のシーン、ウォルト・ディズニー・アニメーション・スタジオ、公開されているデータセット: 15fps+、~1,600 億 prim

詳細: intel.com/oneAPI-RenderKit (英語)

特殊なワークロード向けのドメイン固有のアドオン・ツールキットに戻る

35

インテル® AI アナリティクス・ツールキット(oneAPI 対応)

ディープラーニング

データ解析/マシンラーニング
高速化されたデータフレーム

インテル® Optimization for
TensorFlow*

インテル® アーキテクチャー向けに最適化されたライブラリーを使用してエンドツーエンドの AI とデータ・アナリティクス・パイプラインを高速化

対象ユーザーインテル® ディストリビューション
の Modinインテル® Optimization for
PyTorch*Python* 向けインテル® ディストリビューション

インテル® Low Precision
Optimization Tool

XGBoostscikit-learn

Daal-4Py

Model Zoo for Intel®
Architecture

NumPy*

SciPy*

pandas

データ・サイエンティスト、AI 研究者、マシンラーニングおよび
ディープラーニング開発者、AI アプリケーション開発者

サンプルとエンドツーエンド・ワークロード
CPU

主な特徴/利点▪

▪

インテルにより最適化された DL フレームワークとツール
によりディープラーニングのトレーニングと推論のパフォー
マンスを向上計算集約型の Python* パッケージを使用したデータ・アナ
リティクスとマシンラーニング・ワークフローの高速化を実現

詳細: software.intel.com/oneapi/ai-kit (英語)OmniSci バックエンド

GPU

サポートしているハードウェア・アーキテクチャー1
1 ハードウェアのサポートは個々のツールにより異なります。アーキテクチャーのサポートは、今後も拡張される予定です。

* その他の社名、製品名などは、一般に各社の表示、商標または登録商標です。

ここまたは以下からツールキットを入手できます (英語)
インテルのインストーラーDocker*apt、yum

conda

インテル®
DevCloud

特殊なワークロード向けのドメイン固有のアドオン・ツールキットに戻る

36
36

インテル® ディストリビューションのOpenVINO™ ツールキット (oneAPI 対応)
ハイパフォーマンスなディープラーニン
グ推論を提供エッジからクラウドのビジョン/AI アプリケーションで使用されるハイパフォーマンスなディープラーニング推論とコン
ピューター・ビジョンの開発を高速化するツールキットで、ハードウェア・アクセラレーターでのディープラーニングやインテルの CPU、GPU、FPGA、VPU へのデプロイメントが可能です。

インテル® ディストリビューションの OpenVINO™ ツールキット
ディープラーニング

従来のコンピューター・ビジョン

インテル® ディープラーニング・デプロイメント・ツールキット

最適化されたライブラリーとコードサンプル

推論エンジン

モデル・オプティマイザー
変換および最適化

対象ユーザー

IR

最適化された推論

OpenCV*OpenVX*

サンプル

インテルの CPU と GPU/インテル® プロセッサー・グラフィックス

IR = 中間表現ファイル▪

コンピューター・ビジョン、ディープラーニング・ソフトウェ
ア開発者▪

データ・サイエンティスト▪

OEM、ISV、システム・インテグレーター

使用法

ツールとライブラリー

Open Model Zoo

40 以上の事前トレー
ニング済みモデルサンプル

モデル・ダウン
ローダー

メディア/ビデオ/グラフィックス・パフォーマンスを向上
インテル® メディア SDK
オープンソース・バージョン

OpenCL* ドライバーとランタイム

GPU/インテル® プロセッサー・グラフィックス

ディープラーニング・ワークベンチ

セキュリティー監視、ロボット工学、小売、医療、AI、オフィス・
オートメーション、交通、非ビジョン・ユースケース (音声、NLP、オーディオ、テキスト) など

インテル® FPGA の最適化 (Linux* のみ)
モデル・
キャリブレー
ベンチマーク・ション・ツール アナライザー アプリケーション

精度
チェッカー

補助機能

FPGA ランタイム環境(インテル® FPGA SDK for
OpenCL*)

ビットストリーム

エッジ AI とビジョン・アライアンス
インテル® ソフトウェア製品のパフォーマンスおよび最適化に関する注意事項については、software.intel.com/articles/optimization-notice#opt-jp を参照してください。
特殊なワークロード向けのドメイン固有のアドオン・ツールキットに戻る© Intel Corporation. 無断での引用、転載を禁じます。
* その他の社名、製品名などは、一般に各社の表示、商標または登録商標です。

37

インテル® Parallel
Studio XE 製品の移行
現在提供されているすべてのコンポーネント
は、インテル® oneAPI ツールキットとともに新しいコンポーネントとして提供されます▪

プライオリティー・サポートは中断することなく継続されます▪

インテル® Parallel Studio XE からインテル® oneAPI
ツールキットへの移行の目標は、ユーザーができるだけスムーズに移行できるようにすることです▪

▪

既存のユーザーは、インテル® Parallel Studio XE の次のリリースのようにインテル® oneAPI ベース & HPC
ツールキットを入手できますインテル® ソフトウェア開発ツールへのユーザーの投資を保護および拡張します

HPC
向けインテル® oneAPI
ツール
HPC 向けインテル®
oneAPI ツール
ダイレクト・プログラミング

API ベースのプログラミング

解析/デバッグツール

ベータ版インテル® Fortran
コンパイラーインテル® MPI ライブラリー

インテル® Inspector

インテル® Fortran コンパイラー・クラシック
インテル® C++ コンパイラー・クラシック

インテル® oneAPI DPC++
ライブラリー(インテル® oneDPL)

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

インテル® Trace Analyzer &Collector
インテル® Cluster Checker(インテル® oneMKL)

インテル® oneAPI DPC++/C++
コンパイラーインテル® oneAPI データ・
アナリティクス・ライブラリー

インテル® DPC++ 互換性ツール

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

インテル® VTune™
プロファイラーインテル® Advisor(インテル® oneTBB)

Python* 向けインテル®
ディストリビューション
oneAPI ベース・ツールキット用
インテル® FPGA アドオン

新しいコンポーネント
インテル® Parallel Studio XE のコンポーネントインテル® oneAPI HPC ツールキット +インテル® oneAPI ベース・ツールキット +インテル® oneAPI ビデオ・
プロセシング・ライブラリー(インテル® oneVPL)

GDB 向けインテル®
ディストリビューション

インテル® oneAPI コレクティブ・
コミュニケーション・ライブラリー(インテル® oneCCL)

インテル® oneAPI ディープ・ニュー
ラル・ネットワーク・ライブラリー(インテル® oneDNN)
インテル® インテグレーテッド・
パフォーマンス・プリミティブ(インテル® IPP)

38

インテル® oneAPI ソフトウェア製品の日本語サポート▪ インテル® Parallel Studio XE に含まれるインテル®
C++ コンパイラーとインテル® Visual Fortran コン
パイラーは、日本語メッセージをサポートしていまし
たが、インテル® oneAPI ベースツール・キットとインテル® oneAPI HPC ツールキットに含まれるコンパ
イラーは、日本語メッセージをサポートしていません▪ クラッシック・コンパイラーは、UTF-8 以外(codepage932 など) のファイル形式をコンパイルできましたが、インテル® oneAPI ベースツール・キットとインテル® oneAPI HPC ツールキットに含まれるコ
ンパイラーは UTF-8 形式のファイルのみを受け入れますIntel Confidential

39

oneAPI 向けの日本語リソース
iSUS では最新の oneAPI 関連の情報、記事、トレー
ニングを提供しています▪ インテル® Advisor 2021 およびインテル® VTume™ プロファイラー 2021 向けの日本語パッケージの提供を予定しています▪ oneAPI 仕様バージョン 1.0 の日本語参考訳の提供を予定しています▪ 2021 年は oneAPI 向けの各種オンライン・トレー
ニングの開催を予定しています

40

まとめ
▪ 多様なワークロードによりヘテロジニアス計算アーキテ
クチャーの必要性が高まっているにも関わらず、アーキテ
クチャーごとに個別のプログラミング・モデルが必要です▪ oneAPI クロスアーキテクチャー・プログラミング・モデル
は選択の自由を提供します。次のハードウェア・プラット
フォーム向けのソフトウェア変更ではなく、次のイノベー
ションにスキルを活用できます▪ インテル® oneAPI 製品は、インテルの CPU、GPU、FPGAのパフォーマンスを最大限に引き出して、高速化された計算を活用します▪ 既存のパフォーマンス・プログラミング・モデルと相互運用可能な、クロスアーキテクチャー・ライブラリーと高度なツールの完全なセットを使用して、開発を迅速かつ効率的に行うことができます41法務上の注意書き
本資料には、開発中の製品、サービス、およびプロセスについての情報が含まれています。ここに記載されているすべての情報は、予告なく変更されることがあります。インテルの最新の製品仕様およびロー
ドマップをご希望の方は、インテルの担当者までお問い合わせください。
本資料で説明されている製品およびサービスには、エラッタと呼ばれる設計上の不具合が含まれている可能性があり、公表されている仕様とは異なる動作をする場合があります。現在確認済みのエラッタについては、インテルまでお問い合わせください。 絶対的なセキュリティーを提供できる製品またはコンポーネントはありません。インテル® テクノロジーの機能と利点はシステム構成によって異なり、対応するハードウェアやソフトウェア、またはサービスの有効化が必要となる場合があります。詳細については、OEM または販売店にお問い合わせいただくか、http://www.intel.co.jp/ を参照してください。

性能に関するテストに使用されるソフトウェアとワークロードは、性能がインテル® マイクロプロセッサー用に最適化されていることがあります。SYSmark* や MobileMark* などの性能テストは、特定のコンピューター・システム、コンポーネント、ソフトウェア、操作、機能に基づいて行ったものです。結果はこれらの要因によって異なります。製品の購入を検討される場合は、他の製品と組み合わせた場合の本製品の性能など、ほかの情報や性能テストも参考にして、パフォーマンスを総合的に評価することをお勧めします。 さらに詳しい情報をお知りになりたい場合は、http://www.intel.com/benchmarks/ (英語)を参照してください。
本資料に掲載されている情報は、現状のまま提供されます。本資料は、明示されているか否かにかかわらず、また禁反言によるとよらずにかかわらず、いかなる知的財産権のライセンスも許諾するものではありません。製品に付属の売買契約書『Intel's Terms and Conditions of Sale』に規定されている場合を除き、インテルはいかなる責任を負うものではなく、またインテル製品の販売や使用に関する明示または黙示の保証 (特定目的への適合性、商品適格性、あらゆる特許権、著作権、その他知的財産権の非侵害性への保証を含む) に関してもいかなる責任も負いません。
© Intel Corporation. 無断での引用、転載を禁じます。Intel、インテル、Intel ロゴ、Intel Inside、Intel Inside ロゴ、Intel Agilex、Arria、Intel Atom、Intel Core、Stratix、Xeon、OpenVINO、VTune は、
アメリカ合衆国および / またはその他の国における Intel Corporation またはその子会社の商標です。
最適化に関する注意事項
インテル® コンパイラーでは、インテル® マイクロプロセッサーに限定されない最適化に関して、他社製マイクロプロセッサー用に同等の最適化を行えないことがあります。これには、インテル® ストリーミン
グ SIMD 拡張命令 2 (インテル® SSE2)、インテル® ストリーミング SIMD 拡張命令 3 (インテル® SSE3)、ストリーミング SIMD 拡張命令 3 補足命令 (SSSE3) 命令セットに関連する最適化およびその他の最適化が含まれます。インテルは、他社製マイクロプロセッサーに関して、いかなる最適化の利用、機能、または効果も保証いたしません。本製品のマイクロプロセッサー依存の最適化は、インテル® マイクロプロセッサーでの使用を前提としています。インテル® マイクロアーキテクチャーに限定されない最適化のなかにも、インテル® マイクロプロセッサー用のものがあります。この注意事項で言及した命令セッ
トの詳細については、該当する製品のユーザー・リファレンス・ガイドを参照してください。
注意事項の改訂 #20110804

インテル® ソフトウェア製品のパフォーマンスおよび最適化に関する注意事項については、software.intel.com/articles/optimization-notice#opt-jp を参照してください。
特殊なワークロード向けのドメイン固有のアドオン・ツールキットに戻る© Intel Corporation. 無断での引用、転載を禁じます。
* その他の社名、製品名などは、一般に各社の表示、商標または登録商標です。

42

補足資料

43

インテル® oneAPI ツールについてのコメント (敬称略)「インテル® oneAPI データ・アナリティクス・ライブラリー (インテル® oneDAL) とインテル® AI アナリティクス・ツールキットを Allegro
Trains に統合することで、Allegro AI のパフォーマンスが向上し、クラウド・インスタンスの使用が最適化されました。」
CEO Moses Guttmann「従来 CPU や GPU に実装されてきた一部のアプリケーション・コードは、実際には FPGA で効率良く実行されます。これまで、これらのアプ
リケーションを FPGA に移植するには専門のハードウェア・プログラマーが必要であったため、大規模な投資が必要でした。oneAPI は、
インテル® Stratix® 10 およびインテル® Agilex™ FPGA アクセラレーターをサポートする統合ソフトウェア・プログラミング・モデルの導入という、歓迎すべきイニシアチブです。oneAPI は、ソフトウェア指向のユーザーに FPGA の魅力的なメリットをもたらすでしょう。」
BittWare – a Molex company マーケティング担当副社長 Craig Petrie「C++ からの学習に必要な期間の短さ、マイナーなコードの相違、および共通のコードベースにより、最先端のインテル® oneAPI テクノロジー
は、異なるアーキテクチャーでのプログラミングの壁を軽減します。これにより、HPC クラスターのすべての計算能力を最大限に活用することができます。」
社長 Khaled Elamrawi - InsideHPC の記事 (英語) | ホワイトペーパー (英語)「インテルとのコラボレーションおよびインテル® oneAPI HPC ツールキットの利用は、カスタマーエンジニアがユーザーの HPC ワークロー
ドと GCP インスタンスのパフォーマンスを深く理解するのに役立ちました。最高のパフォーマンスを得るにはインテル® MPI ライブラリーを、
パフォーマンスの最適化とワークロードをクラウドに移行する最適な方法を理解するにはインテル® VTune™ プロファイラーやインテル®
Advisor などのツールを、それぞれ使用することを推奨します。」
Google HPCソリューション・リード Ilias Katsardis

Universidad De Malaga「ヘテロジニアス・スケジューラーの TBB+OpenCL* 実装と oneTBB+oneAPI 実装を比較したところ、oneAPI バージョンではプログラミン
グにかかる労力が最大で 5 分の 1 になり、3-8% のオーバーヘッドしか発生しないことを確認しました。」
Rafael Asenjo 博士 - インテル® oneAPI ツールキットによりロボットでのマシンラーニング・アルゴリズムのプログラミングが容易に (英語)「インテル® DPC++ 互換性ツールは、CPU、GPU、FPGA で実行する津波シミュレーション・コード EasyWave の DPC++ バージョンへの移植作業に大いに役立ちました。」
スーパーコンピューティング部門責任者 Thomas Steinke 博士Intel Confidential

44メモリーエラーとスレッドのデバッグ

インテル® Inspector
信頼性の高いアプリケーションを作成
正当性検証ツールにより ROI が 12%-21% 向上1▪

早期に問題を発見したほうが修正コストが少なくて済む▪

競合やデッドロックは簡単に再現できない▪

メモリーエラーをツールなしで発見するのは困難

デバッガー・ブレークポイントにより迅速な診断が可能▪

問題が発生する直前にブレークポイントを設定▪

デバッガーで変数とスレッドを確認

パーシステント・メモリー・エラーをデバッグ
不足しているキャッシュフラッシュ、ストアフェンスなど

詳細: xlsoft.com/jp/products/intel/inspector/
1 コスト要因 - Square Project による分析 - CERT: U.S. Computer Emergency Readiness Team および Carnegie Mellon CyLab NIST: National Institute of Standards & Technology: Square Project の結果

45

インテル® oneAPI ツールキットの新機能
2019 年 11 月のベータリリース以降の主な機能の更新: インテル® oneAPI の更新 (英語) および製品のリリースノート (英語) を参照
インテル® oneAPI 製品: パフォーマンス、機能、安定性を全面的に向上 - インテルの CPU-GPU
システムのサポートを強化▪

DPC++ - 言語の簡潔さを向上、統合共有メモリー・プログラミングのサポートを拡大▪

インテル® oneAPI ライブラリー - 新しく強化された GPU 機能およびその他の機能: 行列乗算、マシン
ラーニング、コーデック▪

インテル® Advisor - 解析機能を向上▪

インテル® VTune™ プロファイラー - 解析機能を向上、GPU パフォーマンス・メトリックを追加、インテル®
GPU (Gen9 および Gen11 統合 GPU、プレリリースの Gen12 統合 GPU とディスクリート GPU) をサ
ポート、GPU メモリー階層ダイアグラムを向上、DPC++ と OpenMP* 両方のオフロードコストをプロファ
イルしてパフォーマンスが低下するメモリー転送を検出▪

インテル® MPI ライブラリー - インテル® Xe アーキテクチャー・デバイスの GPU ピニングを初期サポート
し、Mellanox ConnectX* サポートを拡張

インテル® DPC++/C++ コンパイラー - パフォーマンスを向上、混在言語開発のサポートを向上(DPC++/OpenMP* 相互運用性、OpenMP* 5.0/Fortran 構造)、インライン CPU アセンブリーとGPU 仮想命令セットコードを混在可能

インテル® DPC++ 互換性ツール - CUDA* の数学、テクスチャー、および並列ライブラリー呼び出
しの移行を向上インテル® oneAPI レンダリング・ツールキット - インテル® オープン・ボリューム・カーネル・ライブ
ラリー、VDB ボリュームをサポートする新しいレンダリング機能、新しいジオメトリー、新しい光源を追加、事前トレーニング済みのモデルを使用してノイズ除去のフィルターモデルを再トレーニン
グする機能を含む
インテル® AI アナリティクス・ツールキット - Model Zoo、DBSCAN および SVM アルゴリズムのGPU サポート、scikit-learn アルゴリズムの CPU 最適化、TensorFlow* での bfloat16 データ型のサポート、ハイパフォーマンス PyTorch* 向け torchvision、ハイパフォーマンス pandas* 向け
インテル® Scalable Dataframe Compiler を追加▪
▪

インテル® ディストリビューションの Modin と完全な機能互換性を保持しつつ、pandas* API の 95% を並列化します。
SYCL* とインテル® GPU サポートにより高速化されたネイティブ・ライブラリーと NumPy* 形式の APIである Data Parallel NumPy* (dpnp) の初期リリースは、Python* の数学コードを高速化します。

インテル® System Debugger - ターゲット接続アシスタントおよびシステム TraceCLI 設定サ
ポートを拡張、システム・デバッグ・サンプルを追加
新しいコードサンプルと拡張されたコードサンプルを追加

FPGA のサポートを強化▪ インテル® oneAPI DPC++ コンパイラー、インテル® oneAPI DPC++ ライブラリー、インテル®
Advisor、インテル® VTune™ プロファイラー、インテルにより最適化された GDB デバッガーでインテル® Stratix® 10 FPGA のサポートを追加▪ インテル® VTune™ プロファイラーの FPGA パフォーマンス解析ワークフローが簡単に

46

Codeplay が発表

NVIDIA* GPU 向けデータ並列 C++ コンパイラー▪ 開発者は単一のソースベースから NVIDIA* とインテルの計算アクセラレーター間でコードを再利用できるようにな
りました▪ Codeplay は oneAPI 仕様に基づく開発者ツールを実装した最初の oneAPI 業界の貢献者です▪ Codeplay はインテルが確立した DPC++ LLVM ベースのオープンソース・プロジェクトを活用しました

その他のニュース
Codeplay が業界標準の数値演算ライブラリー
で NVIDIA* GPU をサポート (英語)
インテルが oneAPIマス・カーネル・ライブラリーのインターフェイスをオープンソース化 (英語)▪ Codeplay は DPC++ がベースにしている Khronos
SYCL* 標準の主要な役割を担っています▪ 詳細: Codeplay のブログ (英語)インテル® ソフトウェア製品のパフォーマンスおよび最適化に関する注意事項については、software.intel.com/articles/optimization-notice#opt-jp を参照してください。
© Intel Corporation. 無断での引用、転載を禁じます。
* その他の社名、製品名などは、一般に各社の表示、商標または登録商標です。

47

oneAPI
エコシステムの 2020 年のニュース
詳細: oneAPI.com (英語)

9 月30 日インテルとハイデルベルク大学が Radeon* GPU を AI でサポートするために協力 (英語)

9 月 28 日 - インテル® oneAPI 1.0 がリリース (英語)
6 月 30 日
SYCL* 2020 暫定仕様にデータ並列 C++ からの貢献が含まれる (英語)

6 月 24 日 - TensorFlow* が oneAPI 業界イニシアチブをサポート (英語)
6 月 21 日
ストックホルム大学が oneAPI 研究拠点の設立を発表 (英語)oneAPI 仕様が .85 に (英語)

5 月 15 日

oneAPI プログラミングによる時間とコストの節約に関する新しい調査報告
J.Gold Associates の報告書、oneAPI: ヘテロジニアス・
コンピューティングの世界のためのソフトウェアの抽象化(英語) は、oneAPI へ移行することで企業と開発者にもたらされる利点を詳しく説明しています。
重要なポイント: アプリケーション開発をクロスアーキテ
クチャー・モデルに移行すると、組織は時間と費用を大幅に節約できます。パフォーマンスが求められるアプリケー
ションを新しいコンピューティング・プラットフォームに移行するごとに、5 カ月以上の期間と 300,000 ドルを節約できます。

oneAPI DPC++ コンパイラーが初期 CUDA* バックエンドをマージ (英語)oneAPI 仕様: インテルの計算ランタイムに oneAPI レベルゼロのサポートを追加 (英語)インテル® ソフトウェア製品のパフォーマンスおよび最適化に関する注意事項については、software.intel.com/articles/optimization-notice#opt-jp を参照してください。
© Intel Corporation. 無断での引用、転載を禁じます。
* その他の社名、製品名などは、一般に各社の表示、商標または登録商標です。

48

oneAPI
業界仕様 (英語)spec.oneapi.com/oneAPI/▪

法務上の注意書き▪

貢献のガイドライン

▪

はじめに

▪

ソフトウェア・アーキテクチャー▪

ライブラリーの相互運用性▪

oneAPI の要素▪

データ並列 C++ (DPC++)▪

oneAPI データ並列 C++ ライブラリー (oneDPL)▪

oneAPI ディープ・ニューラル・ネットワーク・ライブラリー (oneDNN)▪

oneAPI コレクティブ・コミュニケーション・ライブラリー (oneCCL)▪

oneAPI レベルゼロ (Level Zero)▪

oneAPI データ・アナリティクス・ライブラリー (oneDAL)▪

oneAPI スレッディング・ビルディング・ブロック (oneTBB)▪

oneAPI ビデオ・プロセシング・ライブラリー (oneVPL)▪

oneAPI マス・カーネル・ライブラリー (oneMKL)▪

貢献者

インテル® ソフトウェア製品のパフォーマンスおよび最適化に関する注意事項については、software.intel.com/articles/optimization-notice#opt-jp を参照してください。
© Intel Corporation. 無断での引用、転載を禁じます。
* その他の社名、製品名などは、一般に各社の表示、商標または登録商標です。

49

インテル® oneAPIDL フレームワーク・
デベロッパー・ツールキット
新しい優れたディープラーニング・フレームワークの作成、または既存のディー
プラーニング・フレームワークの最適化を行う開発者および研究者向けに設計

フレームワーク開発者向けインテル® oneAPI
ディープラーニング・ツール
API ベースのプログラミング

主な使用法
▪

ディープラーニング・フレームワークの開発▪

ディープラーニングの研究

インテル® oneAPI
ディープ・ニューラル・
ネットワーク・ライブラリー

インテル® oneAPI
コレクティブ・コミュニケー
ション・ライブラリー

主な特徴/利点▪

インテルの CPU とアクセラレーターを活用できる高速なディープ・ニューラル・ネット
ワークを作成▪

フレームワークを 1 つのノードから複数のノードにスケーリングしてフレームワークのワークロードの高速な解析を提供

インテル® ソフトウェア製品のパフォーマンスおよび最適化に関する注意事項については、software.intel.com/articles/optimization-notice#opt-jp を参照してください。
© Intel Corporation. 無断での引用、転載を禁じます。
* その他の社名、製品名などは、一般に各社の表示、商標または登録商標です。

50

51