MPI - MPICH+OpenMPI

Планы, идеология, архитектура и т.п.

Модератор: Модераторы

MPI - MPICH+OpenMPI

Сообщение Vadim » 10.10.2019 11:31:53

https://github.com/VadimAnIsaev/FreePascal-MPI

Выложены модули для работы с двумя популярными библиотеками MPI: MPICH и OpenMPI.
Эти модули разрабатывались для курсов параллельного программирования тех университетов, где программирование преподаётся с помощью языка Паскаль. Дабы студентам не пришлось учить второй язык и тем самым окончательно ополоумить. :D
Теоретически модули работают. :-) По крайней мере тестовые программы в каталогах "examples" компилируются, запускаются и выполняют то, что нужно. Это даёт надежду, что все учебные программы, которые даются на курсах по параллельному программированию тоже будут работать, если их перекалякать в паскалевский код. Однако протестировать все функции MPI у меня нет технических возможностей.
Зачем нужны эти модули?
На нашем сайте когда-то очень давно была выложена статья Распределенные вычисления на FreePascal под Windows. Однако её использование сейчас невозможно.
1) Тот модуль "mpi.pp", который там предлагается, прекрасно компилируется, но не работает. :D Для исправления его нерабочести вполне достаточно заменить значение константы MPI_COMM_WORLD с 91 на $44000000 и все учебные примеры начнут работать. Но...
2) Этот модуль может работать исключительно с библиотекой MPICH исключительно для Windows. И если "виндознутость" модуля поправить очень легко, то проблему совместимости с OpenMPI решить не удасться вообще. Дело в том, что структуры данных в OpenMPI кардинально отличаются от структур в MPICH.
Vadim
долгожитель
 
Сообщения: 3754
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: MPI - MPICH+OpenMPI

Сообщение Alex2013 » 12.10.2019 17:11:31

PasMP - a parallel-processing/multi-processing library for Object Pascal
:arrow: https://github.com/BeRo1985/pasmp
Alex2013
долгожитель
 
Сообщения: 1538
Зарегистрирован: 03.04.2013 11:59:44

Re: MPI - MPICH+OpenMPI

Сообщение Vadim » 12.10.2019 20:18:14

Alex2013
А Вы мне зачем эту ссылку кинули? :D
Vadim
долгожитель
 
Сообщения: 3754
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: MPI - MPICH+OpenMPI

Сообщение Alex2013 » 13.10.2019 12:22:47

Мне показалось что это Библиотека на ту же (или похожую ) тему ... и вроде в отличии от предложной в шапке РАБОЧАЯ ! :idea: Или я что-то перепутал ? :roll:
Alex2013
долгожитель
 
Сообщения: 1538
Зарегистрирован: 03.04.2013 11:59:44

Re: MPI - MPICH+OpenMPI

Сообщение Vadim » 13.10.2019 15:16:13

Alex2013 писал(а):Или я что-то перепутал ?

Да так, самую малость... :D
Та ссылка, что Вы дали - это многопоточные приложения, т..е. приложения, которые действуют исключительно в рамках одного адресного пространства. MPI - это принципиально иная технология. Там запускается большое количество процессов, каждый из которых работает в собственном адресном пространстве. Естественно, запускать их на одном компе большого смысла не имеет, поэтому их поле деятельности - вычислительные кластеры с сотнями и тысячами увязанных в одну (желательно высокоскоростную) сеть. К примеру, если у Вас есть корзина для блэйд-серваков HP C7000 с 16 блэйдами, то многопоточное приложение можно запустить только на одном серваке. Это, при максимальной везухе, 2х64 гипертрейдинговых потока. Дальнейшее распоточивание скорости не прибавляет (в лучшем случае). А вот MPI - это 2х16 (по числу серваков) и, в случае многопоточности, ещё умножить на 32 ядра. Т.е. что у нас получается - 32 процесса х 32/64 потока итого 1024/2048 вычислителя (MPI) вместо 64 (multithreading). ;-)
Vadim
долгожитель
 
Сообщения: 3754
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: MPI - MPICH+OpenMPI

Сообщение Alex2013 » 13.10.2019 23:04:57

Ух ! "Хорошо иметь кластер в деревне !"() По мотивам рекламы.
:wink:
Зы
И что студентам есть где "поиграться" на реальном "MPI железе" ? Или просто обычную локалку напрягают ? :roll:
Alex2013
долгожитель
 
Сообщения: 1538
Зарегистрирован: 03.04.2013 11:59:44

Re: MPI - MPICH+OpenMPI

Сообщение Vadim » 14.10.2019 03:50:28

Alex2013 писал(а):И что студентам есть где "поиграться" на реальном "MPI железе" ? Или просто обычную локалку напрягают ?

Сейчас студентов вообще не сильно напрягают. :D Впрочем, если у студента есть мозги, до идеи локалки он сам дойдёт. Правда у некоторых универов кластеры доступны, так что не всё так плохо. :-)
Я, для экспериментов, делал свой собственный кластер на аналогах RaspberryPi. :-)
Кстати говоря, локалку в качестве кластера, используют не только студенты. К примеру в институте проблем химфизики в Черноголовке, кластер как раз на локалке сделан. По крайней меры был ещё недавно. Надо сказать, что скоростная сеть типа InfiniBand штука крайне дорогая, так что сами понимаете, науке тут не сильно светит. Хотя ситуация сейчас меняется в лучшую сторону. Уже сделано несколько проектов на основе сети "Ангара", там бабосиков меньше надо...
Vadim
долгожитель
 
Сообщения: 3754
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск


Вернуться в Разработки на нашем сайте

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 8

Рейтинг@Mail.ru