ハードウェア アクセラレーション チュートリアルxilinx.com の Vitis™ 開発環境を参照 |
HBM の使用¶
バージョン: Vitis 2022.1
入門チュートリアル
このチュートリアルでは、DDR メモリを使用して既存のアプリケーションを HBM メモリに移行する基本的な手順について説明します。このチュートリアルではまず、DDR と HBM の構造的な違いと、実現可能な理論上の帯域幅について説明します。2 番目のセクションでは、簡単な例を使用して、DDR から HBM にアプリケーションを移行するのに必要な手順を示します。
開始前の確認事項¶
ヒント: このチュートリアルには、約 2 時間かかります。
このチュートリアルでは、次を使用します。
BASH Linux シェル コマンド。
2022.1 Vitis コア開発キット リリースおよび xilinx_u200_xdma_201830_2 および xilinx_u50_gen3x16_xdma_201920_3 プラットフォーム。必要であれば、ほかのバージョンおよびプラットフォームを使用するように変更することもできます。また、このチュートリアルを実行するには、DDR および HBM をサポートするザイリンクス Alveo™ データセンター アクセラレーション カードが必要です。
重要:
例を実行する前に、『Vitis 統合ソフトウェア プラットフォームの資料』 (UG1416) のアプリケーション アクセラレーション開発フローのインストールの手順に従って、Vitis コア開発キットをインストールしてください。
ザイリンクス Alveo™ データセンター アクセラレータ カードでアプリケーションを実行する場合は、Alveo ポートフォリオ ページの手順に従って、カードとソフトウェア ドライバーを正しくインストールしてください。
チュートリアル リファレンス ファイルの入手¶
ターミナルに
git clone http://github.com/Xilinx/Vitis-Tutorials
コマンドを入力します。Hardware_Acceleration/Feature_Tutorials/04-using-hbm
ディレクトリに移動し、reference-files
ディレクトリにアクセスします。
すべての xclbins の生成¶
このチュートリアルでは、操作を進めた結果が表示されます。ただし、xclbins を生成する場合、複数の
xclbin
を生成するのに数時間かかることがあります。これらの構築を待たずにチュートリアルに集中できるように、これらすべてを事前に構築しておくことをお勧めします。次の手順では、次の 2 つのモジュールに必要な xclbins を構築します。makefile/Makefile
のPLATFORM
変数 (使用するプラットフォームを指定) をアップデートします。ifeq ($(memtype), DDR) PLATFORM :=xilinx_u200_gen3x16_xdma_2_202110_1 else PLATFORM :=xilinx_u50_gen3x16_xdma_201920_3 endif
次のコマンドを実行して、モジュール 2 (DDR から HBM への移行) 用に 3 つの xclbins を構築します。xclbins を構築する時間は約 7 ~ 8 時間です。これらは、並行して実行することもできます。
cd 04-using-hbm/makefile; make ddr_addSeq_build hbm_addSeq_2Banks_build hbm_addSeq_overlap_build
次のコマンドを実行して、モジュール 3 (HBM 帯域幅の結果) 用の xclbins を 10 個構築します。次のコマンドはデフォルトで並列ジョブを実行するため、xclbins の構築には約 5 ~ 6 時間かかります。
cd 04-using-hbm/makefile; make build_without_rama build_with_rama
マシンに複数の構築ジョブを並行して実行するのに十分なリソースがない場合は、次のコマンドを使用してこれらを常に直列で実行できますが、その場合は数時間かかる可能性があります。
cd 04-using-hbm/makefile; make noramajob-64 noramajob-128 noramajob-256 noramajob-512 noramajob-1024 ramajob-64 ramajob-128 ramajob-256 ramajob-512 ramajob-1024;
詳細は、./makefile/Makefile を参照してください。
チュートリアルの概要¶
HBM の概要: DDR と HBM の構造的な違いと、HBM による理論的な最大帯域幅の概要を示します。
DDR から HBM への移行: 既存の DDR ベースのアプリケーションを HBM に移行する手順を説明します。
HBM 帯域幅の確認: アクセス パターンとトランザクション サイズに基づいて、1 つのカーネル ポートを使用して達成可能な帯域幅を表示します。
¶
次の手順: HBM の概要
Apache ライセンス、バージョン 2.0 (以下「ライセンス」) に基づいてライセンス付与されています。本ライセンスに準拠しないと、このファイルを使用することはできません。ライセンスのコピーは、http://www.apache.org/licenses/LICENSE-2.0 から入手できます。
適切な法律で要求されるか、書面で同意された場合を除き、本ライセンスに基づいて配布されるソフトウェアは、明示的または黙示的を問わず、いかなる種類の保証または条件もなく、「現状のまま」配布されます。ライセンスに基づく権限と制限を管理する特定の言語については、ライセンスを参照してください。
Copyright© 2020-2022 Xilinx
XD018