このチュートリアルは、Tachyon サンプル・アプリケーションを使用します。Tachyon は、データファイルのオブジェクトをレンダリングするレイトレーシング・アプリケーションです。アプリケーションは、入力ファイルとして balls.dat を使用します。データファイルは、\tachyon\dat\ ディレクトリーにあります。
オリジナルの Tachyon は、関数 pthread_create() で明示的なスレッド (1 つはレンダリング用、もう 1 つは演算用) により並列処理されたアプリケーションでした。オリジナルの実装は、Linux* サンプルパッケージの src ディレクトリーにあるソースファイル pthread.cpp にあります。
このチュートリアルでは、OpenMP* およびインテル® スレッディング・ビルディング・ブロック (インテル® TBB) により演算スレッドに並列化を実装します。並列化は関数 draw_task() にのみ実装します。この関数は、ソースファイル build_serial.cpp に含まれています。
このチュートリアルでは、インテル® コンパイラーを使用し、同じ関数の異なる並列実装バージョンをビルドします。アプリケーションを実行すると、オブジェクトをレンダリングするのに必要な実行時間がウィンドウタイトルに表示されます。この時間により、最初のステップで確立されるシリアル実装のベースラインと比較して、並列実装で得られる速度向上が示されます。
このチュートリアルには Linux* 版、macOS* 版、Windows* 版があります。