33
Сравнение систем параллельного программирования MPI, PVM и HPF А. В. Комолкин Физический факультет Санкт-Петербургского государственного университета

Сравнение систем параллельного программирования MPI, PVM и HPF

  • Upload
    alexis

  • View
    75

  • Download
    1

Embed Size (px)

DESCRIPTION

Сравнение систем параллельного программирования MPI, PVM и HPF. А. В. Комолкин Физический факультет Санкт-Петербургского государственного университета. Сравнение систем параллельного программирования MPI, PVM и HPF. А. В. Комолкин Физический факультет - PowerPoint PPT Presentation

Citation preview

Page 1: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Сравнение систем параллельного

программированияMPI, PVM и HPF

А. В. Комолкин

Физический факультетСанкт-Петербургского государственного университета

Page 2: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Сравнение систем параллельного

программированияMPI, PVM и HPF

А. В. Комолкин

Физический факультетСанкт-Петербургского государственного университета

Page 3: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Место высокопроизводительных

вычисленийв нашей жизни

А. В. Комолкин

Физический факультетСанкт-Петербургского государственного университета

Page 4: Сравнение систем параллельного программирования MPI, PVM  и  HPF

ЭТОМОЕ

ЛИЧНОЕМНЕНИЕ

А. В. Комолкин

Page 5: Сравнение систем параллельного программирования MPI, PVM  и  HPF
Page 6: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Какой сложности должна быть задача?

Page 7: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Какой сложности должна быть задача?

• ≤10 минут — интерактивная задачи

Page 8: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Какой сложности должна быть задача?

• ≤10 минут — интерактивная задачи• >10 минут — пакетный режим

Page 9: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Какой сложности должна быть задача?

• ≤10 минут — интерактивная задачи• >10 минут — пакетный режим• <15 часов — ночной счет

Page 10: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Какой сложности должна быть задача?

• ≤10 минут — интерактивная задачи• >10 минут — пакетный режим• <15 часов — ночной счет• X суток, в течение которых пользователь забывает, с

какими начальными данными запускается задача…

Page 11: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Какой сложности должна быть задача?

• ≤10 минут — интерактивная задачи• >10 минут — пакетный режим• <15 часов — ночной счет• X суток, в течение которых пользователь забывает, с

какими начальными данными запускается задача…

• Задача реального времени

Page 12: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Как решается задача на компьютере?

Page 13: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Как решается задача на компьютере?

1. Постановка задачи начальником2. Конкретизация условия задачи, уточнение области

применимости

Page 14: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Как решается задача на компьютере?

1. Постановка задачи начальником2. Конкретизация условия задачи, уточнение области

применимости3. Построение физической (химической…) модели4. Построение математической модели5. Выбор численных методов

Page 15: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Как решается задача на компьютере?

1. Постановка задачи начальником2. Конкретизация условия задачи, уточнение области

применимости3. Построение физической (химической…) модели4. Построение математической модели5. Выбор численных методов6. Описание структур данных и построение алгоритма7. Программирование

Page 16: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Как решается задача на компьютере?

1. Постановка задачи начальником2. Конкретизация условия задачи, уточнение области

применимости3. Построение физической (химической…) модели4. Построение математической модели5. Выбор численных методов6. Описание структур данных и построение алгоритма7. Программирование8. Тестирование и отладка9. Запуск на счет…

Page 17: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Как решается задача на компьютере?

1. Постановка задачи начальником2. Конкретизация условия задачи, уточнение области

применимости3. Построение физической (химической…) модели4. Построение математической модели5. Выбор численных методов6. Описание структур данных и построение алгоритма7. Программирование8. Тестирование и отладка9. Запуск на счет…

Page 18: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Стратегия написания программ

1. Разделение на подзадачи

2. Выбор подходящего языка программирования для каждой подзадачи

– Умеет работать с выбранными структурами данных– Содержит средства для решения поставленных задач (связь,

графика, управление аппаратурой, …)

3. Выбор подходящей среды (среды разработчика, операционной, графической, …)

Page 19: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Рекомендуемая литература

1. Н. Вирт «Алгоритмы + структуры данных = программы»

2. Дал, Дейкстра, Хоор. «Структурное программирование»

Page 20: Сравнение систем параллельного программирования MPI, PVM  и  HPF
Page 21: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Сравнение систем параллельного

программированияMPI, PVM и HPF

А. В. Комолкин

Физический факультетСанкт-Петербургского государственного университета

Page 22: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Основные системы

• MPI — Message Passing Interface• PVM — Parallel Virtual Machine• HPF — High Performance FORTRAN

Page 23: Сравнение систем параллельного программирования MPI, PVM  и  HPF

MPI

• Библиотека подпрограмм обмена данными• Команда для запуска программы “mpirun”

• Дополнительные средства (параллельный ввод/вывод, параллельная графика, профилирование…)

Page 24: Сравнение систем параллельного программирования MPI, PVM  и  HPF

PVM

• Библиотека подпрограмм обмена данными• Подсистема для запуска программ на

исполнение

Page 25: Сравнение систем параллельного программирования MPI, PVM  и  HPF

HPF

• Язык FORTRAN-90• Комментарии-директивы транслятора• Команда для запуска программы (иногда)

Page 26: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Краткое сравнениеMPI PVM

• Супер-ЭВМ, однородные кластеры

• Одна (одинаковая) программа

• Постоянное число процессов

• Не устойчив к сбоям• Больше подпрограмм

обмена• Параллельный В/В

• (Гетерогенные) кластеры .

• Две программы (Master/slave)

• Динамический запуск процессов

• Устойчивость к сбоям• Меньше подпрограмм

обмена• Нет параллельного В/В

Page 27: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Свойства HPF

• Один исходный текст для последовательной и параллельной версий

• Единое адресное пространство данных• Скрытый от программиста обмен

данными• Излишние синхронизации и обмены

Page 28: Сравнение систем параллельного программирования MPI, PVM  и  HPF
Page 29: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Домашнее задание

[email protected]

Page 30: Сравнение систем параллельного программирования MPI, PVM  и  HPF

FORTRAN

dx = dx - boxl*dnint(dx/boxl)

dnint( x )

dsign( dble( idint( dabs( x )+0.5d0 ) ), dx )

Какое из выражений вычисляется быстрее и почему?

Page 31: Сравнение систем параллельного программирования MPI, PVM  и  HPF

С

#include “math.h”

r = sin(x); e = exp(y);

# gcc tst.c -O0 -ffast-math -lm# gcc tst.c -O1 -ffast-math

Почему во втором случае не требуется включениебиблиотеки libm.a (libm.so) в исполняемую программу?

Page 32: Сравнение систем параллельного программирования MPI, PVM  и  HPF

Рекомендуемая литература

Немнюгин С., Чаунин М., Комолкин А. Эффективнаяработа: UNIX. — СПб, «Питер», 2001. 688 с.

Немнюгин С.А., Стесик О.Л. Параллельное программированиедля многопроцессорных вычислительных систем. —СПб, БХВ-Петербург, 2002. 400 с.

Page 33: Сравнение систем параллельного программирования MPI, PVM  и  HPF