Interfața de transmitere a mesajelor este

Interfața de transmitere a mesajelor

Interfața de transmitere a mesajelor (MPI) este o interfață de programare (API) pentru transferul de informații. Vă permite să faceți schimb de mesaje între procesele care efectuează o singură sarcină. Dezvoltat de William Gropp. Evin Laskom (engleză) și alții.







MPI este cel mai comun standard pentru interfața de schimb de date în programare paralelă, există implementări pentru un număr mare de platforme informatice. Folosit în dezvoltarea de programe pentru clustere și supercomputere. Principalul mijloc de comunicare între procesele din MPI este transmiterea de mesaje între ele. Forumul MPI este standardizat de MPI. Standardul MPI descrie interfața de mesagerie, care ar trebui să fie acceptată atât pe platformă, cât și în aplicațiile utilizatorilor. În prezent, există un număr mare de implementări gratuite și comerciale ale MPI. Există implementări pentru Fortran 77/90, C și C ++.

Mai întâi, MPI este orientat spre sistemele de memorie distribuite. adică, atunci când costurile de transfer de date sunt ridicate, în timp ce OpenMP este orientat către sistemele cu memorie partajată (multi-core cu memorii cache partajate). Ambele tehnologii pot fi utilizate împreună pentru a utiliza în mod optim sisteme multi-core într-un grup.

Standardele MPI

Majoritatea implementărilor moderne ale MPI suportă versiunea 1.1. MPI versiunea 2.0 este susținută de majoritatea implementărilor moderne, dar unele funcții pot să nu fie implementate până la sfârșit.

  • transmiterea și primirea mesajelor între procesele individuale;
  • interacțiunea colectivă a proceselor;
  • interacțiunile în grupurile de proces;
  • implementarea topologiilor proceselor;
  • generarea de procese dinamice și gestionarea proceselor;
  • comunicare unică (Get / Put);
  • intrarea și ieșirea paralelă;
  • Operațiuni colective extinse (procesele pot efectua operațiuni colective nu numai în cadrul unui singur comunicator, ci și în cadrul mai multor comunicatori).

Funcționarea interfeței

Mecanismul de bază al comunicării între procesele MPI este transmiterea și recepția mesajelor. Mesajul are în sine datele și informațiile transmise care permit părții destinatare să efectueze recepția lor selectivă:

  • expeditor - rang (număr în grup) al expeditorului mesajului;
  • destinatarul este rangul destinatarului;
  • atribut - poate fi folosit pentru a separa diferite tipuri de mesaje;
  • comunicator - cod de grup de proces.






Operațiile de primire și transmitere pot fi blocate și nu pot fi blocate. Pentru operațiile fără blocare sunt definite funcțiile pentru verificarea disponibilității și așteptarea operației.

Program exemplu

Mai jos este un exemplu de program pentru calculul numărului π în C utilizând MPI:

Implementări MPI

Se acceptă diverse sisteme de comunicații (inclusiv Myrinet).

  • Implementarea WMPI - MPI pentru Windows
  • MPI / PRO pentru Windows NT - implementare comercială pentru Windows NT
  • Intel MPI - implementare comercială pentru Windows / Linux
  • Microsoft MPI face parte din SDK Compute Cluster Pack. Bazat pe MPICH2, dar include instrumente suplimentare de gestionare a locurilor de muncă. Specificația MPI-2 este acceptată.
  • HP-MPI - implementare comercială de la HP
  • SGI MPT - SGI a plătit biblioteca SGI
  • Mvapich - Implementare gratuită MPI pentru Infiniband
  • Open MPI - implementarea gratuită a MPI, succesor al LAM / MPI
  • Oracle HPC ClusterTools este o implementare gratuită pentru Solaris SPARC / x86 și Linux bazată pe Open MPI
  • MPJ - MPI pentru Java
  • PETSc - bibliotecă de programe paralele pentru rezolvarea sistemelor de ecuații algebrice liniare
  • OpenMP (versiunea multi-procesată în limba engleză) - tehnologia programării multiprocesor (multi-șanț).
  • Model actori
  • mpC - Mediul de programare paralel mpC

Vedeți ce "Interfața de transmitere a mesajelor" în alte dicționare este:

Interfața de transmitere a mesajelor - MPI, interfața de transmitere a mesajelor, este un sistem standardizat și portabil. Standardul definește sintaxa și ... ... Wikipedia

Message Passing Interface - MPI MPI Logo Basisdaten Entwickler Argonne National Laboratory Aktuelle ... Versiune Deutsch Wikipedia

Trimiterea mesajelor - Acest articol este despre conceptul de informatică. Pentru alte utilizări, consultați Transmiterea mesajului (dezambiguizare). Mesajul trecând în domeniul informaticii este o formă de comunicare folosită în calculul paralel, programarea orientată obiect și interprocesul ... ... Wikipedia

Trecerea mesajului - In der Informatik ist der Nachrichtenaustausch (. Engl Message Passing) Eine Kommunikationsform, die in der Nebenläufigkeits Programmierung (Programare concurentă), der parallelen Programmierung (programare paralelă), der objektorientierten ... ... Deutsch Wikipedia

Mesaj Parsing Interpret - Message Parsing Interpreter (MPI pentru scurt, nu trebuie confundat cu interfața Pase Message) este un Lisp ca limbaj de programare bazat pe înlocuirea text utilizat pe servere Fuzzball MUCK, începând cu versiunea 2.2fb5.00. Este ... ... Wikipedia

Meniul orientat spre mesaje (MOM) este o infrastructură software sau hardware care suportă trimiterea și primirea de mesaje între sistemele distribuite. MOM permite modulelor de aplicații să fie distribuite pe platforme eterogene ... Wikipedia

Message queue - În știința computerelor, cozile de mesaje și cutiile poștale sunt componentele software utilizate pentru comunicarea interprocesă sau pentru comunicarea între fire. Ei folosesc o coadă pentru mesaje - trecerea controlului sau a ... ... Wikipedia

agent de transfer de mesaje - În cadrul serviciilor de manipulare mesaje pe internet (MHS), un agent de transfer de mesaje [1] sau prin transfer e-mail prin agent [2] (MTA) sau releu de e-mail este un software care transferă mesajele de poștă electronică de la un calculator la altul folosind un client-server aplicație ... ... Wikipedia







Articole similare

Trimiteți-le prietenilor: