C++ AMP подходит матричная библиотека для инверсии, QR-разложения

Мне требуется матричная библиотека для C++ AMP, которая способна выполнять основные операции, а также инверсию матриц для матриц произвольного размера и QR-декомпозицию.

Первоначально я обнаружил, что существует реализация BLAS AMP, однако я не смог найти нигде, где указано, может ли BLAS выполнять инверсию матриц, кто-нибудь может рассказать мне о своих возможностях и / или предложить более подходящую библиотеку параллельных матриц для AMP? Спасибо!

редактировать: я нашел библиотеку LAPACK AMP, которая способна к инверсии матрицы (я думаю), однако она все еще находится в разработке:(

2 ответа

Решение

Насколько я знаю, ваш лучший выбор - это библиотека LAPACK, с которой вы уже связаны. C++ AMP все еще довольно новый и, похоже, пока не получил большого распространения в научных вычислениях.

В разработке находятся и другие библиотеки C++ AMP, которые могут вас заинтересовать.

  1. Алгоритмы
  2. BLAS
  3. FFT
  4. Генерация случайных чисел
  5. Общие Ядра

Я не смог найти никаких библиотек LAPACK для C++ AMP. Тем не менее, есть некоторые доступные для OpenCL.

Конкретно clMAGMA из Университета Теннесси.

http://icl.cs.utk.edu/magma/software/view.html?id=152

Вам понадобится библиотека AMD OpenCL BLAS, чтобы сидеть под LAPACK отсюда:

http://developer.amd.com/tools-and-sdks/heterogeneous-computing/amd-accelerated-parallel-processing-math-libraries/

Я думаю, что это ваша единственная ставка на инвертирование матрицы с библиотеками с открытым исходным кодом на вашем GPU. Будучи openCL, он будет независим от платформы (например, C++ AMP), в отличие от CUDA.

-Матт Мусто www.mustotechnologies.com

Другие вопросы по тегам