Temat: Claster Linux
W przypadku MPI mamy dużą dowolność w sposobie uruchamiania programów - wszystko precyzyjnie można określić. Np. w dystrybucji mpich zrównoleglone programy uruchamiany za pomocą programu mpirun, przy którym można określić:
- na ilu procesorach mają być uruchomione zadania
- na ilu hostach mają być uruchomione zadania
- czy zadania mają być uruchomione tylko na hoscie lokalnym, czy może tez na hostach zdalnych, itp
i co najwazniejsze ile kopii naszego programu uruchamiany na danym hoscie. Czyli na przykład uruchamiając 2 kopie na wszystkich procesorach (zakładając ze posiadamy dwa procesory) będziemy mieli po jednym procesie na jeden procesor. W przypadku kiedy mamy klaster złożony z bardzo zróżnicowanych hostów można tym troche pomanipulować aby uzyskać pewnego rodzaju load balancing. Owa manipulacja może polegać na większym dociążaniu szybszych maszyn w klasterze (czyli wrzucanie na nie większej ilości procesów) - nie ukrywam że to dość prymitywna sztuczka - niespecjalnie wyszukana, ale działa.
W zasadzie można tez próbować łączyć openMosixa z MPICH ale tu nie jest powiedziane ze zawsze uzyskamy lepszy efekt niz MPICH bez openMosixa. Wszystko w dużym stopniu zależy zarówno od algorytmu zagadniania jak i architektury wykonania.
Tomasz R. edytował(a) ten post dnia 26.10.07 o godzinie 23:46