2021年 1月 ~ 4月、6 パートに分けて開催された 「データ並列 C++ (DPC++) プログラミング・セミナー・シリーズ ~ インテル® oneAPI によるヘテロジニアス環境への移行方法を紹介 ~」 のオンデマンド配信を開始いたしました。
このシリーズでは、インテル® oneAPI でダイレクト・プログラミングを実現するためのデータ並列 C++ (DPC++) プログラミング・モデルについて紹介します。 DPC++ の動作の仕組みをはじめ、DPC++ によるプログラミング方法、インテル® ライブラリーからインテル® oneAPI ライブラリーへの移行方法、ヘテロジニアス環境への移行方法、パフォーマンス・チューニングの取り組み方、そして C および Fortran ユーザー向けのプログラミング方法について説明します。
パート 1:「さあはじめよう!データ並列 C++ の動作の仕組み」このセッションでは、コンパイルの手順をはじめ、レガシーコンパイル、JIT コンパイル、AOT コンパイル、ファットバイナリー等、データ並列 C++ (DPC++) コンパイラーがどのように動作するかについて説明します。 |
|
パート 2 「さあはじめよう!データ並列 C++ プログラミング」このセッションでは、インテル® Parallel Studio XE に同梱されるコンパイラーとの比較を はじめ、データ並列 C++ の概念や対象となるユーザー、C / C++ および SYCL* におけるベクトル加算、SYCL* キューやバッファー等、実行例とともに説明します。 |
|
パート 3 「さあはじめよう!データ並列 C++ コンパイラーを使用した USM のサンプルコード」このセッションでは、データ並列 C++ (DPC++) プログラミング言語の基本機能を紹介します。バッファーに代わって統合共有メモリー (USM) を使用して、ホストとデバイスのメモリーの管理とアクセスを行います。 |
|
パート 4 「さあはじめよう!DPC++ とインテル® oneMKL を使ってみよう」このセッションでは、インテル® oneMKL の概要や新機能をはじめ、並列正弦、マルチデバイス FFT、行列乗算といったインテル® oneMKL の利用法のほか、C/C++ や従来のインテル® MKL、バッファーによるインテル® oneMKL、USM によるインテル® oneMKL などのサンプルコードについて説明します。 |
|
パート 5 「さあはじめよう!インテル® oneAPI へのポーティングのガイド ― ICC / ICL から ICX / DPCPP へ移行する」新しい dpcpp / icx / ifx は全く新しいコンパイラーであり、既存のソースやプロジェクトを移行する際に、オプション、マクロ、プラグマ、警告やメッセージに戸惑うかもしれません。このセッションでは、クラシック・コンパイラーを使用するプロジェクトを新しいコンパイラー環境に移行する際の注意点や問題点を解説します。 |
|
パート 6 「さあはじめよう!クラシック・コンパイラー (ICC/ICL) と新しい LLVM ベース・コンパイラー (ICX/DPCPP) のパフォーマンスを比較する」新しい dpcpp / icx / ifx は全く新しいコンパイラーであり、既存のソースやプロジェクトを移行する際に、オプション、マクロ、プラグマ、警告やメッセージに戸惑うかもしれません。このセッションでは、クラシック・コンパイラーを使用するプロジェクトを新しいコンパイラー環境に移行する際の注意点や問題点を解説します。 |