Programming Guide

Contents

Emulator Environment Variables

The following table lists environment variables that you can use to modify the behavior of the emulator:
Emulator Environment Variables
Environment Variable
Description
CL_CONFIG_CPU_EMULATE_DEVICES
Controls the number of identical emulator devices provided by the emulator platform. If not set, a single emulator device is available. Therefore, set this variable only if you want to emulate multiple devices.
OCL_TBB_NUM_WORKERS
Indicates a maximum number of threads that the emulator can use. The default value is 32, and the maximum value is 255. Each thread can run a single kernel. If the application requires several kernels to be executing simultaneously, you must set the
OCL_TBB_NUM_WORKERS
environment variable appropriately to the number of kernels used or a higher value.
CL_CONFIG_CPU_FORCE_LOCAL_MEM_SIZE
Set the amount of available local memory with units. For example:
8MB
,
256KB
, or
1024B
.
CL_CONFIG_CPU_FORCE_PRIVATE_MEM_SIZE
Set the amount of available private memory with units. For example:
8MB
,
256KB
, or
1024B
.
On Windows, the FPGA emulator can silently fail by running out of memory. As a workaround to catch this error, write your kernel code using the try-catch syntax.
CL_CONFIG_CHANNEL_DEPTH_EMULATION_MODE
When you compile your kernel for emulation, the pipe depth is different from the pipe depth generated when your kernel is compiled for hardware. You can change this behavior with the
CL_CONFIG_CHANNEL_DEPTH_EMULATION_MODE
environment variable. For details, see Emulate Pipe Depth.

Product and Performance Information

1

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