Я написал небольшой код на Python, чтобы опробовать PyOpenCL. Мой компьютер имеет двойную загрузку на Windows 10 и Ubuntu 18.04.
Когда я запускаю код в Windows, я получаю следующий вывод:
Choose platform: [0] <pyopencl.Platform 'Intel(R) OpenCL' at 0x273f86dfe50> Choice [0]:0 Choose device(s): [0] <pyopencl.Device 'Intel(R) HD Graphics 620' on 'Intel(R) OpenCL' at 0x273f95d3590> [1] <pyopencl.Device 'Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz' on 'Intel(R) OpenCL' at 0x273f82fd6e0> Choice, comma-separated [0]:1 Set the environment variable PYOPENCL_CTX='0:1' to avoid being asked again. И код работает успешно. Итак, OpenCL обнаруживает два устройства, которые его поддерживают (мой процессор и видеокарта).
Проблема в том, что когда я пытался запустить это в Ubuntu, я получаю следующую ошибку:
pyopencl.cffi_cl.LogicError: clGetPlatformIDs failed: <unknown error -1001> Очевидно, что OpenCL не может обнаружить доступные устройства в Ubuntu, хотя он работал в Windows.
Кто-нибудь знает как это решить?