Библиотека Scalapack

 Scalapack

Библиотека с открытым исходным кодом ScaLAPACK (Scalable Linear Algebra Package) является версией библиотеки LAPACK для параллельных вычислений. Она содержит

  • подпрограммы  решения систем линейных уравнений,
  • обращения матриц,
  • нахождения собственных значений и собственных векторов и др.

Библиотека написана на языке Fortran 77 (за исключением нескольких подпрограмм симметричных проблем на собственные значения, написанных на языке C) и ориентирована на работу в системах с архитектурой MIMD (Multiple Instruction stream, Multiple Data stream) и программным обеспечением PVM (Parallel Virtual Machine) [ и/или MPI (Message Passing Interface)

ScaLAPACK относится к числу параллельных библиотек, при обращении к которым пользователю не приходится явно применять какие – либо конструкции специальных языков параллельного программирования или интерфейсов, поддерживающих взаимодействие параллельных процессов. Все необходимые действия “по распараллеливанию” выполняются подпрограммами из специально разработанных для этих целей пакетов.

В библиотеке ScaLAPACK можно выделить локальные и глобальные компоненты : (К локальным компонентам относятся пакеты)

  • LAPACK (Linear Algebra Package) ,
  • BLAS (Basic Linear Algebra Subprograms),
  • BLACS (Basic Linear Algebra Communication Subprograms) .
    Эти компоненты ориентированы на работу в однопроцессорном режиме.
    К глобальным компонентам относится параллельный вариант пакета BLAS — пакет PBLAS (Parallel BLAS) .