サイトのオーバーヘッドを軽減

サイト・オーバーヘッドは、並列実行の開始時 (および終了時) に費やされる時間です。このオーバーヘッドには、スレッドの生成とコアへのスケジュール、およびスレッドが実行を開始するまでの待機時間が含まれます。いくつかの並列フレームワークの実装では、実際のスレッドは一度しか生成されません。並列サイトの終わりにスレッドを破棄することなく、次の並列サイトまでスレッドをサスペンドします。この場合、サイトのオーバーヘッドはサイトに最初に入る時にのみ生じます。

サイトのオーバーヘッドは、サイトが実行された回数に比例します。サイトが非常に頻繁に実行されるか、インスタンスの平均時間が非常に短い場合、多くの計算を含む場所をサイトとして選択すべきです。

スータビリティー・ツールがサイト・オーバーヘッドの軽減を推奨する場合、並列サイトが小さすぎることが考えられます。

サイト・オーバーヘッドを軽減するには、サイトの実行中により多くのワークを実行します。複数のサイト実行を 1 つにまとめることもできます。例えば、ループの内部ではなく外部にサイトを配置することを検討します。