Использование Eigen LeastSquaresConjugateGradient параллельно

Я пытаюсь решить линейную систему уравнений вида Ax=b с градиентом LeastSquaresConjugate из собственной библиотеки, а A - разреженная матрица.

Решатель LeastSquaresConjugateGradient >;

solver.compute (A);

х = решатель.сольв (б);

В принципе работает отлично. Но я хочу использовать это для довольно больших матриц и, следовательно, было бы неплохо запустить это параллельно. В документации Eigen упоминаются только следующие строки.

omp_set_num_threads (2);

setNbThreads (2);

Кроме того, в документации говорится, что подпрограмма LeastSquaresConjugateGradient должна работать параллельно.

Я также устанавливаю количество потоков в bash путем экспорта OMP_NUM_THREADS=2

Но все равно я не получаю прирост производительности вообще. Что я делаю неправильно??

0 ответов

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