¿Cómo habilitar la plataforma de CPU para aplicaciones OpenCL?

8

Actualmente estoy ejecutando Ubuntu 16.04 en una máquina con una APU AMD A8-5600K y una Radeon R9 270X. El controlador amdgpu aún no es compatible con mi tarjeta y, por lo tanto, no puedo usar OpenCL en mi GPU. Sin embargo, no veo ninguna razón por la cual las aplicaciones OpenCL no puedan usar mi CPU.

He instalado todos los paquetes que se me ocurren: ocl-icd-libopencl1Instalar ocl-icd-libopencl1 , ocl-icd-opencl-devInstalar ocl-icd-opencl-dev , etc.

He escrito una aplicación simple que enumera las plataformas OpenCL disponibles y falla en la clGetPlatformIDs()llamada. ¿Qué me estoy perdiendo?


Editar: instalé el SDK de la aplicación AMD como se recomienda en la respuesta de SE6, pero todavía no aparecían plataformas. La ejecución stracereveló que el cargador OpenCL ICD no pudo encontrar libamdocl64.so.


Edición adicional: ¡éxito! Pude hacerlo funcionar usando el siguiente comando:

sudo ln -s '/opt/AMDAPPSDK-3.0/lib/x86_64/sdk/libamdocl64.so' \
    /usr/lib/x86_64-linux-gnu/libamdocl64.so

(Reemplace /optcon la ruta en la que instaló el SDK de la APLICACIÓN AMD).

Nathan Osman
fuente
¿En CPU real o iGPU?
Ciro Santilli 冠状 病毒 审查 六四 事件 法轮功

Respuestas:

1

Instale el SDK de la aplicación AMD desde el sitio web de AMD , entonces debería ver su CPU disponible como un dispositivo OpenCL.

Se6
fuente
1
Logré instalarlo pero el ICD no parece funcionar. Todavía obteniendo "sin plataformas".
Nathan Osman
Actualicé la pregunta para reflejar el progreso en la depuración de esto.
Nathan Osman
... y finalmente el éxito!
Nathan Osman