OpenCL の世界には、キューに入れられた、送信された、開始および終了時間などのイベントのすべてのプロファイリング情報をナノ秒単位で返す関数clGetEventProfilingInfoがあります。printf
いつでもその情報にアクセスできるのでとても便利です。
たとえば、PyOpenCLを使用すると、次のようなコードを書くことができます。
profile = event.profile
print("%gs + %gs" % (1e-9*(profile.end - profile.start), 1e-9*(profile.start - profile.queued)))
これは私の仕事にとって非常に有益です。
nvprofやcompanyなどの外部プロファイリング ツールを使用する代わりに、コードでそのような情報を取得することは可能ですか?