OpenCL* for CPU
Ask questions and share information on Intel® SDK for OpenCL™ Applications and OpenCL™ implementations for Intel® CPU.
Announcements
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.
1719 Discussions

Offline Compiler 2012 crashes on whole file and can't compile single kernel

Raistmer
Beginner
334 Views

I just installed intel's OpenCL SDK 2012 on Ivy Bridge based Windows 7 x64 PC and trying to perform offline compilation for my OpenCL file.

When I load whole file into offline compiler and try to build it crashes and offers to send report to Microsoft.

When I paste only single kernel into it it refuse to build with next error:

Failed to get platform id...
Build failed!

What is wrong and how it can be fixed?

 

0 Kudos
4 Replies
Raghupathi_M_Intel
334 Views
"Failed to get platform id..." tells me that there is some problem with your OpenCL installation. Can you install and run gpucaps viewer and let me know what openCL platforms and devices it reports? Thanks, Raghu
0 Kudos
Raistmer
Beginner
334 Views
Thanks for suggestion. GPUcaps crashed too. The reason was remote access through RDP. When I logged on locally Intel Offline compiler started to work. Why remote access affects Intel OpenCL platform as whole? GPU device should become unavailable indeed, but why block CPU device also ??? Hard crash not the best way to handle remote access sessions... And another issue: Using default instruction set architecture. Intel OpenCL CPU device was found! Device name: Intel(R) Core(TM) i5-3470 CPU @ 3.20GHz Device version: OpenCL 1.1 (Build 31360.31441) Device vendor: Intel(R) Corporation Device profile: FULL_PROFILE :75:9: error: 'M_PI' macro redefinition is not allowed in OpenCL < stdin >:260:9: note: previous definition is here Build failed! My kernels file doesn't include < stdin > And exactly same file compiled OK in OpenCL platforms of another vendors (AMD, nVidia). Why Intel includes silently ?
0 Kudos
Raghupathi_M_Intel
334 Views
I am not sure why the offline compilation failed for you. I just tried compiling a cl file though RDP on the CPU and the compilation was successful. I am using SDK 2013, though. Regarding the second issue, can you attach your kernel here for me to take a look? Raghu
0 Kudos
Raistmer
Beginner
334 Views
I don't think for that second issue full kernel or full CL file needed. Here the problem line: #define M_PI 3.14159265358979323846264338f When I changed it to: #if USE_OPENCL_INTEL //R: Intel SDK includes silently that contains Pi definition #else #define M_PI 3.14159265358979323846264338f #endif And call CL file build as: #elif USE_OPENCL_INTEL strcpy(buildoptions,"-w -DRESULT_SIZE=32 -cl-unsafe-math-optimizations -DUSE_OPENCL_INTEL"); ... err = clBuildProgram(program, 1, &device_id, buildoptions, NULL, NULL); whole file compiled OK so I can run app on Intel's GPU OpenCL device. Other platforms need M_PI define...
0 Kudos
Reply