Numpy se puede "enlazar/compilar" contra diferentes implementaciones de BLAS (MKL, ACML, ATLAS, GotoBlas, etc.). No siempre es fácil de configurar, pero es posible.Numpy, BLAS y CUBLAS
¿También es posible "vincular/compilar" numpy contra la implementación CUBLAS de NVIDIA?
No pude encontrar ningún recurso en la web y antes de pasar demasiado tiempo probándolo, quería asegurarme de que fuera posible.
Gracias por la información. Sé sobre las diversas bibliotecas de Python que permiten el acceso a CUDA. Sin embargo, pensé que si solo pudiera configurar Numpy para usar Cublas, no tendría que cambiar nada en el código existente (actualmente usa '' numpy.dot() '' y otras funciones de Linealg con MKL o GotoBlas2) y podría hacerlo comparaciones de rendimiento. Solo por curiosidad: ¿sabes por casualidad cuáles son las razones técnicas por las que no es posible vincular el numpy con CUBLAS? –
Se debe a que la API no es la misma, y hay una capa completa de administración de memoria de la que una aplicación estándar de blas no sabe nada. – talonmies
Esto podría cambiar la situación: http://devblogs.nvidia.com/parallelforall/drop-in-acceleration-gnu-octave/ aunque esto se aplica a la octava también debería funcionar para Numpy –