В настоящее время я использую Ubuntu 16.04 на компьютере с APU AMD A8-5600K и Radeon R9 270X. Драйвер amdgpu еще не поддерживает мою карту, и поэтому я не могу использовать OpenCL на моем GPU. Однако я не вижу причин, по которым приложения OpenCL не могут использовать мой процессор.
Я установил все пакеты, о которых могу подумать - ocl-icd-libopencl1 , ocl-icd-opencl-dev и т. Д.
Я написал простое приложение, которое перечисляет доступные платформы OpenCL, и оно перестало работать при clGetPlatformIDs()
вызове. Что мне не хватает?
Редактировать: я установил AMD APP SDK, как рекомендовано в ответе SE6, но платформы пока не появлялись. Запуск strace
показал, что загрузчик OpenCL ICD не может найти libamdocl64.so
.
Дальнейшее редактирование: успех! Я смог заставить его работать с помощью следующей команды:
sudo ln -s '/opt/AMDAPPSDK-3.0/lib/x86_64/sdk/libamdocl64.so' \
/usr/lib/x86_64-linux-gnu/libamdocl64.so
(Замените /opt
путь, по которому вы установили AMD APP SDK.)