Klaster ISSI - budowa i zastosowanie w badaniach naukowych

Transkrypt

Klaster ISSI - budowa i zastosowanie w badaniach naukowych
Klaster ISSI - budowa i zastosowanie w badaniach
naukowych
Przemysław Jacewicz
Instytut Sterowania i Systemów Informatycznych
Wydział Elektrotechniki, Informatyki i Telekomunikacji
Uniwersytet Zielonogórski
E-mail: [email protected]
Zielona Góra, 22 stycznia 2009 r.
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
1/13
Trochę teorii
Superkomputery
Wstęp
Rodzaje superkomputerów
SMP (Symmetric Multiprocessing) - współdzielona magistrala,
pamięć i podsystem I/O.
NUMA (Non-Uniform Memory Access) - każdy procesor ma własną
magistralę, pamięci są połączone w jedną wspólną pamięć wirtualną.
MPP (Massively Parallel Processing) - każdy procesor ma własną
magistralę i pamięć, dostęp uzyskuje się poprzez przełącznik
(np. poprzez sieć).
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
2/13
Trochę teorii
Superkomputery
Wstęp
Rodzaje superkomputerów
SMP (Symmetric Multiprocessing) - współdzielona magistrala,
pamięć i podsystem I/O.
NUMA (Non-Uniform Memory Access) - każdy procesor ma własną
magistralę, pamięci są połączone w jedną wspólną pamięć wirtualną.
MPP (Massively Parallel Processing) - każdy procesor ma własną
magistralę i pamięć, dostęp uzyskuje się poprzez przełącznik
(np. poprzez sieć).
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
2/13
Trochę teorii
Superkomputery
Wstęp
Rodzaje superkomputerów
SMP (Symmetric Multiprocessing) - współdzielona magistrala,
pamięć i podsystem I/O.
NUMA (Non-Uniform Memory Access) - każdy procesor ma własną
magistralę, pamięci są połączone w jedną wspólną pamięć wirtualną.
MPP (Massively Parallel Processing) - każdy procesor ma własną
magistralę i pamięć, dostęp uzyskuje się poprzez przełącznik
(np. poprzez sieć).
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
2/13
Trochę teorii
Klastry
Rodzaje klastrów
Podział ze względu na zastosowanie
Klastry wysokiej dostępności (High-availability clusters – HA)
Klastry równoważące obciążenie (Load-balancing clusters – LB)
Klastry obliczeniowe (High Performance clusters – HPC)
Gridy
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
3/13
Trochę teorii
Klastry
Rodzaje klastrów
Podział ze względu na zastosowanie
Klastry wysokiej dostępności (High-availability clusters – HA)
Klastry równoważące obciążenie (Load-balancing clusters – LB)
Klastry obliczeniowe (High Performance clusters – HPC)
Gridy
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
3/13
Trochę teorii
Klastry
Rodzaje klastrów
Podział ze względu na zastosowanie
Klastry wysokiej dostępności (High-availability clusters – HA)
Klastry równoważące obciążenie (Load-balancing clusters – LB)
Klastry obliczeniowe (High Performance clusters – HPC)
Gridy
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
3/13
Trochę teorii
Klastry
Rodzaje klastrów
Podział ze względu na zastosowanie
Klastry wysokiej dostępności (High-availability clusters – HA)
Klastry równoważące obciążenie (Load-balancing clusters – LB)
Klastry obliczeniowe (High Performance clusters – HPC)
Gridy
Podział ze względu na budowę i typ połączeń
Klastry homogeniczne
Klastry heterogeniczne
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
3/13
Trochę teorii
Klastry
Rodzaje klastrów
Podział ze względu na zastosowanie
Klastry wysokiej dostępności (High-availability clusters – HA)
Klastry równoważące obciążenie (Load-balancing clusters – LB)
Klastry obliczeniowe (High Performance clusters – HPC)
Gridy
Podział ze względu na budowę i typ połączeń
Klastry homogeniczne
Klastry heterogeniczne
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
3/13
Trochę teorii
Klastry
Rodzaje klastrów
Podział ze względu na zastosowanie
Klastry wysokiej dostępności (High-availability clusters – HA)
Klastry równoważące obciążenie (Load-balancing clusters – LB)
Klastry obliczeniowe (High Performance clusters – HPC)
Gridy
Podział ze względu na budowę i typ połączeń
Klastry homogeniczne
Klastry heterogeniczne
Beowulf
Klastrowi typu Beowulf przyświeca następująca idea: wykonać możliwie
wydajną strukturę obliczeniową jak najmniejszym kosztem.
Pierwszy klaster tego typu powstał w 1994 w NASA (Donald Becker).
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
3/13
Cluster ISSI
Zasoby
Homogeniczny klaster typu Beowulf ISSI
Zasoby klastra ISSI
serwer wyposażony w 2 procesory (8-rdzeni), 12GB pamieci RAM,
dwa dyski twarde 512GB połączone w RAID1;
16 komputerów połączonych przy pomocy dwóch kart sieciowych
Gigabit Ethernet;
32 procesory Intel Xeon(5320) 2.5GHz, 12MB cache;
128 rdzeni;
256 GB pamięci RAM;
450GB zasobów dyskowych na zadania użytkowników;
8TB zasobów dyskowych na tymczasowe dane w trakcie obliczeń
(500MB na węzeł).
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
4/13
Cluster ISSI
Zasoby
Homogeniczny klaster typu Beowulf ISSI
Zasoby klastra ISSI
serwer wyposażony w 2 procesory (8-rdzeni), 12GB pamieci RAM,
dwa dyski twarde 512GB połączone w RAID1;
16 komputerów połączonych przy pomocy dwóch kart sieciowych
Gigabit Ethernet;
32 procesory Intel Xeon(5320) 2.5GHz, 12MB cache;
128 rdzeni;
256 GB pamięci RAM;
450GB zasobów dyskowych na zadania użytkowników;
8TB zasobów dyskowych na tymczasowe dane w trakcie obliczeń
(500MB na węzeł).
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
4/13
Cluster ISSI
Zasoby
Homogeniczny klaster typu Beowulf ISSI
Zasoby klastra ISSI
serwer wyposażony w 2 procesory (8-rdzeni), 12GB pamieci RAM,
dwa dyski twarde 512GB połączone w RAID1;
16 komputerów połączonych przy pomocy dwóch kart sieciowych
Gigabit Ethernet;
32 procesory Intel Xeon(5320) 2.5GHz, 12MB cache;
128 rdzeni;
256 GB pamięci RAM;
450GB zasobów dyskowych na zadania użytkowników;
8TB zasobów dyskowych na tymczasowe dane w trakcie obliczeń
(500MB na węzeł).
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
4/13
Cluster ISSI
Zasoby
Homogeniczny klaster typu Beowulf ISSI
Zasoby klastra ISSI
serwer wyposażony w 2 procesory (8-rdzeni), 12GB pamieci RAM,
dwa dyski twarde 512GB połączone w RAID1;
16 komputerów połączonych przy pomocy dwóch kart sieciowych
Gigabit Ethernet;
32 procesory Intel Xeon(5320) 2.5GHz, 12MB cache;
128 rdzeni;
256 GB pamięci RAM;
450GB zasobów dyskowych na zadania użytkowników;
8TB zasobów dyskowych na tymczasowe dane w trakcie obliczeń
(500MB na węzeł).
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
4/13
Cluster ISSI
Zasoby
Homogeniczny klaster typu Beowulf ISSI
Zasoby klastra ISSI
serwer wyposażony w 2 procesory (8-rdzeni), 12GB pamieci RAM,
dwa dyski twarde 512GB połączone w RAID1;
16 komputerów połączonych przy pomocy dwóch kart sieciowych
Gigabit Ethernet;
32 procesory Intel Xeon(5320) 2.5GHz, 12MB cache;
128 rdzeni;
256 GB pamięci RAM;
450GB zasobów dyskowych na zadania użytkowników;
8TB zasobów dyskowych na tymczasowe dane w trakcie obliczeń
(500MB na węzeł).
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
4/13
Cluster ISSI
Zasoby
Homogeniczny klaster typu Beowulf ISSI
Zasoby klastra ISSI
serwer wyposażony w 2 procesory (8-rdzeni), 12GB pamieci RAM,
dwa dyski twarde 512GB połączone w RAID1;
16 komputerów połączonych przy pomocy dwóch kart sieciowych
Gigabit Ethernet;
32 procesory Intel Xeon(5320) 2.5GHz, 12MB cache;
128 rdzeni;
256 GB pamięci RAM;
450GB zasobów dyskowych na zadania użytkowników;
8TB zasobów dyskowych na tymczasowe dane w trakcie obliczeń
(500MB na węzeł).
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
4/13
Cluster ISSI
Zasoby
Homogeniczny klaster typu Beowulf ISSI
Zasoby klastra ISSI
serwer wyposażony w 2 procesory (8-rdzeni), 12GB pamieci RAM,
dwa dyski twarde 512GB połączone w RAID1;
16 komputerów połączonych przy pomocy dwóch kart sieciowych
Gigabit Ethernet;
32 procesory Intel Xeon(5320) 2.5GHz, 12MB cache;
128 rdzeni;
256 GB pamięci RAM;
450GB zasobów dyskowych na zadania użytkowników;
8TB zasobów dyskowych na tymczasowe dane w trakcie obliczeń
(500MB na węzeł).
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
4/13
Cluster ISSI
„Panie, a ile toto wyciąga?”
Prędkość szczytowa w teście HPL
Fragment wyniku testu HPL
================================================================================
T/V
N
NB
P
Q
Time
Gflops
-------------------------------------------------------------------------------WR00R2R2
35
4
4
1
0.00
1.210e+03
-------------------------------------------------------------------------------||Ax-b||_oo/(eps*(||A||_oo*||x||_oo+||b||_oo)*N)=
0.0194218 ......PASSED
================================================================================
T/V
N
NB
P
Q
Time
Gflops
-------------------------------------------------------------------------------WR00R2R4
35
4
4
1
0.00
1.219e+03
-------------------------------------------------------------------------------||Ax-b||_oo/(eps*(||A||_oo*||x||_oo+||b||_oo)*N)=
0.0159258 ......PASSED
================================================================================
Wnioski
Rpeak =782 GFlops
Rmax =1,22 TFlops
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
5/13
Cluster ISSI
Komunikacja
Komunikacja
Sposoby przesyłania danych
Dostęp do Serwera:
SFTP - pobieranie i wysyłanie danych (login/hasło);
SSH - praca przy pomocy zdalnej konsoli (login/hasło);
HTTP - ogólne informacje o klastrze.
Dostęp do węzłów obliczeniowych:
rcp - pobieranie i wysyłanie danych (bez autoryzacji);
rsh - praca przy pomocy zdalnej konsoli (bez autoryzacji);
Węzły mają dostęp do katalogów domowych użytkowników, oraz
katalogu /cluster dzięki usługom NFS i NIS.
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
6/13
Cluster ISSI
Komunikacja
Komunikacja
Sposoby przesyłania danych
Dostęp do Serwera:
SFTP - pobieranie i wysyłanie danych (login/hasło);
SSH - praca przy pomocy zdalnej konsoli (login/hasło);
HTTP - ogólne informacje o klastrze.
Dostęp do węzłów obliczeniowych:
rcp - pobieranie i wysyłanie danych (bez autoryzacji);
rsh - praca przy pomocy zdalnej konsoli (bez autoryzacji);
Węzły mają dostęp do katalogów domowych użytkowników, oraz
katalogu /cluster dzięki usługom NFS i NIS.
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
6/13
Cluster ISSI
Komunikacja
Komunikacja
Sposoby przesyłania danych
Dostęp do Serwera:
SFTP - pobieranie i wysyłanie danych (login/hasło);
SSH - praca przy pomocy zdalnej konsoli (login/hasło);
HTTP - ogólne informacje o klastrze.
Dostęp do węzłów obliczeniowych:
rcp - pobieranie i wysyłanie danych (bez autoryzacji);
rsh - praca przy pomocy zdalnej konsoli (bez autoryzacji);
Węzły mają dostęp do katalogów domowych użytkowników, oraz
katalogu /cluster dzięki usługom NFS i NIS.
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
6/13
Cluster ISSI
Komunikacja
Komunikacja
Sposoby przesyłania danych
Dostęp do Serwera:
SFTP - pobieranie i wysyłanie danych (login/hasło);
SSH - praca przy pomocy zdalnej konsoli (login/hasło);
HTTP - ogólne informacje o klastrze.
Dostęp do węzłów obliczeniowych:
rcp - pobieranie i wysyłanie danych (bez autoryzacji);
rsh - praca przy pomocy zdalnej konsoli (bez autoryzacji);
Węzły mają dostęp do katalogów domowych użytkowników, oraz
katalogu /cluster dzięki usługom NFS i NIS.
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
6/13
Cluster ISSI
Komunikacja
Komunikacja
Sposoby przesyłania danych
Dostęp do Serwera:
SFTP - pobieranie i wysyłanie danych (login/hasło);
SSH - praca przy pomocy zdalnej konsoli (login/hasło);
HTTP - ogólne informacje o klastrze.
Dostęp do węzłów obliczeniowych:
rcp - pobieranie i wysyłanie danych (bez autoryzacji);
rsh - praca przy pomocy zdalnej konsoli (bez autoryzacji);
Węzły mają dostęp do katalogów domowych użytkowników, oraz
katalogu /cluster dzięki usługom NFS i NIS.
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
6/13
Cluster ISSI
Komunikacja
Komunikacja
Sposoby przesyłania danych
Dostęp do Serwera:
SFTP - pobieranie i wysyłanie danych (login/hasło);
SSH - praca przy pomocy zdalnej konsoli (login/hasło);
HTTP - ogólne informacje o klastrze.
Dostęp do węzłów obliczeniowych:
rcp - pobieranie i wysyłanie danych (bez autoryzacji);
rsh - praca przy pomocy zdalnej konsoli (bez autoryzacji);
Węzły mają dostęp do katalogów domowych użytkowników, oraz
katalogu /cluster dzięki usługom NFS i NIS.
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
6/13
Cluster ISSI
Komunikacja
Komunikacja
Sposoby przesyłania danych
Dostęp do Serwera:
SFTP - pobieranie i wysyłanie danych (login/hasło);
SSH - praca przy pomocy zdalnej konsoli (login/hasło);
HTTP - ogólne informacje o klastrze.
Dostęp do węzłów obliczeniowych:
rcp - pobieranie i wysyłanie danych (bez autoryzacji);
rsh - praca przy pomocy zdalnej konsoli (bez autoryzacji);
Węzły mają dostęp do katalogów domowych użytkowników, oraz
katalogu /cluster dzięki usługom NFS i NIS.
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
6/13
Cluster ISSI
Komunikacja
Komunikacja
Sposoby przesyłania danych
Dostęp do Serwera:
SFTP - pobieranie i wysyłanie danych (login/hasło);
SSH - praca przy pomocy zdalnej konsoli (login/hasło);
HTTP - ogólne informacje o klastrze.
Dostęp do węzłów obliczeniowych:
rcp - pobieranie i wysyłanie danych (bez autoryzacji);
rsh - praca przy pomocy zdalnej konsoli (bez autoryzacji);
Węzły mają dostęp do katalogów domowych użytkowników, oraz
katalogu /cluster dzięki usługom NFS i NIS.
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
6/13
Cluster ISSI
Struktura połączeń
Budowa klastra
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
7/13
Cluster ISSI
Programy
Oprogramowanie
Debian GNU Linux
Pakiet kompilatorów GNU:
C: gcc
C++: g++
Fortran 77: g77
Fortran 95: gfortran
Java: gcj
Ada 95: gnat
Pakiet open-mpi v1.2.8 (zgodny z MPI-2)
Edytory
VIM: vim
EMACS: emacs
Menedżer plików Midnight Commander (mc)
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
8/13
Cluster ISSI
Programy
Oprogramowanie
Debian GNU Linux
Pakiet kompilatorów GNU:
C: gcc
C++: g++
Fortran 77: g77
Fortran 95: gfortran
Java: gcj
Ada 95: gnat
Pakiet open-mpi v1.2.8 (zgodny z MPI-2)
Edytory
VIM: vim
EMACS: emacs
Menedżer plików Midnight Commander (mc)
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
8/13
Cluster ISSI
Programy
Oprogramowanie
Debian GNU Linux
Pakiet kompilatorów GNU:
C: gcc
C++: g++
Fortran 77: g77
Fortran 95: gfortran
Java: gcj
Ada 95: gnat
Pakiet open-mpi v1.2.8 (zgodny z MPI-2)
Edytory
VIM: vim
EMACS: emacs
Menedżer plików Midnight Commander (mc)
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
8/13
Cluster ISSI
Programy
Oprogramowanie
Debian GNU Linux
Pakiet kompilatorów GNU:
C: gcc
C++: g++
Fortran 77: g77
Fortran 95: gfortran
Java: gcj
Ada 95: gnat
Pakiet open-mpi v1.2.8 (zgodny z MPI-2)
Edytory
VIM: vim
EMACS: emacs
Menedżer plików Midnight Commander (mc)
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
8/13
Cluster ISSI
Programy
Oprogramowanie
Debian GNU Linux
Pakiet kompilatorów GNU:
C: gcc
C++: g++
Fortran 77: g77
Fortran 95: gfortran
Java: gcj
Ada 95: gnat
Pakiet open-mpi v1.2.8 (zgodny z MPI-2)
Edytory
VIM: vim
EMACS: emacs
Menedżer plików Midnight Commander (mc)
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
8/13
Cluster ISSI
Programy
Biblioteki numeryczne
LAPACK - Linear Algebra PACKage
ScalPACK - Parallel version of LAPACK
CSDP - A C Library for Semidefinite Programming
DSDP - Software for Semidefinite Programming
SDPA - SemiDefinite Programming Algorithm
SDPA-GMP - SDPA with arbitrary precision arithmetic
SDPARA - SDPA paRAllel version
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
9/13
Cluster ISSI
Programy
Biblioteki numeryczne
LAPACK - Linear Algebra PACKage
ScalPACK - Parallel version of LAPACK
CSDP - A C Library for Semidefinite Programming
DSDP - Software for Semidefinite Programming
SDPA - SemiDefinite Programming Algorithm
SDPA-GMP - SDPA with arbitrary precision arithmetic
SDPARA - SDPA paRAllel version
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
9/13
Cluster ISSI
Programy
Biblioteki numeryczne
LAPACK - Linear Algebra PACKage
ScalPACK - Parallel version of LAPACK
CSDP - A C Library for Semidefinite Programming
DSDP - Software for Semidefinite Programming
SDPA - SemiDefinite Programming Algorithm
SDPA-GMP - SDPA with arbitrary precision arithmetic
SDPARA - SDPA paRAllel version
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
9/13
Cluster ISSI
Programy
Biblioteki numeryczne
LAPACK - Linear Algebra PACKage
ScalPACK - Parallel version of LAPACK
CSDP - A C Library for Semidefinite Programming
DSDP - Software for Semidefinite Programming
SDPA - SemiDefinite Programming Algorithm
SDPA-GMP - SDPA with arbitrary precision arithmetic
SDPARA - SDPA paRAllel version
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
9/13
Cluster ISSI
Programy
Biblioteki numeryczne
LAPACK - Linear Algebra PACKage
ScalPACK - Parallel version of LAPACK
CSDP - A C Library for Semidefinite Programming
DSDP - Software for Semidefinite Programming
SDPA - SemiDefinite Programming Algorithm
SDPA-GMP - SDPA with arbitrary precision arithmetic
SDPARA - SDPA paRAllel version
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
9/13
Cluster ISSI
Programy
Biblioteki numeryczne
LAPACK - Linear Algebra PACKage
ScalPACK - Parallel version of LAPACK
CSDP - A C Library for Semidefinite Programming
DSDP - Software for Semidefinite Programming
SDPA - SemiDefinite Programming Algorithm
SDPA-GMP - SDPA with arbitrary precision arithmetic
SDPARA - SDPA paRAllel version
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
9/13
Cluster ISSI
Programy
Biblioteki numeryczne
LAPACK - Linear Algebra PACKage
ScalPACK - Parallel version of LAPACK
CSDP - A C Library for Semidefinite Programming
DSDP - Software for Semidefinite Programming
SDPA - SemiDefinite Programming Algorithm
SDPA-GMP - SDPA with arbitrary precision arithmetic
SDPARA - SDPA paRAllel version
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
9/13
Cluster ISSI
Pierwsze kroki
Instrukcja obsługi
Pierwsze kroki
Logowanie do serwera cluster.issi.uz.zgora.pl przy pomocy
protokołu SSH (putty);
zmiana hasła (passwd);
sprawdzenie dostępu do wybranych węzłów (np. rsh n5, rsh m16,
itd.);
uruchomienie przykładowego programu (np. mpirun -np 128 test);
sprawdzenie obciążenia wybranego węzła (np. rsh n12 top);
sprawdzenie kto jest zalogowany (who).
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
10/13
Cluster ISSI
Pierwsze kroki
Instrukcja obsługi
Pierwsze kroki
Logowanie do serwera cluster.issi.uz.zgora.pl przy pomocy
protokołu SSH (putty);
zmiana hasła (passwd);
sprawdzenie dostępu do wybranych węzłów (np. rsh n5, rsh m16,
itd.);
uruchomienie przykładowego programu (np. mpirun -np 128 test);
sprawdzenie obciążenia wybranego węzła (np. rsh n12 top);
sprawdzenie kto jest zalogowany (who).
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
10/13
Cluster ISSI
Pierwsze kroki
Instrukcja obsługi
Pierwsze kroki
Logowanie do serwera cluster.issi.uz.zgora.pl przy pomocy
protokołu SSH (putty);
zmiana hasła (passwd);
sprawdzenie dostępu do wybranych węzłów (np. rsh n5, rsh m16,
itd.);
uruchomienie przykładowego programu (np. mpirun -np 128 test);
sprawdzenie obciążenia wybranego węzła (np. rsh n12 top);
sprawdzenie kto jest zalogowany (who).
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
10/13
Cluster ISSI
Pierwsze kroki
Instrukcja obsługi
Pierwsze kroki
Logowanie do serwera cluster.issi.uz.zgora.pl przy pomocy
protokołu SSH (putty);
zmiana hasła (passwd);
sprawdzenie dostępu do wybranych węzłów (np. rsh n5, rsh m16,
itd.);
uruchomienie przykładowego programu (np. mpirun -np 128 test);
sprawdzenie obciążenia wybranego węzła (np. rsh n12 top);
sprawdzenie kto jest zalogowany (who).
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
10/13
Cluster ISSI
Pierwsze kroki
Instrukcja obsługi
Pierwsze kroki
Logowanie do serwera cluster.issi.uz.zgora.pl przy pomocy
protokołu SSH (putty);
zmiana hasła (passwd);
sprawdzenie dostępu do wybranych węzłów (np. rsh n5, rsh m16,
itd.);
uruchomienie przykładowego programu (np. mpirun -np 128 test);
sprawdzenie obciążenia wybranego węzła (np. rsh n12 top);
sprawdzenie kto jest zalogowany (who).
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
10/13
Cluster ISSI
Pierwsze kroki
Instrukcja obsługi
Pierwsze kroki
Logowanie do serwera cluster.issi.uz.zgora.pl przy pomocy
protokołu SSH (putty);
zmiana hasła (passwd);
sprawdzenie dostępu do wybranych węzłów (np. rsh n5, rsh m16,
itd.);
uruchomienie przykładowego programu (np. mpirun -np 128 test);
sprawdzenie obciążenia wybranego węzła (np. rsh n12 top);
sprawdzenie kto jest zalogowany (who).
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
10/13
Cluster ISSI
Pierwszy program
Instrukcja obsługi
Pierwszy program
#i n c l u d e < s t d i o . h>
#i n c l u d e <mpi . h>
i n t main ( i n t a r g c , c h a r ∗ a r g v [ ] ) {
i n t l procesow , pozycja , dl nazwy ;
c h a r n a z w a p r o c e s o r a [ MPI MAX PROCESSOR NAME ] ;
M P I I n i t (& a r g c , &a r g v ) ;
MPI Comm size (MPI COMM WORLD, &l p r o c e s o w ) ;
MPI Comm rank (MPI COMM WORLD, &p o z y c j a ) ;
M P I G e t p r o c e s s o r n a m e ( n a z w a p r o c e s o r a , &d l n a z w y ) ;
p r i n t f ( ”Tu wątek %d na w ę ź l e %s z %d d o s t ę p n y c h \n” ,
pozycja , nazwa procesora , l procesow ) ;
MPI Finalize ();
}
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
11/13
Cluster ISSI
Pierwszy program
Instrukcja obsługi
Jak uruchomić program?
Edycja kodu: vim test.c;
Kompilacja: mpicc test.c -o test;
Uruchomienie: mpirun -np 64 test;
Jak to działa?
Aktywacja komunikatora: MPI Init(&argc, &argv);
Pobranie ilości procesów:
MPI Comm size(MPI COMM WORLD, &l procesow);
Sprawdzenie z którym procesem mamy do czynienia:
MPI Comm rank(MPI COMM WORLD, &pozycja);
Pobranie nazwy węzła:
MPI Get processor name(nazwa procesora, &dl nazwy);
Zwolnienie komunikatora: MPI Finalize ();
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
12/13
Cluster ISSI
Pierwszy program
Instrukcja obsługi
Jak uruchomić program?
Edycja kodu: vim test.c;
Kompilacja: mpicc test.c -o test;
Uruchomienie: mpirun -np 64 test;
Jak to działa?
Aktywacja komunikatora: MPI Init(&argc, &argv);
Pobranie ilości procesów:
MPI Comm size(MPI COMM WORLD, &l procesow);
Sprawdzenie z którym procesem mamy do czynienia:
MPI Comm rank(MPI COMM WORLD, &pozycja);
Pobranie nazwy węzła:
MPI Get processor name(nazwa procesora, &dl nazwy);
Zwolnienie komunikatora: MPI Finalize ();
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
12/13
Cluster ISSI
Pierwszy program
Instrukcja obsługi
Jak uruchomić program?
Edycja kodu: vim test.c;
Kompilacja: mpicc test.c -o test;
Uruchomienie: mpirun -np 64 test;
Jak to działa?
Aktywacja komunikatora: MPI Init(&argc, &argv);
Pobranie ilości procesów:
MPI Comm size(MPI COMM WORLD, &l procesow);
Sprawdzenie z którym procesem mamy do czynienia:
MPI Comm rank(MPI COMM WORLD, &pozycja);
Pobranie nazwy węzła:
MPI Get processor name(nazwa procesora, &dl nazwy);
Zwolnienie komunikatora: MPI Finalize ();
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
12/13
Cluster ISSI
Pierwszy program
Instrukcja obsługi
Jak uruchomić program?
Edycja kodu: vim test.c;
Kompilacja: mpicc test.c -o test;
Uruchomienie: mpirun -np 64 test;
Jak to działa?
Aktywacja komunikatora: MPI Init(&argc, &argv);
Pobranie ilości procesów:
MPI Comm size(MPI COMM WORLD, &l procesow);
Sprawdzenie z którym procesem mamy do czynienia:
MPI Comm rank(MPI COMM WORLD, &pozycja);
Pobranie nazwy węzła:
MPI Get processor name(nazwa procesora, &dl nazwy);
Zwolnienie komunikatora: MPI Finalize ();
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
12/13
Cluster ISSI
Pierwszy program
Instrukcja obsługi
Jak uruchomić program?
Edycja kodu: vim test.c;
Kompilacja: mpicc test.c -o test;
Uruchomienie: mpirun -np 64 test;
Jak to działa?
Aktywacja komunikatora: MPI Init(&argc, &argv);
Pobranie ilości procesów:
MPI Comm size(MPI COMM WORLD, &l procesow);
Sprawdzenie z którym procesem mamy do czynienia:
MPI Comm rank(MPI COMM WORLD, &pozycja);
Pobranie nazwy węzła:
MPI Get processor name(nazwa procesora, &dl nazwy);
Zwolnienie komunikatora: MPI Finalize ();
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
12/13
Cluster ISSI
Pierwszy program
Instrukcja obsługi
Jak uruchomić program?
Edycja kodu: vim test.c;
Kompilacja: mpicc test.c -o test;
Uruchomienie: mpirun -np 64 test;
Jak to działa?
Aktywacja komunikatora: MPI Init(&argc, &argv);
Pobranie ilości procesów:
MPI Comm size(MPI COMM WORLD, &l procesow);
Sprawdzenie z którym procesem mamy do czynienia:
MPI Comm rank(MPI COMM WORLD, &pozycja);
Pobranie nazwy węzła:
MPI Get processor name(nazwa procesora, &dl nazwy);
Zwolnienie komunikatora: MPI Finalize ();
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
12/13
Cluster ISSI
Pierwszy program
Instrukcja obsługi
Jak uruchomić program?
Edycja kodu: vim test.c;
Kompilacja: mpicc test.c -o test;
Uruchomienie: mpirun -np 64 test;
Jak to działa?
Aktywacja komunikatora: MPI Init(&argc, &argv);
Pobranie ilości procesów:
MPI Comm size(MPI COMM WORLD, &l procesow);
Sprawdzenie z którym procesem mamy do czynienia:
MPI Comm rank(MPI COMM WORLD, &pozycja);
Pobranie nazwy węzła:
MPI Get processor name(nazwa procesora, &dl nazwy);
Zwolnienie komunikatora: MPI Finalize ();
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
12/13
Cluster ISSI
Pierwszy program
Instrukcja obsługi
Jak uruchomić program?
Edycja kodu: vim test.c;
Kompilacja: mpicc test.c -o test;
Uruchomienie: mpirun -np 64 test;
Jak to działa?
Aktywacja komunikatora: MPI Init(&argc, &argv);
Pobranie ilości procesów:
MPI Comm size(MPI COMM WORLD, &l procesow);
Sprawdzenie z którym procesem mamy do czynienia:
MPI Comm rank(MPI COMM WORLD, &pozycja);
Pobranie nazwy węzła:
MPI Get processor name(nazwa procesora, &dl nazwy);
Zwolnienie komunikatora: MPI Finalize ();
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
12/13
Cluster ISSI
Zaginione programy, biblioteki...
Instrukcja obsługi
Gdzie szukać „zabawek”
programy wykonywalne: /cluster/bin,
biblioteki: /cluster/lib,
pliki nagłówkowe: /cluster/include.
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
13/13
Cluster ISSI
Zaginione programy, biblioteki...
Instrukcja obsługi
Gdzie szukać „zabawek”
programy wykonywalne: /cluster/bin,
biblioteki: /cluster/lib,
pliki nagłówkowe: /cluster/include.
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
13/13
Cluster ISSI
Zaginione programy, biblioteki...
Instrukcja obsługi
Gdzie szukać „zabawek”
programy wykonywalne: /cluster/bin,
biblioteki: /cluster/lib,
pliki nagłówkowe: /cluster/include.
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
13/13
Cluster ISSI
Koniec programu
Dziękuję za uwagę!
Przemysław Jacewicz
Klaster ISSI - budowa i zastosowanie w badaniach naukowych
14/13