Provided by: nvidia-cuda-dev_10.1.243-3_amd64 bug

NAME

       Event Management -

   Functions
       cudaError_t cudaEventCreate (cudaEvent_t *event)
           Creates an event object.
       __cudart_builtin__ cudaError_t cudaEventCreateWithFlags (cudaEvent_t *event, unsigned int flags)
           Creates an event object with the specified flags.
       __cudart_builtin__ cudaError_t cudaEventDestroy (cudaEvent_t event)
           Destroys an event object.
       cudaError_t cudaEventElapsedTime (float *ms, cudaEvent_t start, cudaEvent_t end)
           Computes the elapsed time between events.
       cudaError_t cudaEventQuery (cudaEvent_t event)
           Queries an event's status.
       __cudart_builtin__ cudaError_t cudaEventRecord (cudaEvent_t event, cudaStream_t stream=0)
           Records an event.
       cudaError_t cudaEventSynchronize (cudaEvent_t event)
           Waits for an event to complete.

Detailed Description

       \brief event management functions of the CUDA runtime API (cuda_runtime_api.h)

       This section describes the event management functions of the CUDA runtime application programming
       interface.

Function Documentation

   cudaError_t cudaEventCreate (cudaEvent_t * event)
       Creates an event object for the current device using cudaEventDefault.

       Parameters:
           event - Newly created event

       Returns:
           cudaSuccess, cudaErrorInvalidValue, cudaErrorLaunchFailure, cudaErrorMemoryAllocation

       Note:
           Note that this function may also return error codes from previous, asynchronous launches.

       See also:
           cudaEventCreate (C++ API), cudaEventCreateWithFlags, cudaEventRecord, cudaEventQuery,
           cudaEventSynchronize, cudaEventDestroy, cudaEventElapsedTime, cudaStreamWaitEvent, cuEventCreate

   __cudart_builtin__ cudaError_t cudaEventCreateWithFlags (cudaEvent_t * event, unsigned int flags)
       Creates an event object for the current device with the specified flags. Valid flags include:

       • cudaEventDefault: Default event creation flag.

       • cudaEventBlockingSync:  Specifies  that  event  should use blocking synchronization. A host thread that
         uses cudaEventSynchronize() to wait on an event created with this  flag  will  block  until  the  event
         actually completes.

       • cudaEventDisableTiming:  Specifies  that  the created event does not need to record timing data. Events
         created with this flag specified and the cudaEventBlockingSync flag not specified will provide the best
         performance when used with cudaStreamWaitEvent() and cudaEventQuery().

       • cudaEventInterprocess: Specifies that the created event  may  be  used  as  an  interprocess  event  by
         cudaIpcGetEventHandle(). cudaEventInterprocess must be specified along with cudaEventDisableTiming.

       Parameters:
           event - Newly created event
           flags - Flags for new event

       Returns:
           cudaSuccess, cudaErrorInvalidValue, cudaErrorLaunchFailure, cudaErrorMemoryAllocation

       Note:
           Note that this function may also return error codes from previous, asynchronous launches.

       See also:
           cudaEventCreate    (C    API),    cudaEventSynchronize,    cudaEventDestroy,    cudaEventElapsedTime,
           cudaStreamWaitEvent, cuEventCreate

   __cudart_builtin__ cudaError_t cudaEventDestroy (cudaEvent_t event)
       Destroys the event specified by event.

       An  event  may  be  destroyed  before  it  is  complete  (i.e.,  while  cudaEventQuery()   would   return
       cudaErrorNotReady).  In this case, the call does not block on completion of the event, and any associated
       resources will automatically be released asynchronously at completion.

       Parameters:
           event - Event to destroy

       Returns:
           cudaSuccess, cudaErrorInvalidValue, cudaErrorLaunchFailure

       Note:
           Note that this function may also return error codes from previous, asynchronous launches.

       See also:
           cudaEventCreate   (C   API),    cudaEventCreateWithFlags,    cudaEventQuery,    cudaEventSynchronize,
           cudaEventRecord, cudaEventElapsedTime, cuEventDestroy

   cudaError_t cudaEventElapsedTime (float * ms, cudaEvent_t start, cudaEvent_t end)
       Computes  the  elapsed  time  between  two  events  (in  milliseconds  with  a  resolution  of around 0.5
       microseconds).

       If either event was last recorded in a non-NULL stream, the resulting time may be greater  than  expected
       (even  if  both  used the same stream handle). This happens because the cudaEventRecord() operation takes
       place asynchronously and there is no guarantee that the measured latency is actually just between the two
       events. Any number of other different stream operations could execute in between the two measured events,
       thus altering the timing in a significant way.

       If cudaEventRecord() has  not  been  called  on  either  event,  then  cudaErrorInvalidResourceHandle  is
       returned.  If  cudaEventRecord()  has been called on both events but one or both of them has not yet been
       completed (that is, cudaEventQuery() would return cudaErrorNotReady on  at  least  one  of  the  events),
       cudaErrorNotReady  is  returned.  If  either event was created with the cudaEventDisableTiming flag, then
       this function will return cudaErrorInvalidResourceHandle.

       Parameters:
           ms - Time between start and end in ms
           start - Starting event
           end - Ending event

       Returns:
           cudaSuccess,      cudaErrorNotReady,      cudaErrorInvalidValue,      cudaErrorInvalidResourceHandle,
           cudaErrorLaunchFailure

       Note:
           Note that this function may also return error codes from previous, asynchronous launches.

       See also:
           cudaEventCreate    (C    API),    cudaEventCreateWithFlags,   cudaEventQuery,   cudaEventSynchronize,
           cudaEventDestroy, cudaEventRecord, cuEventElapsedTime

   cudaError_t cudaEventQuery (cudaEvent_t event)
       Queries the status of all work currently captured by event. See cudaEventRecord() for details on what  is
       captured by an event.

       Returns cudaSuccess if all captured work has been completed, or cudaErrorNotReady if any captured work is
       incomplete.

       For  the  purposes  of  Unified  Memory,  a  return  value  of cudaSuccess is equivalent to having called
       cudaEventSynchronize().

       Parameters:
           event - Event to query

       Returns:
           cudaSuccess,      cudaErrorNotReady,      cudaErrorInvalidValue,      cudaErrorInvalidResourceHandle,
           cudaErrorLaunchFailure

       Note:
           Note that this function may also return error codes from previous, asynchronous launches.

       See also:
           cudaEventCreate    (C    API),   cudaEventCreateWithFlags,   cudaEventRecord,   cudaEventSynchronize,
           cudaEventDestroy, cudaEventElapsedTime, cuEventQuery

   __cudart_builtin__ cudaError_t cudaEventRecord (cudaEvent_t event, cudaStream_t stream = 0)
       Captures in event the contents of stream at the time of this call. event and stream must be on  the  same
       device.  Calls such as cudaEventQuery() or cudaStreamWaitEvent() will then examine or wait for completion
       of the work that was captured. Uses of stream after this call do not modify event. See  note  on  default
       stream behavior for what is captured in the default case.

       cudaEventRecord()  can  be  called  multiple  times  on  the same event and will overwrite the previously
       captured state. Other APIs such as cudaStreamWaitEvent() use the most recently captured state at the time
       of the API call, and are not affected by later calls to  cudaEventRecord().  Before  the  first  call  to
       cudaEventRecord(), an event represents an empty set of work, so for example cudaEventQuery() would return
       cudaSuccess.

       Parameters:
           event - Event to record
           stream - Stream in which to record event

       Returns:
           cudaSuccess, cudaErrorInvalidValue, cudaErrorInvalidResourceHandle, cudaErrorLaunchFailure

       Note:
           This function uses standard  semantics.

           Note that this function may also return error codes from previous, asynchronous launches.

       See also:
           cudaEventCreate    (C    API),    cudaEventCreateWithFlags,   cudaEventQuery,   cudaEventSynchronize,
           cudaEventDestroy, cudaEventElapsedTime, cudaStreamWaitEvent, cuEventRecord

   cudaError_t cudaEventSynchronize (cudaEvent_t event)
       Waits until the completion of all work currently captured in event. See cudaEventRecord() for details  on
       what is captured by an event.

       Waiting  for  an  event  that  was created with the cudaEventBlockingSync flag will cause the calling CPU
       thread to block until the event has been completed by the device. If the cudaEventBlockingSync  flag  has
       not been set, then the CPU thread will busy-wait until the event has been completed by the device.

       Parameters:
           event - Event to wait for

       Returns:
           cudaSuccess, cudaErrorInvalidValue, cudaErrorInvalidResourceHandle, cudaErrorLaunchFailure

       Note:
           Note that this function may also return error codes from previous, asynchronous launches.

       See also:
           cudaEventCreate (C API), cudaEventCreateWithFlags, cudaEventRecord, cudaEventQuery, cudaEventDestroy,
           cudaEventElapsedTime, cuEventSynchronize

Author

       Generated automatically by Doxygen from the source code.

Version 6.0                                        28 Jul 2019                               Event Management(3)