我从我的Windows应用程序中的clCreateContext(...)
得到CL_INVALID_GL_SHAREGROUP_REFERENCE_KHR
(错误-1000),该应用程序已经初始化了OpenGL窗口。
代码为:
cl_platform_id platforms[4];
cl_uint numOfPlatforms;
clGetPlatformIDs(4, platforms, &numOfPlatforms);
cl_context_properties props[] =
{
CL_GL_CONTEXT_KHR, (cl_context_properties)wglGetCurrentContext(),
CL_WGL_HDC_KHR, (cl_context_properties)wglGetCurrentDC(),
CL_CONTEXT_PLATFORM, (cl_context_properties)(platforms[0]),
0
};
cl_device_id devices[4];
cl_uint numOfDevices;
clGetDeviceIDs(platforms[0], CL_DEVICE_TYPE_GPU, 4, devices, &numOfDevices);
cl_int createContextError;
auto clContext = clCreateContext(props, 1, devices, &pfn_notify, NULL, &createContextError);
我已经检查了当前设备的扩展,它确实支持cl_khr_gl_sharing
。
质量标准:
CPU: AMD ThreadRipper 3960x
GPU: Nvidia RTX2080s
OpenCL SDK: Khronos
1条答案
按热度按时间0kjbasz61#
这个独立的可执行文件可以在我的笔记本电脑上运行。请在您的环境中检查它的输出。
输出量:
质量标准: