OpenCL* for CPU
Ask questions and share information on Intel® SDK for OpenCL™ Applications and OpenCL™ implementations for Intel® CPU.
This forum covers OpenCL* for CPU only. OpenCL* for GPU questions can be asked in the GPU Compute Software forum. Intel® FPGA SDK for OpenCL™ questions can be ask in the FPGA Intel® High Level Design forum.

Lots of questions!

Hi I have some questions:
*More OS support: Win 64 support and Linux
*Is this release capable of generating AVX code either via autovectorization or using float8 for example
*Can we expect to have Intel MIC support when released?
*There is a way to force the compiler to not autovectorize so it behaves like amd opencl implementation..
this would allow perf comparisons between AMD and Intel opencl CPU implementations in a more apples and apples comparison and also compare the improvements of autovectorization.. I hope autovectorization is disabled passing flag setting for null optimizin but that wouldn't be fair also..
*What the expected frecuency of updates of alpha version till release of commercial product i.e. we can expect quarterly updates for example?
0 Kudos
2 Replies

Thanks for sharing your feedback.

The current version of the Intel OpenCL SDK is only a technology preview. When a new update will be available, we announce it in this forum.

For our future products and technology support such as Intel MIC Architecture and AVX, we are evaluating when and where OpenCL support will intercept our products, however no announcement has been made.

0 Kudos

Regarding your question about disabling the autovectorization: Intel OpenCL SDK supports the optional __attribute__((vec_type_hint())), as defined in the OpenCL 1.1 specification, section 6.7.2:

"The optional __attribute__((vec_type_hint())) is a hint to the compiler and is intended to be a representation of the computational width of the __kernel, and should serve as the basis for calculating processor bandwidth utilization when the compiler is looking to autovectorize the code."

Using this attribute in the kernel declaration with values like float4, int4 etc. will disable the autovectorization of the specific kernel.

Ofer Rosenberg
OpenCL Tech Lead

0 Kudos