Kompilacja aplikacji równoległych: Różnice pomiędzy wersjami

Z KdmWiki
Przejdź do nawigacji Przejdź do wyszukiwania
Linia 4: Linia 4:
 
Podczas kompilacji rónoległych aplikacji należy odnieść się, odpowiednio [[korzystanie z modułów | konfigurując srodowisko systemowe]], do bibliotek wspomnianych wyżej protokołów.
 
Podczas kompilacji rónoległych aplikacji należy odnieść się, odpowiednio [[korzystanie z modułów | konfigurując srodowisko systemowe]], do bibliotek wspomnianych wyżej protokołów.
  
===Odpowiednie ustawienie środowiska pracy polega na:===
+
===Ustawienie środowiska pracy polega na:===
 
* załadowaniu modułu dla wybranego kompilatora np.
 
* załadowaniu modułu dla wybranego kompilatora np.
 
  module load intel/12.0  
 
  module load intel/12.0  
Linia 15: Linia 15:
 
  module load mkl/12.0.1.107
 
  module load mkl/12.0.1.107
 
  mkl/12.0.1.107 load complete
 
  mkl/12.0.1.107 load complete
 
  
 
===Proces kompilacji===
 
===Proces kompilacji===

Wersja z 14:00, 30 sie 2011

< Podręcznik użytkownika KDM < Kompilacja aplikacji równoległych

Znakomita większość oprogramowania na klastrze zainstalowana jest tak, aby korzystała z któregoś z protokołów wymiany informacji między procesami (mpi, OpenMP, PVM). Podczas kompilacji rónoległych aplikacji należy odnieść się, odpowiednio konfigurując srodowisko systemowe, do bibliotek wspomnianych wyżej protokołów.

Ustawienie środowiska pracy polega na:

  • załadowaniu modułu dla wybranego kompilatora np.
module load intel/12.0 
intel/12.0 load complete
  • załadowaniu odpowiednich bibiliotek mpi-owych np.
 module load mvapich2/1.5.1p1
 mvapich2/1.5.1p1 load complete
Należy pamiętać, aby biblioteki mpi-owe zostały zbudowane wersją kompilatora, na kŧórą wskazują
zmienne środowiskowe.
  • załadowabnie innych bibliotek wymaganych przez kompilowaną aplikację, na przykład matematycznych:
module load mkl/12.0.1.107
mkl/12.0.1.107 load complete

Proces kompilacji

Najłatwiej skorzystać z wrapera. Wraper to skrypt, który odwołuje się do właściewego kompilatora i ustawia za użytkownika odpowiednie opcje. Opcje związane są m.in. ze sposobem linkowania współdzielonych_bibliotek (shared objects) mpi-owych.

Nazwy kompilatorów w pakiecie Intel Composer XE 2011 i odpowiadających im wraperom z mpvapich2-1.5.1b dostępnych na klastrze Supernova.
nazwa kompilatora symbol kompilatora nazwa wrapera
kompilator C icc mpicc
kompilator C++ icpc mpicxx
kompilator FORTRAN77 ifort mpif77
kompilator FORTRAN90 ifort90 mpif90