编译以下OpenCL内核时:
#pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable
__kernel void kernel(__global ulong* mem) {
atom_cmpxchg(&mem[0], 0, 1);
}
我收到以下错误:
error: undefined reference to `_Z12atom_cmpxchgPVU8CLglobalmmm()'
我使用Rust的OpenCL和OCL库。我的OpenCL版本是1.2,我的GPU是Intel(R)Iris(TM)图形550,我在macOS Sierra 10.12.1下。
答案 0 :(得分:2)
使用CL_DEVICE_EXTENSIONS
检查设备的clGetDeviceInfo()
。在macOS下,此GPU可能不支持cl_khr_int64_base_atomics
。