I'm trying to initialize OpenCL 2.0 on AMD Fury X and I'm looking at the value of __OPENCL_VERSION__
. It is 120 no matter what. I'm looking inside my driver and both #define __OPENCL_VERSION__ 120
and #define __OPENCL_VERSION__ 200
can be found there.
Does there need to be a special flag somewhere to enable version 2.0? I have the following platform and device:
OpenCL platform 'AMD Accelerated Parallel Processing' by Advanced Micro Devices, Inc., version OpenCL 2.0 AMD-APP (1912.5), FULL_PROFILE
device: Advanced Micro Devices, Inc. 'Fiji' (driver version: 1912.5 (VM))
OpenCL version: OpenCL 2.0 AMD-APP (1912.5)
OpenCL "C" version: OpenCL C 2.0
EDIT
Ah, silly. It seems to help to specify -cl-std=CL2.0
in the compiler options in clCreateProgramWithSource
. Is that supposed to be the expected behavior?