この関数は、PyOpenCLドキュメントではコメントされていません:http ://documen.tician.de/pyopencl/runtime.html?highlight = enqueue#pyopencl.Event.wait
私の問題は次のとおりです。forループでカーネルを呼び出す必要があり、各呼び出しの後に、を使用してコピー操作をキューに入れますpyopencl.enqueue_copy_buffer(dest, src, size)
。例でこれを見つけたので、最初にこれを.wait()
追加(つまり)で行いました。pyopencl.enqueue_copy_buffer(dest, src, size).wait()
それから私は削除.wait()
し、非常に大幅なスピードアップを得ました。
では、この機能は何のために、そしてどのような条件下でそれを放棄することができるのでしょうか?ありがとう。