データパスを並列処理できない場合 (または十分に並列処理できない場合) は、複数のカーネル インスタンスの作成 で説明されるように、カーネル インスタンスをさらに追加してみます。この方法は、通常「複数の演算ユニット (CU) の使用」と呼ばれます。
カーネル インスタンスを追加すると、次の図に示すように、より多くのターゲット関数を並列実行できるので、アプリケーションのパフォーマンスが向上し、複数のデータ セットを異なるインスタンスで同時に処理できます。ホスト アプリケーションがカーネルを継続的にビジー状態にしておくことができる場合は、アプリケーションのパフォーマンスはインスタンス数に比例して向上します。
図 1. 複数の演算ユニットを使用してパフォーマンスを向上
複数の演算ユニットの使用チュートリアルで説明されるように、Vitis テクノロジではインスタンスを追加することにより簡単にパフォーマンスを向上できます。
ここまでで、パフォーマンス目標を達成するためにハードウェアに必要な並列処理の量と、データ幅とカーネル インスタンスを組み合わせることにより並列処理を達成する方法について理解できたはずです。