cudaEventCreateWithFlags with a flag cudaEventDisableTiming


I want to synchronise my streams and for that reason I am using events. I have a question about two version of cudaEventCreate:

  1. cudaEventCreate
  2. cudaEventCreateWithFlags and flag=cudaEventDisableTiming

When should I use the second version?
Does second version help me to have more chance for have kernel run overlaping with other streams (because global synchronization points are not introduced and enhance opportunities)?

From the documentation:

So you should use that flag (and not cudaEventBlockingSync) for best performance when synchronizing streams with events (cudaStreamWaitEvent()).