11. cvičení - Zasílání zpráv

Instalace balíčků

Instalace MPI (Windows 10)

  1. Stáhnout (odkaz ke stažení) a nainstalovat msmpisdk.msi a MSMpiSetup.exe.
  2. Nastavit Path na místo instalace MPI (C:\Program Files (x86)\Microsoft SDKs\MPI). Návod na nastavení Path lze najít zde.
  3. Instalace mpi4py.
    
    py -m pip install mpi4py
    

Instalace MPI (macOS)

    
    brew install mpich
    pip install mpi4py
    

Instalace MPI (Linux)

    
    python3 -m pip install mpi4py
    

Použití mpi4py

    
    from mpi4py import MPI

    comm = MPI.COMM_WORLD
    size = comm.Get_size()
    rank = comm.Get_rank()

    if rank == 0:
      print("First rank")
    elif rank == 1:
      print ("Second rank")
    else:
      print("Not first or second rank")

    print("Hello world from rank", str(rank), "of", str(size))
    

Spuštění programu

    
    # Linux a macOS
    mpiexec -n 4 python mpi_hello_world.py

    # Windows 10
    mpiexec -n 4 py mpi_hello_world.py
    

Úkoly

(Bodovaný) Pomocí zasílání zpráv naprogramujte paralelní násobení matic, kde A a B jsou čtvercové matice reprezentované seznamy. Počet procesorů použitých pro výpočet bude roven velikosti matice A, kde proces i vypočítá i-tý řádek matice C.