シミュレーション ループの利用に苦労しています。各サイクルで 3 つのカーネルが起動されます。次回のステップ サイズは、2 番目のカーネルによって計算されます。
while (time < end)
{
kernel_Flux<<<>>>(...);
kernel_Timestep<<<>>>(d_timestep);
memcpy(&h_timestep, d_timestep, sizeof(float), ...);
kernel_Integrate<<<>>>(d_timestep);
time += h_timestep;
}
単一のフロートをコピーするだけで済みます。不必要な同期を避ける最も効率的な方法は何ですか?
前もって感謝します。:-)