デバイスにインスタンシエート可能なカーネルの数とインスタンシエートが必要なカーネルの数を判断 - 2020.2 Japanese

Vitis 統合ソフトウェア プラットフォームの資料: アプリケーション アクセラレーション開発 (UG1393)

Document ID
UG1393
Release Date
2021-03-22
Version
2020.2 Japanese

データパスを並列処理できない場合 (または十分に並列処理できない場合) は、複数のカーネル インスタンスの作成 に説明されているように、カーネル インスタンスをさらに追加してみます。この方法は、通常「複数の計算ユニット (CU) の使用」と呼ばれます。

カーネル インスタンスを追加すると、次の図に示すように、より多くのターゲット関数を並列実行できるので、アプリケーションのパフォーマンスが向上し、複数のデータ セットを異なるインスタンスで同時に処理できます。ホスト アプリケーションがカーネルを継続的にビジー状態にしておくことができる場合は、アプリケーションのパフォーマンスはインスタンス数に比例して向上します。

図 1. 複数の計算ユニットを使用してパフォーマンスを向上

複数の計算ユニットの使用チュートリアルに説明されているように、Vitis テクノロジではインスタンスを追加することにより簡単にパフォーマンスを向上できます。

ここまでで、パフォーマンス目標を達成するためにハードウェアに必要な並列処理の量と、データ幅とカーネル インスタンスを組み合わせることにより並列処理を達成する方法について理解できたはずです。