Может ли библиотека Intel MKL Pardiso работать с MPI?

#thread-safety #mpi #intel-mkl #pardiso

#потокобезопасность #mpi #intel-mkl #pardiso

Вопрос:

В настоящее время я использую библиотеку Intel MKL для решения линейной системы.

Насколько я знаю, библиотека Intel MKl не поддерживает распараллеливание MPI.

  1. Ранее
  • У меня есть одна большая целевая система для вычисления => таким образом, создается одна большая линейная система для решения
  1. Я планирую
  • Разделить большую систему на части (для каждого процесса MPI) => построить несколько небольших линейных систем (независимых друг от друга) для решения

Это отличается от того, что обычно делают параллельные решатели (распределяют «одну» большую матрицу по процессам MPI). У меня будет несколько независимых небольших матриц, и я сделаю так, чтобы процессы MPI решали их независимо.

Мой вопрос в том, можно ли использовать решатель Intel MKL Pardiso таким образом (вызывается одновременно из нескольких процессов MPI для решения независимых проблем)?

Я добавляю картинку, чтобы описать то, что я собираюсь сделать, более понятным способом.

введите описание изображения здесь

Ответ №1:

Текущая версия MKL предоставляет кластерную версию Intel MKL Pardiso ( cluster_sparse_solver). Вы можете проверить ссылку на ссылку MKL, следуя link:https://software.intel.com/content/www/us/en/develop/documentation/mkl-developer-reference-c/top/sparse-solver-routines/parallel-direct-sparse-solver-for-clusters-interface.html.