2016-03-21 2 views
-2

Мне нужен самый быстрый пакет BLAS для умножения большой матрицы. В настоящее время я использую библиотеку armadillo, включающую blas.Наиболее подходящий пакет BLAS для матричных операций

Я провел некоторое исследование, и он указал на OpenBLAS.

После некоторых испытаний он не показал никаких улучшений. Любые мысли?

+0

Вы всегда будете в ловушке экспоненциального количества необходимых операций. Векторизация помогает. Иногда может помочь параллелизация потоков/OpenMP loop. Знание структуры матрицы, например, треугольной, может помочь. В общем, нет, вы оказались в ловушке от количества необходимых операций. –

+0

@ScottM: экспоненциальный? Это даже не кубический. Экспоненциальная функция быстрее, чем _any_ полиномиальная функция. – MSalters

+0

Можете ли вы рассказать нам, какое тестирование вы сделали? Я использую MKL BLAS вместе с armadillo, и это показывает огромные улучшения, в основном из-за распараллеливания (OpenMP). Также посмотрите [эту тему] (http://stackoverflow.com/questions/17639155/fast-lapack-blas-for-matrix-multiplication) – Darkdragon84

ответ

0

Убедитесь, что вы используете 64-битный пакет и что вы включили его в броненосец.