• 2019 Update 4
  • 03/20/2019
  • Public Content
Contents

Reusing Compilation Results with clCreateProgramWithBinary

If compilation time for an OpenCL™ program is of concern, consider reusing compilation results. It is typically faster than recreating you program from the source, but you should check if this is true for your specific program and device.
To retrieve binaries generated from calls to
clCreateProgramWithSource
and
clBuildProgram
, you can call
clGetProgramInfo
with the
CL_PROGRAM_BINARIES
parameter. For the performance-critical applications that typically precompile kernel code to an intermediate representation (IR), you can cache the resulting binaries after the first OpenCL™ compilation and reuse them on subsequent executions by calling
clCreateProgramWithBinary
. Another way to save intermediate binaries is to use the OpenCL Code builder, as described in the
User Manual - OpenCL™ Code Builder
.
Note
Intermediate representations are different for the CPU and the Intel® Graphics devices.

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.