Projekt, realizacja oraz przetestowanie klastra obliczeniowego
Transkrypt
Projekt, realizacja oraz przetestowanie klastra obliczeniowego
POLITECHNIKA WARSZAWSKA Wydział Elektroniki i Technik Informacyjnych Instytut Systemów Elektronicznych Jacek Zysik PRACE PROWADZONE W ZESPOLE PERG/ELHEP. Projekt, realizacja oraz przetestowanie klastra obliczeniowego opartego na architekturze x86 działającego pod kontrolą systemu zarządzającego MOSIX Plan prezentacji: • • • • Cele pracy Koncepcja stworzonego systemu Hardware i software użyty w projekcie Faza testów - wyniki oraz wnioski z przeprowadzonych testów na stworzonym systemie • Podsumowanie Cele pracy: • Projekt i realizacja klastra obliczeniowego opartego na PC x86 • Sprawdzenie możliwości systemu MOSIX oraz jego wymagań sprzętowych i konfiguracyjnych, pod kątem zastosowania w nowoutworzonym klastrze w laboratorium PERG System MOSIX: MOSIX 1.12.1 – nakładka na system Linux, która sprawia iż cały system wielu jednostek jest widoczny jako jedna maszyna operacyjna działajaąca w sposób równoległy. Głównym składnikiem MOSIXA są adaptacyjne algorytmy (zdecentrelizowane) , które monitorują prace i odpowiadają za migracje procesów na najlepsze, dostępne węzły obliczeniowe. Główne zadania systemu MOSIX: - równoważenie obciążenia; - przenoszenie procesów z wolniejszych do szybszych węzłów; - przenoszenie procesów przy braku pamięci operacyjnej 4 Koncepcja stworzonego systemu Hardware i software użyty w projekcie • HARDWARE: – 14 maszyn PC x86: Celeron, Pentium, AMD – 10 Mbit Ethernet hub • SOFTWARE: - OS: Linux Debian Woody 3.0 kernel 2.4.28 - MOSIX 1.12.1 management system - SCILAB oraz skrypty systemowe Lp. Procesor RAM 1 Pentium III 500Mhz 192 MB 2 Celeron MMX 300Mhz 256 MB 3 Pentium II MMX 350 Mhz 256 MB 4 Pentium MMX 166 MHz 64 MB 5 Pentium MMX 166 MHz 64 MB 6 Pentium MMX 166 MHz 32 MB 7 Pentium MMX 166 MHz 98 MB 8 AMD-K6 250 MHz 32 MB 9 Pentium-S 200 MHz 98 MB 10 Pentium-S 200 MHz 64 MB 11 Pentium-S 150 MHz 64 MB 12 Pentium-S 133 Mhz 64 MB 13 Pentium MMX 133 MHz 64 MB 14 Pentium 133 MHz 64 MB Lista wszystkich jednostek: Node number Processor type Clock [Mhz] Memory [kB] 1 Celeron(Mendocino) 501.145 189884 2 Pentium 75-200 200.458 92448 3 Pentium MMX 133.637 60680 4 Pentium MMX 166.405 60544 5 Pentium 75-200 133.122 60560 6 Pentium MMX 166.404 60560 7 Pentium MMX 166.404 28232 8 Pentium 75-200 149.694 60584 9 AMD-K6tm 225.004 38264 10 Pentium 75-200 198.950 60584 11 Pentium MMX 167.048 92932 12 Pentium II (Deschutes) 350.803 254656 13 Celeron (Mendocino) 334.100 254656 14 Pentium 75-200 133.639 60100 Faza testów 1. Podział maszyn na grupy pod względem mocy obliczeniowej: G4 – do 25 MFlops, G7 – od 25MFlops do 100Mflops G3 – powyżej 100 MFlops 2. Przeprowadzenie 2 etapów testowania: • • obliczenia matematyczne z wykorzystaniem SCILAB ( odwracanie macierzy ) praca z wykorzystaniem algorytmu A.Kalickiego na obrazach uzyskanych podczas doświadczeń z DESY Faza testów Faza testów Modelowego Klastra obliczeniowego ETAP I ETAP II 1. Badanie osiągów poszczególnych maszyn wchodzących w skład systemu 6. Badanie osiągów maszyn wchodzących najmocniejszej grup obliczeniowej w skład 2. Badanie wydajności utworzonych grup obliczeniowych 7. Badanie osiągów maszyn wchodzących w skład najsłabszej grupy obliczeniowej 3. Dołączenie do maszyn wolnych jednej jednostki szybkiej 8. Badanie osiągów maszyn wchodzących w skład średniej grupy obliczeniowej 4. Dołączenie do maszyn szybkich jednej jednostki wolnej 9. Porównanie osiągów wszystkich trzech grup obliczeniowych 5. Porównanie wyników osiąganych przez układy mieszane 10. Porównanie osiągów mieszanych grup maszyn 11. Połączenie grup obliczeniowych: najmocniejszej i najsłabszej 3. Opracowanie wniosków z działania systemu Przykładowe wyniki testów Test nr 3: Test nr 1: Uśrednione czasy obliczeń dla maszyn z grup G3,G4 i G7 Wyniki badań dołączenia ROOTNODE do grupy G7 04:19 40 03:50 03:21 30 25 G3 20 G7 G4 15 10 Zmierzony czas Średni czas obliczeń [min] 35 02:52 02:24 01:55 01:26 00:57 5 00:28 0 00:00 1 2 3 4 5 6 7 8 9 10 1 2 Liczba zadań 3 4 5 6 7 8 9 Liczba wykonywanych zadań Grupa G7 ROOTNODE G7 + ROOTNODE 10 Przykładowe wyniki testów Test nr 6: Test nr 5: Zależność liczby procesów od pamięci RAM Przydział procesów dla badanych węzłów w układach UKŁAD1 i UKŁAD4 5 4 Liczba przydzielonych procesów Liczba procesów przyznanych nodom 5 3 2 1 0 1 2 3 4 5 6 7 8 9 10 11 12 4 3 2 1 0 1 2 3 4 Liczba zadań do wykonania NODE4 + ROOTNODE NODE9 + ROOTNODE NODE11 + ROOTNODE 5 6 7 8 9 10 11 12 Liczba zadań NODE4 + ROOTNODE NODE14 + ROOTNODE Wnioski z przeprowadzonych testów - szybkie połączenia sieciowe pomiędzy węzłami - zabezpieczenie optymalnej ilości dostępnej pamięci RAM w stosunku do charakteru wykonywanych zadań - łączenie maszyn o zbliżonych możliwościach obliczeniowych - stosowanie większej ilości maszyn zwiększa możliwości systemu - zachowanie kompromisu pomiędzy licznością jednostek a ich możliwościami Specyfikacja Dużego Klastra Główny serwer klastra – 2x Intel Pentium IV 3GHz Klaster zrealizowano poprzez połączenie 52 węzłów obliczeniowych w oddzielnej, zabezpieczonej domenie klastrowej. Wszystkie komputery wykorzystują architekturze Intel Pentium IV 3 GHz wraz z 2GB RAM. Każda stacja posiada własny dysk twardy o pojemności 200GB. Domena klastrowa jest zrealizowana w standardzie 802.3ab w oparciu o okablowanie UTP Kat. 5e. Jako urządzenia sieciowe są wykorzystywane przełączniki zarządzane 3COM Specyfikacja Dużego Klastra Węzeł główny stanowi serwerowa maszyna dwuprocesorowa posiadająca dwie jednostki Intel Pntium IV 3 GHz w technologii HT, 2 GB RAM oraz dysk twardy SCSI o pojemności 70GB. Główny węzeł pracuje jako maszyna dostępowa. Umożliwia logowanie lokalne zarówno z pracowni ELHEP oraz logowanie zdalnie za pośrednictwem protokołu SSH. Spełnia dla pozostałych węzłów rolę serwera usług DHCP, TFTP, NFS oraz NAT. Dziękuję za uwagę !!