Windows用ROCmのトレーニングコース
ROCmは、AMD製GPUをサポートするオープンソースのGPUプログラミングプラットフォームであり、CUDAやOpenCLとの互換性も備えています。このプラットフォームにより開発者はハードウェアの仕様に直接アクセスでき、並列処理の制御が可能になります。ただしそのためにはデバイスのアーキテクチャやメモリモデル、実行モデルおよび最適化手法について十分な理解が求められます。
Windows用ROCmは最近発表された製品で、個人用途や業務目的で広く利用されているWindowsオペレーティングシステム上にROCmを導入・使用することを可能にします。これによりAI開発、ゲーム制作、グラフィックス処理や科学技術計算など様々な分野においてAMD GPUの性能を活用できるようになります。
この講義形式の実習(オンラインまたは対面)は、Windows上でROCmを導入しAMD GPU向けにプログラミングを行い並列処理機能を活かしたい初心者から中級レベルの開発者向けです。
本講座を修了することで受講者には以下の能力が身につきます:
- Windows上にROCmプラットフォーム、AMD GPUおよびVisual Studio Codeを組み合わせた開発環境を構築できる。
- GPU上でベクトル加算処理を行いその結果をメモリから取得する基本的なROCmプログラムを作成できる。
- ROCm APIを用いてデバイス情報の照会、メモリの確保・解放、ホストとデバイスの間でのデータ転送、カーネルの起動やスレッド同期化を行える。
- HIP言語を活用してGPU上で実行可能なカーネルコードを記述しデータ操作ができる。
- HIPに備わる組み込み関数・変数・ライブラリを用いて一般的な処理を行える。
- グローバル、共有、定数、ローカルといったROCmおよびHIPにおける各種メモリスペースを活用しデータ転送やメモリアクセスの最適化ができる。
- スレッド、ブロック、グリッドといった概念を用いて並列処理の構成制御を行える。
- ROCmデバッガーやROCmプロファイラーなどのツールでROCmおよびHIPプログラムのデバッグ・テストができる。
- コアレス化、キャッシュ利用、プリフェッチング、プロファイリングといった手法によりログラムを最適化できる。
講座の形式
- 双方向型の講義およびディスカッションを行う。
- 豊富な演習問題と実践課題を用意する。
- ライブ環境下で手を動かす実習形式とする。
カスタマイズオプション
- 本講座の内容や構成の個別要望については、ご相談いただければ対応可能です。
コース概要
はじめに
- ROCmとは何か?
- HIPとは何か?
- ROCm、CUDAおよびOpenCLの比較について
- ROCmとHIPの特徴およびアーキテクチャ概要
- Windows用ROCmとLinux用ROCmの違い
インストール手順
- Windows上でのROCm導入方法
- 導入状況確認およびデバイスの互換性検証
- Windows環境下でのROCmの更新・アンインストール手順
- 一般的なインストールトラブルの解決法
基本操作の習得
- Visual Studio Codeを用いたWindows上での新規ROCmプロジェクト作成方法
- プロジェクト構成およびファイル管理について学ぶ
- コンパイルから実行までの流れを体験する
- printfやfprintfにより結果出力を行う方法
ROCm APIの活用
- ホスト側プログラムでのAPI利用法
- デバイス情報および機能特性の照会手法
- メモリ領域の確保・解放方法
- ホストとデバイスの間でのデータ転送方法
- カーネル起動処理やスレッド同期化の実装例
- エラーおよび例外事象への対処法
HIP言語の使い方
- デバイス側プログラムにおけるHIP記述手法
- GPU上で実行可能なカーネルコード作成およびデータ操作方法
- データ型や演算子、式に関する基本的なルール
- 組み込み関数・変数・ライブラリの使い方
メモリモデルの概要
- グローバル・共有・定数・ローカルといった各種メモリスペースの適用例
- ポインタや配列、テクスチャ等の記憶領域制御方法
- 読み込み専用/書き込み専用などのアクセス形態の管理手法
- メモリ整合性モデルおよび同期化機構の活用方法
実行モデルの仕組みパ>
- スレッド・ブロック・グリッドといった基本構成要素の使い方
- hipThreadIdx_xやhipBlockIdx_x、hipBlockDim_xなどのスレッド関数利用法
- __syncthreadsや__threadfence_blockなどのブロック関数活用例
- hipGridDim_xや協調グループ機構などのグリッド単位の操作法
デバッグ技術
- Windows環境下でのROCmおよびHIPプログラムのデバッグ手法
- Visual Studio Codeデバッガーによる変数検査やブレークポイント設定方法
- AMDデバイス向けに利用可能なROCmデバッガーの使い方
- AMDデバイス上でのプログラム動作を分析するためのROCmプロファイラー使用方法
性能最適化策
- Windows環境下で開発したログラムの高速化手法
- コアレス化によるメモリ帯域の有効活用方法
- キャッシュやプリフェッチングによる遅延低減手段
- 共有/ローカルメモリを活用したデータ処理効率向上手法
- プロファイラーツールを用いた実行時間短縮およびリソース配分改善方法
まとめと今後の取り組み方向性
要求
- C/C++言語および並列プログラミングに関する基礎知識が必要。
- コンピュータアーキテクチャとメモリ階層についての理解があること。
- コマンドラインツールやコードエディタの使用経験があること。
- WindowsオペレーティングシステムおよびPowerShellに慣れていること。
対象者
- Windows上でROCmを導入しAMD GPU向けのプログラミングを行いたい開発者。
- 多様なAMDデバイス上で実行可能な高速かつ拡張性に富むコードを作成したい開発者。
- GPUプログラミングの低レベルな仕組みを学び、自らのコード性能を向上させたいプログラマー。
オープントレーニングコースには5人以上が必要です。
Windows用ROCmのトレーニングコース - 予約
Windows用ROCmのトレーニングコース - お問い合わせ
Windows用ROCm - コンサルティングお問い合わせ
今後のコース
関連コース
Huawei AscendおよびCANNを活用したAIアプリケーション開発
21 時間Huawei Ascendは、高性能な推論処理と学習処理のために設計されたAIプロセッサ群です。
本講座は、HuaweiのAscendプラットフォームおよびCANNツールキットを用いてニューラルネットワークモデルを開発・最適化したい中級レベルのAIエンジニアやデータサイエンティスト向けに提供される、インストラクター主導のライブ研修(オンラインまたは対面)です。
本研修を修了すると、参加者は以下のことが可能になります:
- CANN開発環境のセットアップおよび設定
- MindSporeおよびCloudMatrixワークフローを用いたAIアプリケーションの開発
- カスタムオペレータやタイリング技術を活用したAscend NPU上でのパフォーマンス最適化
- モデルをエッジ環境またはクラウド環境へ展開すること
講座の形式について
- インタラクティブな講義およびディスカッション
- Huawei AscendおよびCANNツールキットを実際のサンプルアプリケーションで活用する演習
- モデルの構築、学習、展開に焦点を当てた指導付き練習問題
カスタマイズ可能なオプションについて
- お客様の利用環境やデータセットに合わせた本講座のカスタマイズをご希望の場合は、事前にお問い合わせください。
CANNおよびAscend AIプロセッサを利用したAIモデルのデプロイ方法
14 時間
CANN(Compute Architecture for Neural Networks)は、Huaweiが提供するAIコンピュートスタックであり、Ascend AIプロセッサ上でAIモデルを効率的にデプロイ・最適化するためのツール群です。
本講座はインストラクターによる対面またはオンラインの実践形式のトレーニングであり、中級レベルのAI開発者やエンジニアを対象としています。参加者はCANNツールキットおよびMindSpore、TensorFlow、PyTorchといったフレームワークを用いて、学習済みのAIモデルをHuawei Ascendハードウェアへスムーズに導入できるようになります。
本トレーニングを修了すると、参加者は以下のことが可能になります:
- CANNのアーキテクチャとAIモデル導入プロセスにおけるその役割を理解できる
- 各種フレームワークで作成されたモデルをAscend対応形式へ変換・適合させられる
- ATCやOMモデル変換ツール、MindSporeなどを活用してエッジおよびクラウド環境での推論処理が可能になる
- Ascendハードウェア上でのデプロイ時の問題診断とパフォーマンス最適化が実施できる
講座形式について
-
インタラクティブな講義およびデモンストレーションを実施します
-
CANNツールやAscendシミュレータ・実機を用いた実践的な演習も行います
-
現実世界で利用されているAIモデルを対象とした具体的な導入ケースの学習が可能です
カスタマイズについて
-
ご要望に合わせた内容への調整・個別指導を希望される場合は、お気軽にお問い合わせください
クラウドマトリックスを利用したAI推論とデプロイメント
21 時間クラウドマトリックスは、Huaweiが提供する統合型AI開発・デプロイメントプラットフォームであり、拡張性に優れた本番環境向けの推論パイプラインを構築できるよう設計されています。
この講義形式によるライブトレーニング(オンラインまたは現地開催)は、CANNおよびMindSporeとの連携機能を用いてクラウドマトリックス上でAIモデルをデプロイ・監視したいと考える、初心者から中級レベルのAI技術者向けの内容となっています。
本研修を修了すると、参加者は以下の能力を習得できるようになります:
- クラウドマトリックスを用いてモデルのパッケージング・デプロイメント・提供を行う方法
- Ascendチップセット向けにモデルを変換・最適化する手法
- リアルタイム処理およびバッチ処理の両方に対応した推論パイプラインを構築する方法
- 本番環境においてデプロイメント状況を監視し、性能を調整する方法
講義の形式について
- 対話型の講義およびディスカッション
- 実際のデプロイメントシナリオを想定したクラウドマトリックスの操作演習
- モデル変換・最適化・拡張性に関する演習も含まれます
カスタマイズのオプションについて
- お客様のAI基盤やクラウド環境に合わせて本講座を個別にカスタマイズしたい場合は、ご相談ください。
Biren AIアクセラレータにおけるGPUプログラミング
21 時間Biren AIアクセラレータは、大規模な学習および推論処理を可能にするための高性能GPUで、AIおよびHPC用途向けに設計されています。
本コースは、インストラクターによるライブ形式(オンラインまたは対面)の研修で、Biren独自のGPU技術を活用してアプリケーションを開発・最適化したい中級者から上級者向けです。実際にCUDA環境との比較も行います。
研修終了時には、受講生は以下のスキルを習得できます:
- Biren GPUのアーキテクチャおよびメモリ階層の理解
- 開発環境のセットアップ方法とBiren用プログラミングモデルの活用
- CUDA形式のコードをBirenプラットフォーム向けに変換・最適化する手法
- パフォーマンス調整およびデバッグ技術の実践
コースの形式について
- インタラクティブな講義およびディスカッション
- Biren SDKを用いたサンプルGPUワークロードの実践
- 移植作業やパフォーマンスチューニングに特化した演習
コース内容のカスタマイズについて
- お客様のアプリケーション要件や統合ニーズに応じたカスタム研修をご希望の場合は、当社までお問い合わせください。
BANGPyおよびNeuwareを使用した Cambricon MLU開発
21 時間Cambricon社のMLU(マシンラーニングユニット)は、エッジ環境やデータセンターにおいて推論・学習処理に最適化された専用AIチップです。
本講座はインストラクターが直接指導する実践的なトレーニングで、オンラインまたは会場での開催となります。BANGPyフレームワークおよびNeuware SDKを活用し、Cambricon MLUハードウェア上にAIモデルを構築・展開したい中級レベルの開発者向けの内容です。
講座終了後には、以下のことが可能になります:
- BANGPyおよびNeuwareの開発環境を適切にセットアップできるようになる。
- PythonまたはC++で記述されたAIモデルをMLU向けに開発・最適化できるようになる。
- Neuwareランタイムが搭載されたエッジ機器やデータセンター環境へモデルを展開できるようになる。
- MLワークフローとMLU特有の高速化機能とを効果的に統合できるようになる。
講座形式
- 対話型の講義およびディスカッション。
- BANGPyおよびNeuwareを用いた実践的な開発・展開演習。
- 最適化や統合作業、検証に重点を置いた練習問題。
講座内容のカスタマイズ
- ご使用のCambriconデバイス仕様や具体的な用途に応じたカスタムトレーニングをご希望の場合は、お問い合わせいただければ手配可能です。
AIフレームワーク開発者向けCANN入門
7 時間CANN(Compute Architecture for Neural Networks)は、ファーウェイが提供するAI計算用ツールキットであり、Ascend AIプロセッサ上でAIモデルをコンパイル・最適化・展開するために利用されます。
本講座はインストラクターによるライブトレーニング(オンラインまたは現地実施)で、AI開発初心者を対象としています。CANNがモデルの訓練から展開までのプロセスにおいてどのように役立つか、またMindSpore、TensorFlow、PyTorchといったフレームワークとどう連携するかを学ぶことを目的としています。
講座終了時には、受講者は以下のスキルを身につけることができます:
- CANNツールキットの目的とアーキテクチャを理解する
- CANNおよびMindSporeを用いて開発環境を構築する
- 簡単なAIモデルをAscendハードウェア向けに変換・展開する
- 将来のCANN最適化や統合プロジェクトに向けた基礎知識を得る
講座の形式
- インタラクティブな講義およびディスカッション
- 簡易的なモデル展開を体験する実習
- CANNツールチェーンおよび統合ポイントの段階別解説
講座カスタマイズオプション
- 本講座をご要望に合わせてカスタマイズしたい場合は、ご連絡ください
CANNを用いたエッジAIの展開
14 時間
ファーウェイが提供するAscend CANNツールキットを利用することで、Ascend 310などのエッジデバイス上での強力なAI推論処理が可能になります。CANNには計算資源やメモリが限られた環境向けに、モデルのコンパイル・最適化・展開を支援する各種ツールが揃っています。
本講座は講師によるライブ研修(オンラインまたは会場開催)で、CANNツールチェーンを用いてAscendエッジデバイス上にモデルを展開・最適化したい中級レベルのAI開発者やシステム統合担当者向けの内容となっています。
講座終了時には、受講者は以下のスキルを習得できるようになります:
-
CANNツールを用いてAscend 310向けAIモデルの準備および変換を行うこと
-
MindSpore LiteおよびAscendCLを活用して軽量な推論パイプラインを構築すること
-
計算能力やメモリ容量が限られた環境においてモデル性能の最適化を行うこと
-
実際のエッジ環境下でAIアプリケーションを展開し、その動作状況を監視すること
講座の進め方について
-
双方向型の講義および実演を交えた形式
-
エッジ向けモデルやシナリオを用いた実習
-
仮想環境または物理的なエッジハードウェア上での実際の展開例を紹介
カスタマイズ対応について
-
本講座の内容をご要望に合わせてカスタマイズすることも可能ですので、お気軽にお問い合わせください。
ファーウェイのAIコンピュートスタックを理解する:CANNからMindSporeまで
14 時間ファーウェイが提供するAIスタックは、下層レベルのCANN SDKから上層レベルのMindSporeフレームワークに至るまで、Ascendハードウェア向けに最適化された統合的なAI開発・展開環境を実現しています。
本講座はインストラクター主導のライブトレーニング(オンラインまたは現地開催)で、AIライフサイクル管理やインフラ構築における意思決定を支援するため、CANNおよびMindSporeがどのように連携しているかを学びたい初心者から中級レベルの技術担当者の方々を対象としています。
受講を終える頃には、参加者は以下のことを実現できるようになります:
- ファーウェイのAIコンピュートスタックが持つ階層型アーキテクチャを理解する。
- CANNがモデル最適化やハードウェアレベルでの展開をどのように支援しているかを見極める。
- 業界他社製品との比較を踏まえ、MindSporeフレームワークおよびツールチェーンを評価する。
- 企業環境やクラウド/オンプレミス環境におけるファーウェイのAIスタックの位置づけを把握する。
講座形式について
- 双方向性の高い講義およびディスカッション。
- 実際のシステムを使ったデモやケーススタディに基づく解説。
- MindSporeからCANNへのモデル流用処理を体験するための演習も任意で用意されています。
カスタマイズオプションについて
- 本講座の内容をご要望に合わせてカスタマイズしたい場合は、お問い合わせいただければ手配いたします。
CANN SDKを使用したニューラルネットワークのパフォーマンス最適化
14 時間CANN SDK(Compute Architecture for Neural Networks)は、ファーウェイが提供するAI計算基盤であり、開発者がAscend AIプロセッサ上で展開されたニューラルネットワークのパフォーマンスを細かく調整・最適化できるようにします。
本講座はインストラクター主導のライブトレーニング(オンラインまたはオンサイト)で、CANNが提供するグラフエンジンやTIK、カスタム演算子開発といった高度なツール群を活用して推論性能を最適化したい上級レベルのAI開発者やシステムエンジニアを対象としています。
本講座の終了時には、受講生は以下のことを実現できるようになります:
- CANNのランタイム構造およびパフォーマンス最適化の全プロセスを理解する。
- プロファイリングツールやグラフエンジンを用いて性能分析および改善を行う。
- TIKおよびTVMを活用してカスタム演算子を作成・最適化する。
- メモリのボトルネックを解消し、モデルの処理能力を向上させる。
講座の形式について
- インタラクティブな講義およびディスカッション
- リアルタイムプロファイリングや演算子チューニングを行う実習セッション
- 特殊な導入環境を想定した最適化演習も実施
カスタマイズオプションについて
- 本講座の内容をご要望に合わせてカスタマイズ希望の場合は、お問い合わせください。
CANN SDK:コンピュータビジョンおよびNLPパイプラインのためのSDK
14 時間
CANN SDK(ニューラルネットワーク用計算アーキテクチャ)は、特にHuawei Ascendハードウェア上で、コンピュータビジョンやNLP分野におけるリアルタイムAIアプリケーションの展開および最適化を支援する強力なツール群です。
本講座は講師主導型のライブ研修(オンラインまたは対面)で、実業務向けにコンピュータビジョンや言語モデルを構築・展開・最適化したい中級レベルのAI技術者を対象としています。
研修終了時には、受講生は以下のスキルを習得できるようになります:
-
CANNおよびAscendCLを用いてコンピュータビジョン・NLPモデルを展開し、最適化する方法
-
CANNの各種ツールを利用してモデル変換を行い、実運用環境向けパイプラインへ統合する手順
-
物体検出・分類や感情分析などのタスクにおいて推論処理の性能を最適化する技術
-
エッジ端末およびクラウド環境向けに、リアルタイム動作が可能なコンピュータビジョン/NLPパイプラインの構築法
講座の形式について
-
インタラクティブな講義および実演
-
モデル展開や性能分析を体験できる実習セッション
-
実際のコンピュータビジョン/NLP利用シーンに即したパイプライン設計演習
カスタマイズオプション
-
本講座をご希望の内容に合わせてカスタマイズする場合は、お問い合わせいただければ調整いたします。
CANN TIKとTVMを活用したカスタムAIオペレータの構築
14 時間CANN TIK(Tensor Instruction Kernel)およびApache TVMにより、Huawei Ascendハードウェア向けのAIモデルオペレータを高度に最適化・カスタマイズすることが可能になります。
本トレーニングはインストラクター主導のライブ講座(オンラインまたは対面)で、CANNのTIKプログラミングモデルおよびTVMコンパイラとの連携機能を活用してAIモデルのカスタムオペレータを構築・展開・チューニングしたい上級レベルのシステム開発者向けです。
受講終了後、参加者は以下のスキルを習得できるようになります:
- Ascendプロセッサ向けにTIK DSLを用いてカスタムAIオペレータを記述・テストする
- CANNランタイムおよび実行グラフへ自作のオペレータを統合する
- TVMを用いてオペレータのスケジューリング、自動チューニング、ベンチマークを行う
- 独自の計算パターンに対して命令レベルでの性能をデバッグ・最適化する
講座形式について
- インタラクティブな講義とデモンストレーション
- TIKおよびTVMパイプラインを活用したオペレータの実際的なコーディング演習
- Ascendハードウェアまたはシミュレーター上でのテストとチューニング
カスタマイズオプションについて
- 本講座の内容をお客様ニーズに合わせて調整したい場合は、事前にお問い合わせください。
CUDAアプリケーションを中国製GPUアーキテクチャへ移植する方法
21 時間華為のAscend、Biren、およびCambricon社のMLUといった中国製GPUアーキテクチャは、現地のAIやHPC市場向けに設計されたCUDA代替技術を提供しています。
本トレーニングは講師主導の実践形式で行われ(オンラインまたは対面)、既存のCUDAアプリケーションを中国製ハードウェア環境へ移植・最適化したい上級レベルのGPUプログラマーやインフラ担当者向けです。
受講後には以下のスキルを身につけることができます:
- 既存のCUDAワークロードが中国製チップでも利用可能か評価する方法
- Huawei CANN、Biren SDK、Cambricon BANGPy環境向けにCUDAコードを移植する手法
- 各プラットフォーム間での性能比較および最適化のポイント特定方法
- 異なるアーキテクチャ対応やデプロイ時における課題への対処法
講座形式について
- インタラクティブな講義とディスカッション
- 実際にコードを翻訳し、性能比較を行う演習実習
- マルチGPU環境対応戦略に関する課題解決演習
講座内容のカスタマイズについて
- 利用中のプラットフォームやCUDAプロジェクトに合わせた内容調整をご希望の場合は、お問い合わせください。
アセンド、ビレン、カンブリコンにおけるパフォーマンス最適化
21 時間アセンド、ビレン、カンブリコンは中国国内で主要なAIハードウェアプラットフォームであり、それぞれ製品環境において大規模なAIワークロードを処理するための独自の加速機能やプロファイリングツールを提供しています。
本講座はインストラクター主導型のライブトレーニング(オンラインまたは対面)で、中国製AIチッププラットフォーム全体においてモデルの推論や学習フローを最適化したい上級者向けのAIインフラ・パフォーマンスエンジニアを対象としています。
講座終了時点で、受講者は以下のことができるようになります:
- アセンド、ビレン、カンブリコンプラットフォーム上でモデルのベンチマークを行うこと
- システムのボトルネックやメモリ・演算処理における非効率性を特定すること
- グラフレベル、カーネルレベル、オペレーターレベルでの最適化手法を適用すること
- スループットとレイテンシの改善に向けてデプロイメントパイプラインを調整すること
講座の形式について
- インタラクティブな講義およびディスカッション
- 各プラットフォーム上でのプロファイリング・最適化ツールを実際に使用する演習
- 現場で即利用可能なチューニング事例に基づく演習課題の実施
講座内容のカスタマイズオプションについて
- ご自身の運用環境や扱うモデルの特性に合わせたカスタムトレーニングを希望される場合は、事前にお問い合わせください。