I was trying to figure the time taken to compile OpenCL code through AMD's OpenCL compiler on windows. Does the clBuildProgram handles all the job of (compiling & linking) or it offloads some of it's functionalities to clEnqueueNDRangeKernel, clCreateKernel or any other API.
clBuildprogram should build program fully. but you can try add clCreateKernel too.
Originally posted by: nou clBuildprogram should build program fully. but you can try add clCreateKernel too.
I looked at the OpenCL-spec for clCreateKernel. The documentation says it creates a kernel object. are there any documents which will give me more details about what exactly constitues creating kernel object. How it is diffirent from clBuildprogram.
I think that detail may change from one implementation to another. Although from my experiments with opencl i am sure that atleast the compilation of kernels happens in that function.