Информационно-аналитический портал
Высокопроизводительные
вычисления на WINDOWS-кластерах
   

 
 
  Главная
  Новости
  Как создать Windows-кластер
  Компьютеры
  Технологии
  Параллельное программирование
  Библиотеки, пакеты, приложения
  Библиотеки  
  Пакеты  
  Приложения  
  Метакомпьютинг, GRID
  Обучение
  Исследования
 
  
Логин:    
Пароль:    
Запомнить:
 Забыли пароль? Регистрация 
  
 
Microsoft HPC RussiaБиблиотеки, пакеты, приложенияБиблиотекиБиблиотеки для решения задач линейной алгебры
 

Библиотеки для решения задач линейной алгебры

Библиотека PETSс

Библиотека PETSc (The Portable, Extensible Toolkit for Scientific Computation) предназначена для численного решения систем дифференциальных уравнений в частных производных на многопроцессорных вычислительных системах с распределенной памятью. Она представляет собой набор структур данных и процедур, являющихся строительными блоками для реализации крупномасштабных параллельных приложений. Для осуществления взаимодействия параллельных процессов через обмен сообщениями PETSc использует стандарт MPI.

PETSc включает в себя расширяемый набор параллельных процедур решения линейных и нелинейных уравнений, а также интегрирования, которые могут использоваться в приложениях, написанных на алгоритмических языках Fortran, C, и C++.

PETSc предоставляет удобные автоматизированные механизмы, необходимые при разработке параллельных приложений, такие как процедуры параллельной матричной и векторной сборки. Библиотека организована иерархически, что позволяет пользователям применять уровень абстракции, наиболее подходящий для решения определенной задачи. За счет использования в PETSc объектно-ориентированного подхода достигается исключительная гибкость.

Библиотека PLAPACK

PLAPACK (Parallel Linear Algebra Package) – пакет параллельных процедур линейной алгебры, который включает параллельные версии процедур решения систем линейных уравнений с помощью LU и QR-разложений, а также разложения Холесского.

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

Множество пользовательских функций составляет PLAPACK API. Среди таких функций необходимо выделить широкий набор средств для создания объектов в удобной форме. В PLAPACK определены несколько типов объектов линейной алгебры, такие как матрицы, векторы, мультивекторы (совокупность векторов), проектированные векторы и мультивекторы. Для реализации параллелизма PLAPACK использует геометрическое декартово распределение матриц и векторов. Разработчиками была предложена схема формирования матрицы на основе множества подматриц меньшего размера. Каждая подматрица создается на отдельном узле, причем данный процесс происходит параллельно на всех узлах. Детали распределения скрыты при помощи так называемых мнимых (шаблонных) матриц и векторов, которые описывают распределение реальных объектов между узлами многопроцессорной вычислительной системы.

Для осуществления межпроцессорных коммуникаций в PLAPACK использован интерфейс передачи сообщений MPI. При передаче сообщений в PLAPACK в основном используются коллективные операции, такие, как обобщенная передача данных от одного процесса всем процессам  (MPI_Scatter), обобщенная передача данных от всех процессов одному процессу (MPI_Gather), широковещательная рассылка (MPI_Bcast) и другие.

PLAPACK включает интерфейсы для языков Fortran и С.

 

 

Новости

26.12.2007
25.12.2007
24.12.2007
17.12.2007
17.12.2007
 

   

© ННГУ, Центр компетенции в области высокопроизводительных вычислений на основе технологий Майкрософт, 2007