¿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).


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.


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
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.