AMD Lab Notes – AMD Instinct™ MI200 シリーズ GPU メモリスペースと AMD プロファイリング 101

AMD EPYC™ プロセッサー

2023-05-22更新

  • twitter
  • facebook
  • line

※本記事のリンク先は英語となっています。ご注意ください。

AMDラボノートの次のシリーズとして、読者や開発者が異種アクセラレーション・システムのパフォーマンスをさらに理解し最適化するのに役立つ2つのブログ記事を公開しました。最初の投稿では、AMD Instinct™ MI200シリーズ・アクセラレーター・ファミリーのようなアーキテクチャーのメモリを効果的に利用する方法に焦点を当て、2番目の投稿では、関連するライブラリやツールを使用してGPUアプリケーションをプロファイリングするテクニックを扱っています。コード例を含むすべての最新ドキュメントは、いつものようにhttps://github.com/amd/amd-lab-notes/をご覧ください。上記2つのブログの要約は、以下の通りです:

MI200 GPUメモリスペースの概要

最新のアクセラレーションHPCシステムで最高のパフォーマンスを得るには、データが適切な場所に適切なタイミングで配置されるよう、特に注意を払う必要があります。HIP API は、CPU と GPU にまたがってデータを制御し、ヘテロジニアスなアクセラレーション処理を支援するさまざまなオプションをサポートしています。AMD Instinct™ MI200 シリーズアクセラレーターのようなグラフィックカードのメモリー・アーキテクチャは複雑で、その効果的な使用方法を理解することは、パフォーマンスを最適化する上で重要です。このハイレベルな投稿の概要は以下の通りです:

1.一般的に使用されるメモリ空間を紹介します。
2.各メモリスペースの特徴を説明します。
3.各メモリ空間の一般的な使用例について説明します。

具体的には、ホスト・メモリとデバイス・メモリ、ページング可能なホスト・メモリとピン留めされたホスト・メモリ、粗視化されたコヒーレンスと細視化されたコヒーレンスについて説明しています。主要なAPIと関数のコード・スニペットは、この記事の中で紹介されています。このブログ記事は、主にAMD Instinct™ MI200ファミリーのGPUに焦点を当てています。しかし、説明したコンセプトの多くは、他のアクセラレーターやAPIにも引き継がれています。

すべての技術的なコンテンツと付随するコード例は、AMD Lab Notesで見ることができます。

AMDプロファイリング101

パフォーマンスチューニングは、GPUアプリケーションを最適化するための最初の基本ステップです。ハードウェアがどのように利用されているかをよりよく理解するためには、開発者がハードウェアの動作やコンピュート・カーネルがどのようにリソースを利用しているかを可視化することが極めて重要なこととなっています。AMDが提供するプロファイリング・ツールを使用すれば、開発者はアプリケーションの「健康状態」について重要な洞察を得ることができ、パフォーマンス低下の原因となる潜在的なボトルネックを効果的に診断することができます。AMD GPUをターゲットとする開発者は、特定のプロファイリング使用ケースに応じて、複数のツールを利用できます。

このブログ記事では、利用可能なさまざまなプロファイリング・ツールの紹介と、開発者が他のツールよりも1つを活用する理由を説明しており、低レベルのプロファイリング・ツールから包括的なプロファイリング・スイートまで、すべてをカバーしています。また、ハイパフォーマンス・コンピューティング(HPC)に使用されるAMD Instinct™ GPU製品ライン以外のAMD製品を対象とする、「プロファイラー」の分類を持つ他のAMDツールについても明らかにしています。この投稿に続いて、各ツールの詳細やいくつかの例を紹介する一連のブログ投稿が行われます。

この記事ではアプリケーションの解析を支援する以下のオープンソースツールを紹介しています:

AMD ROC profiler
Omniperf
Omnitrace
AMD Radeon™ GPU Profiler
uProf
・サードパーティツール

AMDハードウェアプロファイリングツールの紹介についてはこちらをご覧ください。

ROCmプラットフォームをさらに導入しやすくする

ROCmのユーザーや開発者のために、AMDはROCmをより使いやすく、より簡単にシステムに導入できる方法を継続的に模索し、それらの取り組みをサポートする学習ツールや技術文書を提供しています。

有用なリソース
ROCmのウェブページでは、プラットフォームの概要とその内容、サポートする市場やワークロードをご紹介しています。

ROCm Information Portal は、ユーザーと開発者向けのポータルで、ROCm の最新バージョンと API、サポートドキュメントが掲載されています。このポータルでは、ROCmプラットフォームを新規ユーザーに紹介するためのROCmラーニングセンターも開設されており、既存ユーザーには、このプラットフォームでのシステム開発・展開に役立つビデオ、ウェビナー、ラボ、チュートリアルを提供しています。

AMD Infinity Hubでは、ROCmがサポートするHPCアプリケーションやMLフレームワークの詳細や、最新バージョンの入手方法などが紹介されています。また、ROCm対応アプリケーションの最新リストを含むROCmアプリケーション・カタログにアクセスすることもできます。

最後に、AMD Instinct MI200シリーズのアクセラレーターとパートナーのサーバーソリューションについては、AMD Instinctサーバーソリューションカタログで詳細をご確認ください。

執筆者であるJustin Changは、AMDのソフトウェアデザインエンジニアです。彼の投稿は彼自身の意見であり、AMDの立場、戦略、意見を代表するものではありません。第三者のサイトへのリンクは便宜上提供されているものであり、明示的に記載されていない限り、AMDはそのようなリンク先のサイトのコンテンツについて責任を負わず、いかなる推奨も示唆しておりません。

こちらの記事はAMD本社のブログ記事を機械翻訳したものです。詳しくは元記事をご覧ください。

一覧に戻る