24.11.2017
PL EN
12.03.2017 aktualizacja 12.03.2017

Trzęsienie ziemi w chmurze

Centrum ostrzegania o trzęsieniach ziemi, które mogą nastąpić w Kalifornii, tworzy modele obliczeniowe ryzyka i zagrożeń w dziesiątkach tysięcy punktów siatki geofizycznej. Do przeanalizowania wszelkich możliwych ruchów mas ziemi wzdłuż uskoku św. Andrzeja w każdym z tych punktów potrzeba milionów obliczeń. Wykonują je wirtualne maszyny w tzw. chmurach. Polscy badacze uczestniczą w pracach nad optymalnym zastosowaniem chmur w nauce.

W projekcie finansowanym przez Narodowe Centrum Nauki dr inż. Maciej Malawski z Akademii Górniczo-Hutniczej we współpracy z Uniwersytetem w Południowej Kalifornii w Los Angeles i Uniwersytetem Notre Dame w Indianie bada zastosowania obliczeń w chmurach m.in. na obszarach aktywnych sejsmicznie.

Jak wyjaśnia kierownik projektu, chmury to wirtualne maszyny, posiadające ogromne moce obliczeniowe. Ich możliwości są wynikiem połączenia w jedną infrastrukturę tysięcy komputerów na całym świecie, w tym superkomputerów, zajmujących wielką przestrzeń serwerowni.

Problem z optymalizacją obliczeń wysyłanych „do chmury” to dylemat ekonomiczny. Zarówno firmy, jak i grupy uczonych muszą rozważyć, czy chcą rozdzielić zadania między wiele procesorów i otrzymać wynik szybciej, płacąc więcej, czy też może bardziej niż na czasie zależy im na nieprzekroczeniu budżetu na projekt badawczy. Kwestia odpowiedniego podzielenia zadań jest dość skomplikowana, dlatego w wielkich projektach naukowych, w tym geologicznych, obok naukowców z danej domeny, zatrudniani są informatycy. Taką rolę pełni właśnie m.in. dr Malawski.

Aby ocenić zagrożenie trzęsieniem ziemi w danym punkcie, sejsmolodzy tworzą mapy, w których poprzez symulacje geofizyczne ruchu skorupy ziemskiej może zostać oszacowana wysokość fali sejsmicznej w danym punkcie. Mapa Południowej Kalifornii musi składać się z rozmieszczonych na siatce punktów. Wyobraźmy sobie, że siatka ma wymiary 100 na 100, a więc linie przecinają się w 10 tys. punktów. W każdym z tych punktów trzeba policzyć, jakie będzie ryzyko pochodzące od różnych trzęsień ziemi - wylicza rozmówca PAP.

To nie koniec, podkreśla dr Malawski, bo te trzęsienia mogą pochodzić z różnych miejsc, gdzie ścierają się z sobą płyty kontynentalne. W Kalifornii jest uskok tektoniczny św. Andrzeja i w różnych punktach tego uskoku może nastąpić nagły ruch, który z kolei może doprowadzić do trzęsień ziemi. W związku z tym możliwych źródeł trzęsienia ziemi wzdłuż całego uskoku jest nawet kilka tysięcy. A naukowcy muszą policzyć w każdym punkcie mapy wpływ różnych możliwych trzęsień ziemi wzdłuż całego uskoku. Czyli 10 tys. punktów razy kilka tysięcy możliwych scenariuszy - to może dać ponad milion przypadków do obliczenia.

„Do tego bardzo dobrze nadają się takie architektury obliczeniowe jak chmury. Dzięki nim można dość szybko uzyskać dostęp do dużej liczby procesorów. Wirtualne maszyny tworzone są na żądanie i każda z nich może wykonać swoją porcję obliczeń. Duże obliczenie można łatwo podzielić na drobne kawałki. Problem polega na tym, jak dobrze podzielić takie obliczenie na mniejsze porcje, żeby można było je w rozproszonej architekturze policzyć. I żeby liczyły się szybko, a jednocześnie niedrogo” - mówi dr Malawski. Jego zadaniem w projekcie jest m.in. rozwój oprogramowania umożliwiającego zlecanie takich obliczeń.

Infrastruktury chmurowe dla naukowców są tworzone powszechnie. W Polsce istnieje system PL Grid, łączący kilka klastrów zlokalizowanych w dużych miastach, tworzący infrastrukturę obliczeniową dostępną dla naukowców. Optymalizacja obliczeń wymaga ich podziału na mniejsze kawałki. Jednak największe chmury obliczeniowe są dostarczane przez dostawców komercyjnych, jak Google czy Amazon.

„Mamy tu do czynienia z czynnikiem kosztowym, a więc dostęp do procesora możemy sobie kupić, płacąc za czas korzystania z infrastruktury. Jeśli za godzinę zużycia procesora musimy zapłacić 1 centa, to jeśli potrzebujemy tysiące procesorów na wiele godzin, wówczas kwoty robią się znaczne większe. Im szybciej chcemy policzyć nasze zadania, tym drożej nam to wyjdzie” - tłumaczy informatyk.

Dodaje, że jeśli specjaliści podzielą badany problem na zbyt drobne kawałki, wówczas koordynacja i synchronizacją zadań pochłonie bardzo dużo czasu i pracy. Może się zatem okazać, że wyniku wcale nie uzyska się znacznie szybciej, niż gdyby zadania były pogrupowane na większe „porcje”.

„To podstawowy problem programowania równoległego – jeśli coś podzielę na dwa kawałki i liczę na dwóch procesorach, to chcę, żeby policzyło się dwa razy szybciej niż na jednym. Ale czasem okazuje się, że proces zwalnia albo liczy tylko 1,5 razy szybciej. Czy zatem opłaca mi się zapłacić dwa razy więcej za przyspieszenie rzędu 10, 20 proc.? Są to dylematy optymalizacji wielokryteriowej: co jest dla nas ważne, czy czas – bo na przykład chcemy jako pierwsi zgłosić publikację lub ostrzec przed śmiertelnym niebezpieczeństwem, czy może rozważne gospodarowanie budżetem projektu” - podsumowuje dr Malawski.

Optymalizacja obliczeń jest też możliwa do zastosowania w innych dziedzinach nauki, np. przy sekwencjonowaniu DNA albo poszukiwaniu planet pozasłonecznych.

PAP - Nauka w Polsce, Karolina Duszczyk

kol/ mrt/

Partners

Copyright © Fundacja PAP 2017