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

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)