ソフトウェア開発環境 ~ インテル® oneAPI ツールキット

インテル® OneAPI ツールキットの御紹介

インテル®oneAPIツールキットは、さまざまなアーキテクチャーでアプリケーションを構築するための次世代の標準ベースのインテル®ソフトウェア開発ツールです。すべてのインテル®oneAPIツールキット製品は無料でご利用いただけます。インテル®oneAPIツールキットはライセンスファイルを必要とせず、使用条件はエンドユーザー使用許諾契約に基づいています。

インテル® OneAPI ツールキット パッケージ内容 (2022.08現在)

パッケージパッケージの内容
Intel oneAPI Base ToolkitIntel® oneAPI Collective Communications Library
Intel® oneAPI Data Analytics Library
Intel® oneAPI Deep Neural Networks Library
Intel® oneAPI DPC++/C++ Compiler
Intel® oneAPI DPC++ Library
Intel® oneAPI Math Kernel Library
Intel® oneAPI Threading Building Blocks
Intel® oneAPI Video Processing Library
Intel® Advisor
Intel® Distribution for GDB*
Intel® Distribution for Python*
Intel® DPC++ Compatibility Tool
Intel® FPGA Add-on for oneAPI Base Toolkit
Intel® Integrated Performance Primitives
Intel® VTune™ Profiler
Intel oneAPI HPC ToolkitThis toolkit complements the Intel® oneAPI Base Toolkit and includes:
Intel oneAPI DPC++/C++ Compiler
Intel® C++ Compiler Classic
Intel® Cluster Checker
Intel® Fortran Compiler
Intel® Fortran Compiler Classic
Intel® Inspector
Intel® MPI Library
Intel® Trace Analyzer and Collector
Intel AI Analytics ToolkitIntel® Distribution for Python* including highly-optimized scikit-learn and XGBoost libraries
Intel® Optimization for PyTorch*
Intel® Optimization for TensorFlow*
Intel® Optimization of Modin* (available through Anaconda* only)
Intel® Neural Compressor
Model Zoo for Intel® architecture
Intel oneAPI IoT ToolkitThis toolkit complements the Intel oneAPI Base Toolkit and includes:
Intel oneAPI DPC++/C++ Compiler
Intel C++ Compiler Classic
Intel Inspector
OpenEmbedded meta-intel Layer for Yocto Project*
Intel oneAPI Rendering ToolkitIntel® Embree
Intel® Open Volume Kernel Library
Intel® Open Image Denoise
Intel® OpenSWR
Intel® OSPRay
Intel® OSPRay Studio
Intel® OSPRay for Hydra*
Intel Distribution of OpenVINO™ ToolkitModel Optimizer
Deep Learning Workbench
Inference Engine
Deployment Manager
OpenCV*
DL Streamer
Post Training Optimization Tool

インテル® oneAPI ツールキット 新機能の御紹介

Intel® oneAPI DPC++/C++ コンパイラー の提供

本機能により、オープンソース・プログラミング言語であるデータ並列C++(DPC++)と最新のC++機能を使用して並列処理を表現することにより、CPUとGPUなどのアクセラレータのプログラミングを簡素化します。DPC++言語は、単一のソース言語でCPUとGPUのコードの再利用を可能にします。GPUなどのアクセラレータを利用できないプラットフォームでも、CPUを利用することでコードの開発とデバックを簡素化できます。

oneAPIは、既存のC/C++またはFortranコードでOpenMPオフロード機能を使用するCPU及びGPUなどのアクセラレータのプログラミングもサポートします。

oneDNNの提供

インテル® oneAPI ディープ・ニューラル・ネットワーク・ライブラリー (oneDNN) は、ディープラーニングのビルディングブロックを高度に最適化した実装を提供します。このオープンソースのクロスプラットフォームライブラリにより、深層学習アプリケーションおよびフレームワークの開発者は、CPU、GPU、またはその両方に同じAPIを使用でき、命令セットやその他の複雑な性能最適化を抽象化します。

このライブラリを使用することで、以下のことが可能になります。

  • OpenVINO™ ツールキット、インテル® AI アナリティクス・ツールキット、インテル® PyTorch* 配布、インテル® TensorFlow* 配布など、すでに使用しているフレームワークのパフォーマンス向上。
  • 最適化されたビルディングブロックを使用した、より高速なディープラーニング・アプリケーションおよびフレームワークの開発。
  • ターゲット固有のコードを書くことなく、インテル® CPUおよびGPUに最適化されたアプリケーションをデプロイできます。
LLVM対応コンパイラの提供

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

インテル® oneAPI ツールキット ご利用について

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

ソフトウェアの開発環境は、OSを含めた複数のソフトウェアのバージョンに応じた適切な組み合わせが存在します。複数のサーバーを年次をまたいで導入していくことで複数のCPUアーキテクチャ及びOSが混在するようになり、MPIやCUDAなどのライブラリがバージョンアップを重ねて、GPUの種類も多岐にわたるような計算機環境は多くの研究室で普通にみられることではないでしょうか。そのような統一的な整備の難しいソフトウェア開発環境に対して、弊社では事前検証と多くの導入実績に基づいた確実な技術で応えます。

ソフトウェア開発環境のパッケージングツールとして、Environment Modules や mpi-selector, Spackなどを利用して、複雑になりがちなバージョン管理を簡素化します。弊社では、開発環境のパッケージング化だけではなく、実際にユーザー様が御利用になるアプリケーションのビルド及び動作確認もサポートします。また、Altair Grid Engineなどのジョブ管理ソフトを利用した実際のジョブの投入方法も御支援致します。

インテル® oneAPI ツールキットは利用可能人数制限無し。Intel MPIも無償で利用可能。

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

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

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

Intel® oneAPI Priority Support
  • 質問、問題、その他の技術的な問題を、インテルのエンジニアが直接非公開で対応
  • 過去に提出された問題のモニタリング
  • 技術的な質問や製品に関するニーズに迅速に対応
  • エスカレートした不具合や機能要求に対する優先的なサポート
Intel Parallel Studio XEは継続利用可能

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