Współczesne metody intensywnego przetwarzania danych High-performance computing & data-intensive processing: czym to jest, jak się ma do potrzeb dzisiejszego świata i jak jest realizowane Technologia Aplikacje: energetyka Wojciech Wiślicki, wiosna 2010
Produkcja i przechowywanie informacji
Przetwarzanie informacji: prawo Moora dla CPU
Przechowywanie informacji: prawo Moora dla nośników
Przesyłanie informacji: prawo Moora dla sieci
Wnioski Choć przyrost pamięci masowej jest bardzo szybki (2 rzędy wielkości/ 10 lat), to produkcja informacji przerasta możliwości jej magazynowania Podobnie szybko rosną możliwości CPU Jeszcze nieco szybciej rośnie przepustowość sieci, czyli rośnie stosunek: (liczba bitów w ruchu)/(liczba bitów statycznych)
Wnioski, c.d. Prawdopodobnie więcej informacji będziemy w przyszłości reprodukowali w określonym celu i silniej będziemy ją redukowali przed zapisem (produkcja informacji on demand,) Być może część informacji nie będzie miała określonej lokalizacji na czas swojego (krótkiego) życia (wirtualizacja)
Technologia: hardware Procesory i architektury wieloprocesorowe Pamięć masowa: nośniki, organizacja, dostęp Sieci: komunikacja lokalna i wielkoskalowa
Technologia: hardware
Technologia: software Oprogramowanie procesora Systemy operacyjne Języki wysokopoziomowe Protokoły komunikacji Bazy danych
Technologia: organizacja zasobów i komunikacji, zarządzanie Przetwarzanie równoległe (Parallell Computing) Przetwarzanie rozproszone (Distributed Computing) Serwisy sieciowe i architektura zorientowana na usługi (Service-Oriented Architecture) Grid i Cloud
CPU Układ scalony: monokryształ Si + tranzystory w warstwach półprzewodnikowych, nanoszonych fotolitograficznie Złocone wyprowadzenia metalowe
CPU, c.d. Podstawowa zasada: sekwencyjne wykonywanie ciągu instrukcji: FETCH (odczyt) instrukcji (IF) lub danych (DF) DECODE (dekodowanie) wartości instrukcji (co robi) i adresu danych (gdzie dane w pamięci) EXECUTE (wykonanie instrukcji), związane z sięgnięciem do obszarów pamięci, w których są dane WRITEBACK (zapis wyników)
CPU, podstawowe przetwarzanie skalarne (subscalar) w architekturze Single Instruction Single Data (SISD)
CPU: realizacje zrównoleglania Zrównoleglenie na poziomie instrukcji (Instruction Level Parallelism ILP) Zrównoleglenie na poziomie wątków (Thread Level Parallelism TLP) Zrównoleglenie na poziomie danych (Data Level Parallelism)
Instruction Level Parallelism (or Pipelining)
Instruction Level Parallelism (or Pipelining), c.d Zredukowanie zbioru instrukcji (RISC) w porównaniu do tradycyjnego, rozbudowanego zbioru (CISC) + zastosowanie potokowości, dały przełom w postaci nowoczesnej architektury procesorów
Parallel Computing Implementation, np. Multiple Instruction Single Data (MISD)
Data Parallelism (or vector processing), np. Single Instruction Multiple Data (SIMD)
Thread Level Parallelism (or Parallel Computing) Podział logiczny programów na części słabo zależne (wątki) Kombinacja strategii MISD i SIMD w strategię MIMD, tak aby zapewnić równoległe wykonywanie wątków
Integracja modułów: rack mount
Dalsza integracja modułów: blade servers
Co robić, gdy nie wystarczają lokalne zasoby obliczeniowe.. lub gdy nie ma sensu lokować ich wszystkich w jednym miejscu? I kiedy to może się stać?
Internet --> WWW --> Grid Prekursorem było WWW: Tim Barners-Lee, CERN, ok GRID: Ian Foster & Carl Kesselman, ANL, ok. 2000
Dlaczego GRID? Złożoność problemów Złożoność urządzeń i grup ludzkich
Czym jest grid? Grid jest rodzajem rozproszonego computingu, tzn. do zadania używamy zasobów zlokalizowanych w różnych miejscach i połączonych siecią Grid organizuje przetwarzanie danych, zarówno zasoby, jak użytkowników, lecz nie zarządza nimi centralnie. Zasoby należą do różnych właścicieli Używane są tzw. open standards Zapewnia Quality of service
Pierwszy historycznie przykład GRIDu: home Każdy komputer podłączony do Internetu może zainstalować oprogramowanie do analizy danych z radioteleskopu San Mateo CA Niebo podzielone jest na małe obszary i każdy komputer dostaje kawałek do przeanalizowania w czasie, gdy jest nieobciążony (zasada screen-savera)
Pierwszy historycznie przykład GRIDu: home, c.d. Poszukuje się w widmie częstości struktur niepodobnych do znanych wzorców
Pierwszy historycznie przykład GRIDu: home, c.d. Obecnie home ma 5.5 mln uczestników home nie jest jednak prawdziwie rozwiniętym gridem (brak prawdziwych serwisów i QoS)
Pierwszy historycznie przykład GRIDu: home, c.d. Dotychczas (ok. 10 lat) nie znaleziono ET
Architektura gridu (opartego na systemie gLite) Model przetwarzania danych Łączność: sieć GEANT i sieciowa koordynacja operacyjna ruchu Organizacja w dużej skali: struktury globalne, federacje, społeczności użytkowników Struktura węzła gridowego Dostęp do zasobów i usługi gridowe Aplikacje
Europejska sieć szkieletowa GEANT
Wielowarstwowy (multi-tier) model przetwarzania danych: LHC w CERN
Organizacja GRIDU z lotu ptaka Pl: NREN=PIONIER, RGI=PlGrid
Podstawowe elementy struktuaralne: węzły gridowe
Podstawowe usługi gridowe (system gLite) Katalogi zbiorów i metadanych Workflow management Monitoring Accounting Zarządzanie rozproszonymi zbiorami danych Zarządzanie wirtualnymi organizacjami użytkowników Wsparcie dla użytkowników
Dostęp do gridu Trzeba skutecznie rozpoznać użytkownika i dać mu bezpieczny dostęp do zasobów obliczeniowych
Dostęp do gridu, c.d. Grid Security Infrastructure, oparta na certyfikatach dla użytkowników, wystawianych przez narodowe Certificate Authorities Certyfikaty użytkowników w formacie X.509, umożliwiające autentykację (sprawdzenie tożsamości) użytkownika Autoryzacja na zasoby udzielana w ramach wirtualnych organizacji przez serwisy Virtual Organization Membership Service (VOMS)
Trochę statystyki: Enabling Grids for E-science 54 kraje, 267 węzłów sieciowych CPU dostępnych 24/7 20 PB pamięci dyskowej + tape MS 200 wirtualnych organizacji użytkowników zadań/dzień 15 obszarów tematycznych aplikacji
Worldwide LHC Computing Grid
Infrastruktura obliczeniowa Serwisy produkcyjne (PS), używane w bieżącej pracy operacyjnej, np. Worldwide LHC Computing Grid Serwisy pre-produkcyjne (PPS), używane do testowania nowych narzędzi i usług gridowych przed ich wdrożeniem do produkcji Infrastruktura szkoleniowa (portal szkoleniowy GILDA), umożliwiająca przeprowadzanie kursów gridowych bez wpuszczania użytkowników na infrastrukturę produkcyjną
Infrastruktura obliczeniowa Serwisy produkcyjne (PS), używane w bieżącej pracy operacyjnej, np. Worldwide LHC Computing Grid Serwisy pre-produkcyjne (PPS), używane do testowania nowych narzędzi i usług gridowych przed ich wdrożeniem do produkcji Infrastruktura szkoleniowa (portal szkoleniowy GILDA), umożliwiająca przeprowadzanie kursów gridowych bez wpuszczania użytkowników na infrastrukturę produkcyjną
Aplikacje Dwa największe gridy typu general purpose, to EGEE (EC) i OSG (USA) Ich największymi użytkownikami są eksperymenty nowej generacji w fizyce wysokich energii, głównie przy Large Hadron Collider w CERNie Istnieją też duże aplikacje biomedyczne, geologiczne, meteorologiczne, chemiczne, z fizyki plazmy.., uprawiane zarówno na EGEE, OSG, jak i na gridach dziedzinowych
Eksperymenty fizyki cząstek
Blokowanie neuraminidazy na powierzchni wirusa H5N1
t=200μs Migration Desktop Grid Site A Site B Site C 20 GB 4 GB Ultradźwiękowa tomografia
Najniższy poziom przetwarzania w gridzie WLCG: Tier-3 Poziom ten nie jest udostępniany w gridzie Służy lokalnym grupom do celów deweloperskich Może być też mocną lokalną farmą do analizy na wysokim poziomie, np. do zrównoleglonej analizy PROOF'em Tier-3 może mieć minimalną funkcjonalność gridową (np. tylko user interface i gridowy transfer danych)
Wsparcie dla użytkowników
Monitoring gridu: GIIS w Academia Sinica Klaster warszawski w domenie polgrid.pl
Monitoring gridu: GIIS w Academia Sinica, c.d. Klaster warszawski w domenie polgrid.pl
Trudne do pogodzenia sprzeczności interesów Kto jest właścicielem i kto zarządza zasobami obliczeniowymi? Różne podmioty porozumiewają się, nikt nie zrzeka się praw do swoich części Jeden właściciel i administrator Kto finansuje infrastrukturę i serwisy? Provider(zy): wolny dostęp dla użytkowników Użytkownicy: dostęp płatny
Trudne do pogodzenia sprzeczności interesów, c.d. Bezpieczeństwo serwisów i rzetelność infrastruktury Podstawowe bezpieczeństwo w ramach Grid Security Infrastructure, bez odpowiedzialności finansowo-prawnej provider'ów Wysokie wymagania niezawodności (>99.99%) i predefiniowane bezpieczeństwo danych, z określoną odpowiedzialnością finansowo-prawną
Dwa modele przetwarzania: GRID vs. CLOUD GRID Współdzielone zasoby należące do wielu właścicieli, znajdujące się w różnych miejscach, połączone, brak zarządzania centralnego. Przykłady: EGEE (EU+), OSG (USA) CLOUD Zasoby rozproszone, lecz zarządzane i posiadane przez jednego właściciela. Użytkownik płaci za usługi (dostęp, cykle, pamięć..) Przykłady: Amazon Elastic Compute Cloud, Google App Engine
GRID vs CLOUD Provider: nauka Technologia open source Użytkownik wpływa na infrastrukturę i dostosowuje do specyficznych zadań Złożony – do używania wymagana wstępna wiedza Provider: komercja Technologia proprietary Użytkownik dzierżawi dostęp do zdefiniowanej infrastruktury Prosty w użyciu od poziomu zero
GRID vs CLOUD, c.d. Niepewna jakość usług Możliwość tworzenia własnych, specyficznych serwisów Bezpieczeństwo danych: repliki w różnych miejscach Łatwe współdzielenie danych Komercyjnie gwarantowana jakość Brak wysoko- specjalizowanych serwisów aplikacyjnych Bezpieczeństwo danych: specjalna usługa Współdzielenie po wykupie dostępu
Pro domo sua: przetwarzanie rozproszone dla energetyki Zadania computingu wspierającego energetykę w Polsce: Konfiguracja i eksploatacja siłowni jądrowych Dystrybucja energii Monitoring zagrożeń radiacyjnych i chemicznych oraz wspomaganie decyzyjne Bezpieczeństwo energetyczne
Przetwarzanie rozproszone dla energetyki, c.d. Koncepcja computingu na potrzeby długofalowego programu rozwoju energetyki w Polsce: Centrum Informatyczne w Świerku jako główny węzeł wsparcia informatycznego Architektura CIŚ uwzględniająca specyfikę zadań (kiedy GRID, a kiedy CLOUD?) Specjalne wymagania bezpieczeństwa a rekonfigurowalność klastra
Inne przykłady zastosowań: aplikacje interaktywne Symulacja rozprzestrzeniania się zanieczyszczeń w atmosferze Zarządzanie kryzysowe w razie huraganu Projektowanie lekarstwa na ptasią grypę Ultradżwiękowa tomografia komputerowa PT AT SL IE TR GR CY IL LT LV EE BE SE FI RU UK FR LU MT IS IT ES NO HR RO CZ PL SK HU BG CH 4 NL 2 2 DK DE
Height above Surface in m Zanieczyszczenia w atmosferze
LEAD: huragany tropikalne w USA Product Generation Display, Dissemination Models and Algorithms Driving Sensors The CS challenge: Build cyberinfrastructure services that provide adaptability, scalability, availability, useability, and real-time response.
Monitoring zagrożeń radiologicznych
Monitoring zagrożeń chemicznych
Monitoring zagrożeń radiologicznych i chem., c.d. Charakter serwisu wymaga całkowitego bezpieczeństwa danych i gwarantowanej jakości (wysoki poziom Service Level Agreement) Potrzebne zasoby na życzenie (on demand) z możliwością szybkiej alokacji Bezpieczniejszym rozwiązaniem jest CLOUD, aniżeli GRID
Zadania off-line, wymagające bezpieczeństwa baz danych, lecz nie obliczeń Transport materii i promieniowania, obliczenia reaktorowe oraz optymalizacja eksploatacji siłowni jądrowych Optymalizacja dystrybucji energii w sieciach, projektowanie sieci przesyłu energii i surowców (zadania typu routingu na grafach i optymalizacji dyskretnej; bardzo wymagające obliczeniowo) Zadania doskonałe dla GRIDu
Sieć szkieletowa w CIŚ
Rekonfigurowalne zasoby w CIŚ Firewall/Router Wewnętrzny firewall Możliwość odcięcia dostępu Serwer kolejek klastra publicznego WN 1 WN k WN k+1 WN n Serwer instalacji klastra publicznego Serwer kolejek klastra o podwyższonym poziomie bezpieczeństwa WN 1... WN k WN k+1 WN n Procedura bezpiecznego przenoszenia maszyn Serwer instalacji klastra o podw. poz. bezp. Maszyny obliczeniowe Serwery pamięci masowej klastra o podw. poz. bezp. Serwerypamięci masowej klastra publicznego...
Parę refleksji końcowych Intensywne przetwarzanie danych ma charakter coraz bardziej rozproszony Infrastruktura staje się niewidoczna dla użytkownika Architekturę gridu determinują usługi (SOA)
Parę refleksji końcowych, cd. Dotychczas mówiliśmy o niezbędności gridu - czas na zastosowania, w których pokaże nam swoją niezbędność (prawdopodobnie są za progiem) Bariery ekonomiczne: eksploatacja droższa od inwestycji (na razie dopiero przy klastrach wielkości Google)
Parę refleksji końcowych, cd. Dotąd grid nie skomercjalizował się, lecz zapewne zrobi to: Nierozwiązany problem bezpieczeństwa danych Brak modelu biznesowego dla sprzedaży usług aplikacyjnych (nie należy liczyć na sprzedaż gołych zasobów obliczeniowych) Usługi dostępu są zbyt słabo rozwinięte dla masowego odbiorcy