I use the command clGetEventProfilingInfo with CL_PROFILING_COMMAND_END and CL_PROFILING_COMMAND_START to get the time by the kernel on the gpu device or the memory transfer ?
But how can I measure the consumed time by the command clEnqueueNDRangeKernel on the CPU and GPU ?

Should I add the user time CPU (e.g. returned by getrusage) and the time returned by clGetEventProfilingInfo for the event associated with clEnqueueNDRangeKernel?