Estoy ejecutando CentOS 6. Mi programa OpenCL no detecta mi tarjeta gráfica como opción y, en cambio, simplemente se ejecuta en mi CPU. Mi programa intenta encontrar y utilizar el dispositivo más rápido, pero solo encuentra una opción.
OpenCL Platform 0: AMD Accelerated Parallel Processing
OpenCL Device 0: Intel(R) Core(TM) i7-3612QM CPU @ 2.10GHz Gflops 16.808000
Dispositivo CL abierto: CPU Intel(R) Core(TM) i7-3612QM a 2,10 GHz
He encontrado varias formas de informarme de que hay un problema. glxinfo me da lo siguiente:
name of display: :0.0
Xlib: extension "GLX" missing on display ":0.0".
Xlib: extension "GLX" missing on display ":0.0".
Xlib: extension "GLX" missing on display ":0.0".
Xlib: extension "GLX" missing on display ":0.0".
Segmentation fault (core dumped)
lspci me dice que tengo dos controladores VGA, lo que, según tengo entendido, nunca debería ser el caso:
lspci-v | grep "controlador VGA"
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09) (prog-if 00 [VGA controller])
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Thames [Radeon HD 7550M/7570M/7650M] (prog-if 00 [VGA controller])
(Obviamente la que quiero usar es la segunda; la tarjeta gráfica Radeon)
Mis Xorg.*.log(s) no mencionan nada sobre AMD. Dice lo siguiente, que supongo que es importante (¿usar Intel como controlador autoconfigurado en lugar de AMD?):
[ 31.269] (==) Matched intel as autoconfigured driver 0
Dicho todo esto, estoy bastante seguro de que mi problema tiene algo que ver con mis controladores o la falta de ellos. Actualizaré esta publicación mientras intento resolver el problema, ¡pero cualquier ayuda probablemente marcará la diferencia!
Actualización 1: sé con certeza que son mis controladores (o la falta de ellos), no mi código porque mi código exacto encuentra y ejecuta el código en la GPU.