Top > ソフトウェア製品 > インテルソフトウェア開発環境製品

インテル ソフトウェア開発製品 Intel oneAPI

インテル®oneAPIツールキットは、さまざまなアーキテクチャーでアプリケーションを構築するための次世代の標準ベースのインテル®ソフトウェア開発ツールです。すべてのインテル®oneAPIツールキット製品は無料でご利用いただけます。インテル®oneAPIツールキットはライセンスファイルを必要とせず、使用条件はエンドユーザー使用許諾契約に基づいています。サポートは、Intel DeveloperZoneコミュニティフォーラムから利用できます。(https://www.intel.com/content/www/us/en/developer/articles/news/free-intel-software-developer-tools.html の冒頭を機械日本語訳)

StackImage_2x.png
パッケージの種類について 
※Base Toolkit と HPC ToolKit を合わせると合計23GB程度のデータとなります。
主な新機能

DPC++の提供
 DPC++(Data Parallel C++) がoneAPIから提供されています。DPC++とは、従来のISO C++のメリットを活用しながら、SYCLベースのデータ並列処理とヘテロジニアスプログラミングをサポートします。SYCLとは、クロノスグループにより開発されているもので、OpenCLではホストとデバイスのコードを分離して記述しますが、SYCLでは、OpenCLを含んだコードを単一ソースで書けるというメリットがあります。OpenCLのもつ汎用性とSYCLによる利便性を生産性の高いC++で活用する製品です。このため、ハードウェアターゲット(CPU、GPU、FPGA)間でのコードの再利用を可能にし、特定のプラットフォームのカスタムチューニングをサポートします。また、各アーキテクチャを個別に、または一括してプログラムするとも可能です。

oneDNNの提供
 oneAPIディープニューラルネットワークライブラリ(oneDNN)は、ディープラーニングアプリケーションとフレームワークのビルディングブロックを含むパフォーマンスライブラリです。 oneDNNは以下をサポートします:
CNN primitives (Convolutions, Inner product, Pooling, etc.)
RNN primitives (LSTM, Vanilla, RNN, GRU)
Normalizations (LRN, Batch, Layer)
Elementwise operations (ReLU, Tanh, ELU, Abs, etc.)
Softmax, Sum, Concat, Shuffle
Reorders from/to optimized data layouts
8-bit integer, 16-, 32-bit, and bfloat16 floating point data types

LLVM対応コンパイラの提供

 LLVMとは、任意のプログラミング言語に対応可能なコンパイラ基盤です。oneAPIでは、Cはicx、C++はicpx、Fortranはifxとして提供されています。Intelによる2021年8月9日のアナウンスによれば、C及びC++については、LLVM対応は完了しています。2021.4時点ではFortranはBetaの状態で引き続き作業が行われています。LLVM対応のメリットとしては、パフォーマンス向上やビルド時間の短縮が挙げられます。


ソフトウェア開発環境の整備には、OS、コンパイラ、MPI、CUDA、デバイスドライバ等の組み合わせに応じた適切な環境設定が必要。

 ソフトウェアの開発環境は、OSを含めた複数のソフトウェアのバージョンに応じた適切な組み合わせが存在します。複数のサーバーを年次をまたいで導入していくことで複数のCPUアーキテクチャ及びOSが混在するようになり、MPIやCUDAなどのライブラリがバージョンアップを重ねて、GPUの種類も多岐にわたるような計算機環境は多くの研究室で普通にみられることではないでしょうか。そのような統一的な整備の難しいソフトウェア開発環境に対して、HPCテクノロジーズは事前検証と多くの導入実績に基づいた確実な技術で応えます。
 ソフトウェア開発環境のパッケージングツールとして、Environment Modulesmpi-selector, Spackなどを利用して、複雑になりがちなバージョン管理を簡素化します。HPCテクノロジーズでは、開発環境のパッケージング化だけではなく、実際にユーザー様が御利用になるアプリケーションのビルド及び動作確認もサポートします。また、Altair Grid Engineなどのジョブ管理ソフトを利用した実際のジョブの投入方法も御支援致します。尚、Intel oneAPIはSpackに対応しています。


Intel oneAPIは利用可能人数制限無し。Intel MPIも無償で利用可能。

Intel oneAPIツールキットには、同時利用可能な人数に制限はありません。また、これまでIntel Parallel Studio XEの上位パッケージでしか利用できなかったIntel MPIも無制限に利用可能となっています。これまでライセンスの制約が大きかったインテルのソフトウェア開発環境が利用にコストの制約が無くなったことで、高度な機能の般化が促されことになるかもしれません。また、Intel oneAPIは、従来の開発環境パッケージであるIntel Parallel Studio XEと併用することが可能ですので、無理のない速やかな開発環境の移行が実現します。

有償サービスによりインテル社から直接サポートを受けることも可能。

ユーザーのコミュニティーによるサポートフォーラムが開設されていますが、有償サービスを購入することでインテル社から直接サポートを受けることも可能です。

Intel Parallel Studio XEは継続利用可能。

Intel oneAPIへの移行や併用は可能ですが、従来のIntel Parallel Studio XEが利用できなくなるという訳ではありません。ユーザー様の利用環境に合わせて、御利用頂くことができます。