Uživatel:Lindntom

Z HPM wiki
Přejít na: navigace, hledání

Lindner Tomas


Název semestrální práce: PelicanHPC a MPI


Obsah

Osnova

1. MPI
1.1. Myšlenka MPI
1.2. Historie MPI
1.3. LAM/MPI vs. OpenMPI
1.4. Ukázka příkazů protokolu MPI.
2. PelicanHPC
2.1. Představení PelicanHPC
2.1. Instalace a zásady práce s clusterem.
2.2. Ukázka práce s programy v C a Octave. 
3. Závěr.


MPI - MESSAGE PASSING INTERFACE

Historie MPI

Na vývoji první verze protokolu MPI-1 se pracovalo v první polovině devadesátých let, přesněji 1992-1994 a první článek bzl publikován v roce 1994 v časopise SuperComputers. Na vývoji se podílelo otevřené společenství univerzit (University of Edinburg, Miss State University, Michigan Univerzity) a soukormých firem (Intel, IBM, Sun ad.) výsledkem byl funkční opensource protokol, který byl v letech 1995-1997 zdokonalen o další funkce a vznikl standard MPI-2 pod záštitou projektu OpenMPI.


Myšlenka a definice MPI

Jak název napovídá, MPI neboli Message Passing Protocol slouží k zasílání krátkých zpráv mezi procesy, což se ukázalo jako jedna z nejvyužitelnějších metod pro paralelní výpočty. Oproti například Streamu nebo jiným způsobům komunikace vyniká jak svou jednoduchostí (velká řada procesů využívá 6 funkcí protokolu) tak nenáročností na zatížení sítě.


MPI-1 MPI-1 je určeno především ke komunikaci a přeposílání dat mezi procesy. Obsahuje 127 funkcí


LAM/MPI vs. OpenMPI


Ukázka příkazů protokolu MPI

Send(dest,tag,address,length) //Posila zpravu jinemu procesu
Recv(src,tag,address,length) //Prijima zpravu od jineho procesu

dest a src - integer identifikace druhého procesu.

tag - integer určující prioritu zprávy.

address - integer odkazující na místo v paměti.

length - velikost prostoru na jehož první člen odkazuje adress


V praxi se spíš používá rozšíření MPI_Send apod, které podporuje heterogenní clustery a zlepšují dohled nad prioritou procesů, domén apod.


Na co nezapomenout

#include <mpi.h>      //Zacleneni knihovny
MPI_Init(&argc, &argv); // inicializace knihovny
MPI_Finalize(); // ukončení práce s MPI

PELICANHPC

Představení PelicanHPC

Instalace a zásady práce s clusterem

Ukázka práce s C a Octave

Zdroje

http://pelicanhpc.org/

http://www.mcs.anl.gov/research/projects/mpi/

http://www.open-mpi.org/

http://www.mcs.anl.gov/research/projects/mpi/tutorial/snir/mpi/mpic.htm

Osobní nástroje
Jmenné prostory
Varianty
Akce
Navigace
Nástroje