お問い合わせを送信いただきありがとうございます!当社のスタッフがすぐにご連絡いたします。
予約を送信いただきありがとうございます!当社のスタッフがすぐにご連絡いたします。
コース概要
GPUコンピューティングとCUDAアーキテクチャ
- CPUとGPUのアーキテクチャの違い
- NVIDIA GPU ストリーミングマルチプロセッサモデル
- CUDAプログラミングモデル概要
- ヘテロジェナスコンピューティングおよびホスト-デバイスパラダイム
CUDA開発環境のセットアップ
- CUDAツールキット13.xのインストール
- NVCCコンパイラおよびビルドワークフロー
- デバイス照会による環境の確認
- IDE統合および開発ツール
CUDAカーネルの作成と起動
- カーネル関数の構文および修飾子
- 起動設定と実行
- ベクトル足し算と基本的なデータ並列パターン
- CUDAエラーチェックマクロ
CUDAスレッド階層と実行モデル
- グリッド、ブロック、スレッドの構成
- スレッドインデックスおよびグローバルIDの計算
- ワープの実行およびSIMTモデル
- オーカパンシィおよびリソース利用率
GPUメモリアーキテクチャと管理
- メモリの種類:グローバル、シャード、コンスタント、レジスタ
- デバイスメモリの確保と解放
- ホストからデバイスへ、およびデバイスからホストへの転送
- ブロック内協調のための共有メモリ
ユニファイドメモリとデータ移行
- ユニファイドメモリモデルおよびマネージドアロケーション
- ページ移行およびオンデマンド paging
- cudaMemPrefetchAsyncを用いた非同期プリフェッチ
- アクセスパターンに応じたメモリアドバイスヒント
Nsight Systemsによるシステムワイドプロファイリング
- Nsight Systemsのタイムライン分析
- CPU-GPU同期ポイントの特定
- カーネル実行およびメモリ転送の可視化
- システムレベルのパフォーマンスデータの解釈
Nsight Computeによるカーネル最適化
- Nsight Computeインタラクティブカーネルプロファイリング
- メモリスループットおよび帯域幅の分析
- 計算利用率およびワープ状態統計
- ガイダンス付き分析および最適化ルール
同時実行ストリームと非同期操作
- CUDAストリームおよびデフォルトストリーム
- データ転送とのオーバーラップによるカーネル実行
- ストリームの同期およびCUDAイベント
- マルチストリームパイプライン設計パターン
エラーハンドリングとデバッグツール
- CUDA APIのエラーコードおよび回復戦略
- メモリアクセスチェック用のCompute-sanitizer
- カーネルデバッグ用のcuda-gdb
- アサートおよび同期エラー検出
プロファイリング駆動型最適化ワークフロー
- 反復的プロファイリング手法
- ボトルネックの特定と優先順位付け
- パフォーマンス回帰テスト
- 最適化決定の文書化
エンドツーエンドのアクセラレーションアプリケーションプロジェクト
- 完全なGPU加速ソリューションの設計
- 開発全体でのプロファイリングの統合
- パフォーマンスベンチマークおよびレポート
- 本番環境へのデプロイメントに関する考慮事項
要求
- 変数型、ループ、条件分岐、関数、配列操作を含む基本的なC/C++プログラミングの知識
- コマンドラインからのプログラムコンパイルおよび実行への習熟
- GPUまたはCUDAプログラミングの事前経験は不要
対象者
- GPUを用いてC/C++アプリケーションを高速化したいソフトウェア開発者およびエンジニア
- CPU専用からヘテロジェnousコンピューティングへ移行したい科学研究者およびHPC実務者
- 本番環境でのワークロードに対するGPU加速を検討している技術リーダー
8 時間