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
долгожитель
 
Сообщения: 4112
Зарегистрирован: 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
долгожитель
 
Сообщения: 2923
Зарегистрирован: 03.04.2013 11:59:44

Re: MPI - MPICH+OpenMPI

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

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

Re: MPI - MPICH+OpenMPI

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

Мне показалось что это Библиотека на ту же (или похожую ) тему ... и вроде в отличии от предложной в шапке РАБОЧАЯ ! :idea: Или я что-то перепутал ? :roll:
Alex2013
долгожитель
 
Сообщения: 2923
Зарегистрирован: 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
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: MPI - MPICH+OpenMPI

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

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

Re: MPI - MPICH+OpenMPI

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

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

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

Re: MPI - MPICH+OpenMPI

Сообщение Alex2013 » 25.10.2019 12:35:36

Ух ты! Как по заказу !"Кластер на чипе"...
"500-ядерный процессор с сетевой архитектурой связи между асинхронными ядрами " ,
https://zen.yandex.ru/media/novosti_i_f ... 00b1033954
https://maltsystem.ru/ru/news/288-mpw-500cores
Идея что называется "летала воздухе" хотя разумеется костыль это еще тот ... Но представьте "Мета кластер " из MALT-Cv2 или похожих на него камней. :idea: :roll:
Зы
Студентам есть где порезвится (Павда на С++ но можно сделать не сложный транслятор кода pas2c++)
https://maltsystem.ru/ru/malt-sw/compiler
Зы Зы
Интересно это тупой эмулятор или там реальный прототип MALT-Cv2 в онлайн доступе ?
(Что мало вероятно ... но вдруг ! :wink: )
Alex2013
долгожитель
 
Сообщения: 2923
Зарегистрирован: 03.04.2013 11:59:44

Re: MPI - MPICH+OpenMPI

Сообщение Vadim » 25.10.2019 16:00:17

Alex2013 писал(а):Идея что называется "летала воздухе" хотя разумеется костыль это еще тот ...

Ну, она действительно летала в воздухе - видеокарточки NVIDIA и RADEON прекрасно показали, что проще и дешевле делать двучиповые системы - один чип управляющий, что-нибудь вроде Xeon или, для нашего случая Байкал, а второй - счётный.
Alex2013 писал(а):Интересно это тупой эмулятор или там реальный прототип MALT-Cv2 в онлайн доступе ?

Не обязательно тупой. :D Но три конфигурации из четырёх помечены как EMU. Оставшаяся - кто ж его знает...;-)
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск


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

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 22

Рейтинг@Mail.ru