Message Passing Interface
Išvaizda
(Nukreipta iš puslapio MPI)
Šiam straipsniui ar jo daliai trūksta išnašų į patikimus šaltinius. Jūs galite padėti Vikipedijai pridėdami tinkamas išnašas su šaltiniais. |
Message Passing Interface (MPI) – standartas, naudojamas paskirstytosios atminties lygiagrečiuosiuose kompiuteriuose. Jį sudarant buvo pasitelktos kitų programavimo bibliotekų (PVM, Chameleon, PARMACS) ypatybės bei įvertinti naujausi teoriniai siūlymai. Svarbesnės MPI ypatybės:
- MPI – biblioteka, o ne programavimo kalba. Ji tik apibrėžia paprogramių vardus, parametrus ir jų funkcine paskirtį. Šias paprogrames galima naudoti Fortran 77 ir C kalbomis parašytose programose. Vartotojas programą rašo standartine programavimo kalba ir tik kompiliuodamas prijungia MPI biblioteką.
- MPI realizuotas išreikštinis duomenų siuntimo modelis. Apibrėžtos ne tik būtinosios programavimo priemonės, be kurių negalime užrašyti lygiagrečiojo algoritmo. MPI leidžia atlikti skaičiavimus su heterogeniškais kompiuteriais.
- MPI standartas apibrėžia tik funkcinę paprogramės paskirtį, bet nereglamentuoja jos realizacijos. Todėl skirtingų tipų kompiuterių gamintojai gali šias paprogrames realizuoti efektyviausiu šiam kompiuteriui būdu.
- MPI standartu parašyta programa be pakeitimų gali būti perkelta iš vieno tipo kompiuterio į kito tipo kompiuterį. Tai ypač svarbu kuriant matematinių algoritmų bibliotekas.
MPI funkcijos
[redaguoti | redaguoti vikitekstą]Išsamų MPI standartą sudaro 125 pagrindines paprogrames ir funkcijos. Daugelis šių paprogramių yra tik kelių pogrindinių funkcijų skirtingos versijos, leidžiančios efektyviau realizuoti tam tikrus algoritmus. Kuriant MPI standartą, sudarytas ir minimalus funkcijų ir paprogramių rinkinys, kurio užtenka realizuojant bet kokį lygiagretųjį algoritmų.
- MPI_Init – nurodoma MPI darbo pradžia.
- MPI Comm_size – leidžia sužinoti, kiek procesorių, vykdo skaičiavimus.
- MPI_Comm_rank – leidžia sužinot, koks yra dabar veikiančio procesoriaus numeris.
- MPI_Send – pranešimo siuntimas.
- MPI_Recv – pranešimo gavimas.
- MPI_Finalize – nurodoma MPI darbo pabaiga.