Ця стаття потребує додаткових для поліпшення її . (лютий 2020) |
MPICH (MPI Chameleon) — безкоштовна реалізація MPI яка підтримує роботу на великому числі платформ із різними комунікаційними інтерфейсами, у тому числі і з (TCP/IP). Створена в Арагонській національній лабораторії (США). Існують версії цієї бібліотеки для всіх популярних операційних систем.
Мова програмування | C[1] |
---|---|
Ліцензія | d |
Репозиторій | github.com/pmodels/mpich |
Вебсайт | mpich.org |
Основні особливості MPICH v 1.2.2
- повна сумісність зі специфікацією MPI-1;
- наявність інтерфейсу в стилі MPI-2 з функціями для мови C++ зі специфікації MPI-1;
- наявність інтерфейсу з процедурами мови FORTRAN-77/90;
- є реалізація для Windows NT (несумісна з UNIX-реалізацією);
- підтримка великого числа архітектур, у тому числі кластерів, SMP тощо;
- часткова підтримка MPI-2;
- часткова підтримка паралельного вводу-виводу — ROMIO;
- наявність засобів трасування і протоколювання (SLOG-based);
- наявність засобів візуалізації продуктивності паралельних програм (upshot і jumpshot);
- наявність у складі MPICH тестів продуктивності і перевірки функціонування системи.
Недоліки MPICH — неможливість запуску процесів під час роботи програми і відсутність засобів моніторингу поточного стану системи.
До складу MPICH входять бібліотечні і заголовні файли, що реалізують біля сотні підпрограм.
Принципи роботи MPICH
Розглянемо MPICH для Windows яка містить в собі такі компоненти :
- Менеджер процесів
smpd.exe
, який представляє собою системну службу (сервісну програму). Менеджер процесів веде список обчислювальних вузлів системи, і запускає на цих вузлах MPI-програми, надаючи ним необхідну інформацію для роботи і обміну повідомленнями. - Заголовні файли (
.h
) і бібліотеки стадії компіляції (.lib
), необхідні для розробки MPI-програм. - Бібліотеки часу виконання (DLL), необхідні для роботи MPI-програм.
- Додаткові утиліти (
.exe
), необхідні для налаштування MPICH і запуску MPI-програм.
Менеджер процесів є основним компонентом, який повинен бути встановлений і налаштований на всіх комп'ютерах мережі. Інші файли потрібні для розробки MPI-програм і налаштування «головного» комп'ютера, з якого буде виконуватися їх запуск.
Менеджер працює у фоновому режимі і чекає на запит до його з мережі з боку «головного» менеджера процесів (типово використовується мережевий порт 8676). Для захисту від хакерів і вірусів, менеджер просить пароль при зверненні до нього. Коли один менеджер процесів звертається до іншого менеджера процесів, він передає йому свій пароль. Звідси слідує, що потрібно вказувати один і той самий пароль при встановленні MPICH на комп'ютери мережі.
MPI-програма працює таким чином :
- Програма запускається і ініціалізує бібліотеку часу виконання MPICH шляхом виклику функції
MPI_Init
. - Бібліотека отримує від менеджера процесів інформацію про кількість і розташування інших процесів програми, і встановлює з ними зв'язок.
- Після цього запущені копії програми можуть обмінюватися один з одним інформацією за допомогою бібліотеки MPICH. З точки зору операційної системи бібліотека є частиною програми, тому можна вважати що запущені копії MPI-програми обмінюються даними напряму одна з одною.
- Консольний ввід-вивід всіх процесів MPI-програми перенаправляються на консоль, на якій запущена Mpirun. Перенаправленням вводу-виводу займаються менеджери процесів, так як вони запустили копії MPI-програми, і тому можуть отримати доступ до потоків введення-виведення програм.
- Перед завершенням всі процеси викликають функцію
MPI_Finalize
, яка коректно завершує передавання і отримання всіх повідомлень, і відключає MPICH.
Всі описані вище принципи діють, навіть якщо MPI-програму запущено на одному комп'ютері.
Див. також
- [en] — інша популярна реалізація MPI з відкритим кодом.
Джерела
- The mpich Open Source Project on Open Hub: Languages Page — 2006.
Посилання
- Домашня сторінка MPICH2 [ 25 квітня 2012 у Wayback Machine.]
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Cya stattya potrebuye dodatkovih posilan na dzherela dlya polipshennya yiyi perevirnosti Bud laska dopomozhit udoskonaliti cyu stattyu dodavshi posilannya na nadijni avtoritetni dzherela Zvernitsya na storinku obgovorennya za poyasnennyami ta dopomozhit vipraviti nedoliki Material bez dzherel mozhe buti piddano sumnivu ta vilucheno lyutij 2020 MPICH MPI Chameleon bezkoshtovna realizaciya MPI yaka pidtrimuye robotu na velikomu chisli platform iz riznimi komunikacijnimi interfejsami u tomu chisli i z TCP IP Stvorena v Aragonskij nacionalnij laboratoriyi SShA Isnuyut versiyi ciyeyi biblioteki dlya vsih populyarnih operacijnih sistem MPICHMova programuvannyaC 1 LicenziyadRepozitorijgithub com pmodels mpichVebsajtmpich org Osnovni osoblivosti MPICH v 1 2 2 povna sumisnist zi specifikaciyeyu MPI 1 nayavnist interfejsu v stili MPI 2 z funkciyami dlya movi C zi specifikaciyi MPI 1 nayavnist interfejsu z procedurami movi FORTRAN 77 90 ye realizaciya dlya Windows NT nesumisna z UNIX realizaciyeyu pidtrimka velikogo chisla arhitektur u tomu chisli klasteriv SMP tosho chastkova pidtrimka MPI 2 chastkova pidtrimka paralelnogo vvodu vivodu ROMIO nayavnist zasobiv trasuvannya i protokolyuvannya SLOG based nayavnist zasobiv vizualizaciyi produktivnosti paralelnih program upshot i jumpshot nayavnist u skladi MPICH testiv produktivnosti i perevirki funkcionuvannya sistemi Nedoliki MPICH nemozhlivist zapusku procesiv pid chas roboti programi i vidsutnist zasobiv monitoringu potochnogo stanu sistemi Do skladu MPICH vhodyat bibliotechni i zagolovni fajli sho realizuyut bilya sotni pidprogram Principi roboti MPICH Rozglyanemo MPICH dlya Windows yaka mistit v sobi taki komponenti Menedzher procesiv smpd exe yakij predstavlyaye soboyu sistemnu sluzhbu servisnu programu Menedzher procesiv vede spisok obchislyuvalnih vuzliv sistemi i zapuskaye na cih vuzlah MPI programi nadayuchi nim neobhidnu informaciyu dlya roboti i obminu povidomlennyami Zagolovni fajli h i biblioteki stadiyi kompilyaciyi lib neobhidni dlya rozrobki MPI program Biblioteki chasu vikonannya DLL neobhidni dlya roboti MPI program Dodatkovi utiliti exe neobhidni dlya nalashtuvannya MPICH i zapusku MPI program Menedzher procesiv ye osnovnim komponentom yakij povinen buti vstanovlenij i nalashtovanij na vsih komp yuterah merezhi Inshi fajli potribni dlya rozrobki MPI program i nalashtuvannya golovnogo komp yutera z yakogo bude vikonuvatisya yih zapusk Menedzher pracyuye u fonovomu rezhimi i chekaye na zapit do jogo z merezhi z boku golovnogo menedzhera procesiv tipovo vikoristovuyetsya merezhevij port 8676 Dlya zahistu vid hakeriv i virusiv menedzher prosit parol pri zvernenni do nogo Koli odin menedzher procesiv zvertayetsya do inshogo menedzhera procesiv vin peredaye jomu svij parol Zvidsi sliduye sho potribno vkazuvati odin i toj samij parol pri vstanovlenni MPICH na komp yuteri merezhi MPI programa pracyuye takim chinom Programa zapuskayetsya i inicializuye biblioteku chasu vikonannya MPICH shlyahom vikliku funkciyiMPI Init Biblioteka otrimuye vid menedzhera procesiv informaciyu pro kilkist i roztashuvannya inshih procesiv programi i vstanovlyuye z nimi zv yazok Pislya cogo zapusheni kopiyi programi mozhut obminyuvatisya odin z odnim informaciyeyu za dopomogoyu biblioteki MPICH Z tochki zoru operacijnoyi sistemi biblioteka ye chastinoyu programi tomu mozhna vvazhati sho zapusheni kopiyi MPI programi obminyuyutsya danimi napryamu odna z odnoyu Konsolnij vvid vivid vsih procesiv MPI programi perenapravlyayutsya na konsol na yakij zapushena Mpirun Perenapravlennyam vvodu vivodu zajmayutsya menedzheri procesiv tak yak voni zapustili kopiyi MPI programi i tomu mozhut otrimati dostup do potokiv vvedennya vivedennya program Pered zavershennyam vsi procesi viklikayut funkciyu MPI Finalize yaka korektno zavershuye peredavannya i otrimannya vsih povidomlen i vidklyuchaye MPICH Vsi opisani vishe principi diyut navit yaksho MPI programu zapusheno na odnomu komp yuteri Div takozh en insha populyarna realizaciya MPI z vidkritim kodom DzherelaThe mpich Open Source Project on Open Hub Languages Page 2006 d Track Q124688PosilannyaDomashnya storinka MPICH2 25 kvitnya 2012 u Wayback Machine