C Specification
To query the host clock, call the function:
// Provided by CL_VERSION_2_1
cl_int clGetHostTimer(
cl_device_id device,
cl_ulong* host_timestamp);
| clGetHostTimer is missing before version 2.1. |
Parameters
-
device is a device returned by clGetDeviceIDs.
-
host_timestamp will be updated with the value of the current timer in nanoseconds. The resolution of the timer may be queried via clGetPlatformInfo and the flag
CL_PLATFORM_.HOST_ TIMER_ RESOLUTION
Description
clGetHostTimer returns the current value of the host clock as seen by device. This value is in the same timebase as the host_timestamp returned from clGetDeviceAndHostTimer. The implementation will return with as low a latency as possible to allow a correlation with a subsequent application sampled time. The host timestamp and device timestamp returned by this function and clGetDeviceAndHostTimer each have an implementation-defined timebase. The timestamps will always be in their respective timebases regardless of which query function is used. The timestamp returned from clGetEventProfilingInfo for an event on a device and a device timestamp queried from the same device will always be in the same timebase.
clGetHostTimer will return CL_SUCCESS with a time value in
host_timestamp if provided.
Otherwise, it returns one of the following errors:
-
CL_INVALID_if device is not a valid device.DEVICE -
CL_INVALID_if the platform associated with device does not support device and host timer synchronization.OPERATION -
CL_INVALID_if host_timestamp isVALUE NULL. -
CL_OUT_if there is a failure to allocate resources required by the OpenCL implementation on the device.OF_ RESOURCES -
CL_OUT_if there is a failure to allocate resources required by the OpenCL implementation on the host.OF_ HOST_ MEMORY
Document Notes
For more information, see the OpenCL Specification
This page is extracted from the OpenCL Specification. Fixes and changes should be made to the Specification, not directly.