0
複数の連続するCUDAイベント(1つのストリーム内)がある場合(たとえば、cudaMemcpyに続いてカーネルが起動し、別のcudaMemcpyが続く)、安全/最後のイベントでのみ同期しますか?例:cudaでタイミングをとる
cudaEventRecord(event1_start);
// do something
cudaEventRecord(event1_stop);
cudaEventRecord(event2_start);
// do something else
cudaEventRecord(event2_stop);
cudaEventSynchronize(event2_stop);
cudaEventElapsedTime(&time1, event1_start, event1_stop);
cudaEventElapsedTime(&time2, event2_start, event2_stop);
私の理解では、これらのイベントと実際のcuda呼び出しはFIFOキューに入れられます。 CPUは最後のイベントが記録されるまで待ってからすべてのタイミングを記録する必要があります。これは正しいです?
ありがとうございます!