Я пересоздал numpy, чтобы связать с blas, и я подумал, почему бы не использовать gpu-ускоренную библиотеку blas.Могу ли я связать numpy с библиотекой ускоренного blas-устройства AMD gpu
Помог ли кто-нибудь?
Я пересоздал numpy, чтобы связать с blas, и я подумал, почему бы не использовать gpu-ускоренную библиотеку blas.Могу ли я связать numpy с библиотекой ускоренного blas-устройства AMD gpu
Помог ли кто-нибудь?
Update (2014-05-22)
AMD выпустила бета-версию ядра AMD Math Library (ACML) версии 6.0, которая может разгрузить FFT и BLAS функций на GPU с помощью clMath внутри. Объявление здесь: ACML Beta 6.0 Release Leverages the Power of Heterogeneous Compute. Здесь предостережение заключается в том, что входные данные должны передаваться от процессора к графическому процессору, а выходные данные возвращаются в ЦП на каждый вызов BLAS или FFT. Поэтому у AMD есть куча скриптов для настройки, когда проблема достаточно велика, чтобы ACML использовал GPU вместо CPU.
Для полноты я также упомянул, что Nvidia поддерживает аналогичную функциональность с помощью библиотеки nvBLAS, но полагается на cuBLAS и CUDA, поэтому она не будет работать ни на чем, кроме графических процессоров Nvidia.
Оригинальный ответ
К сожалению, GPU от AMD ускорить библиотеку BLAS не может подключаться непосредственно к Numpy или любое другое приложение ожидает стандартный процессор на базе библиотеки BLAS. Причина в том, что существующим библиотекам GPU BLAS требуется сначала скопировать матрицы на GPU, прежде чем вызывать функции BLAS. Для этого требуется, чтобы кто-то модифицировал Numpy для этого копирования.
Редактировать: CLyther выглядит так, как будто он может заменить некоторые из того, что делает Numpy, и преобразует все в OpenCL. См. Здесь: http://srossross.github.io/Clyther/for_numpy_users.html
Если серверы памяти, pyCuda по крайней мере, возможно, также pyOpenCL может работать с numPy