Termin „moc obliczeniowa o wysokiej wydajności” odnosi się do praktyki agregowania mocy obliczeniowej w sposób, który zapewnia znacznie większą moc obliczeniową niż tradycyjne komputery i serwery. Korzystanie z HPC, czyli z mocy obliczeniowej „superkomputera”, przypomina zwykłe przetwarzanie, tyle że z większą wydajnością. Jest to sposób przetwarzania ogromnych ilości danych z bardzo dużą szybkością przy użyciu wielu komputerów i urządzeń pamięci masowej tworzących spójną infrastrukturę obliczeniową. HPC umożliwia badanie niektórych spośród największych światowych problemów w nauce, inżynierii i biznesie oraz znajdowanie odpowiedzi na związane z nimi trudne pytania.
Obecnie HPC służy do rozwiązywania złożonych problemów wymagających dużej wydajności, a przedsiębiorstwa coraz częściej przenoszą obciążenia HPC do chmury. Chmurowe rozwiązania HPC obniżają koszty badań i rozwoju produktów, ponieważ pozwalają na zmniejszenie liczby prototypów, przyspieszają testowanie i skracają czas wprowadzenia produktu na rynek.
Niektóre obciążenia, takie jak sekwencjonowanie DNA, są po prostu zbyt duże, aby mógł je obsługiwać jeden komputer. Do obsługi tego rodzaju dużych i złożonych wyzwań służą środowiska HPC lub superkomputery — ich poszczególne węzły (komputery) współpracują ze sobą w ramach klastra (grupy połączonych komputerów) w celu wykonywania ogromnych ilości obliczeń w krótkim czasie. Tworzenie i usuwanie tych klastrów jest często zautomatyzowane i przebiega w chmurze w celu zmniejszenia kosztów.
HPC można wykorzystywać do obsługi wielu rodzajów obciążeń — dwa najczęstsze z nich to obciążenia wyjątkowo proste do zrównoleglenia (embarrassingly parallel workloads) i obciążenia ściśle ze sobą powiązane.
Obciążenia wyjątkowo proste do zrównoleglenia to problemy obliczeniowe podzielone na małe, proste i niezależne zadania, które można wykonywać w tym samym czasie i które często wymagają niewielkiej komunikacji między sobą lub też nie wymagają jej wcale. Firma może na przykład przesłać 100 milionów rekordów kart kredytowych do poszczególnych rdzeni procesorów w klastrze złożonym z wielu węzłów. Przetwarzanie jednego rekordu karty kredytowej to małe zadanie, a gdy 100 milionów takich rekordów rozmieści się w klastrze, te małe zadania można wykonywać w tym samym czasie (równolegle) z zadziwiającą szybkością. Do typowych zastosowań należą symulacje ryzyka, modelowanie molekularne, wyszukiwanie kontekstowe i symulacje logistyczne.
Obciążenia ściśle ze sobą powiązane to zwykle duże wspólne obciążenia podzielone na mniejsze zadania, które komunikują się ze sobą w sposób ciągły. Innymi słowy, różne węzły klastra komunikują się ze sobą w trakcie przetwarzania. Wśród typowych zastosowań można tu wymienić obliczeniową mechanikę płynów, modelowanie prognoz pogody, symulacje materiałowe, emulacje kolizji samochodów, symulacje geoprzestrzenne i zarządzanie ruchem.
Od dziesięcioleci HPC odgrywa kluczową rolę w badaniach akademickich i wdrażaniu innowacji w przemyśle. Pomaga inżynierom, inżynierom danych, projektantom i innym pracownikom badawczym rozwiązywać duże, złożone problemy w znacznie krótszym czasie i po niższych kosztach niż tradycyjne obliczenia.
Główne korzyści zapewniane przez HPC:
Z rozwiązań HPC korzystają firmy z listy Fortune 1000 z niemal wszystkich branż, a popularność tych systemów stale rośnie. Według firmy Hyperion Research globalny rynek rozwiązań HPC ma do 2022 r. osiągnąć wartość 44 mld USD.
Poniżej przedstawiono niektóre z branż korzystających z rozwiązań HPC oraz typy obciążeń, w których obsłudze pomagają im te rozwiązania:
Obliczenia HPC można wykonywać lokalnie, w chmurze lub w ramach modelu hybrydowego stanowiącego kombinację obu tych rozwiązań.
W przypadku lokalnej obsługi obciążeń HPC firma lub instytucja badawcza tworzy klaster HPC złożony z serwerów, rozwiązań pamięci masowej i innej infrastruktury, którym zarządza i który z czasem modernizuje. W przypadku wdrożenia rozwiązania HPC w chmurze dostawca usług chmurowych administruje infrastrukturą i zarządza nią, a przedsiębiorstwa korzystają z niej w modelu płacenia tylko za faktycznie wykorzystane zasoby (pay-as-you-go).
Niektóre przedsiębiorstwa decydują się na wdrożenia hybrydowe, zwłaszcza te, które zainwestowały już w infrastrukturę lokalną, ale chcą również skorzystać z szybkości, elastyczności i oszczędności, które zapewnia chmura. Mogą wykorzystywać chmurę do bieżącej obsługi niektórych obciążeń HPC i korzystać z usług chmurowych ad hoc, gdy czas oczekiwania w kolejce do infrastruktury lokalnej staje się zbyt długi.
Przedsiębiorstwa, które zdecydowały się na lokalne wdrożenie środowiska HPC, uzyskują znaczną kontrolę nad swoją działalnością operacyjną, ale muszą stawić czoła kilku wyzwaniom, takim jak:
Popularność wdrażania rozwiązań HPC w chmurze rośnie, po części ze względu na koszty oraz inne wyzwania typowe dla środowisk lokalnych. Market Research Future przewiduje, że w latach 2017-2023 wzrost światowego rynku na tego rodzaju rozwiązania wyniesie 21%. Uruchamiając swoje obciążenia HPC w chmurze, firmy płacą tylko za faktycznie wykorzystywane zasoby i mogą szybko zwiększać lub zmniejszać zapotrzebowanie na te zasoby, gdy zmieniają się ich potrzeby.
Aby pozyskać i zatrzymać klientów, czołowi dostawcy chmury wdrażają najnowocześniejsze technologie zaprojektowane specjalnie pod kątem obsługi obciążeń HPC, a więc nie ma niebezpieczeństwa obniżenia wydajności, co jest nieuniknione w miarę starzenia się sprzętu lokalnego. Dostawcy ci oferują najnowsze i najszybsze procesory, zwykłe i graficzne, a także pamięć flash o małych opóźnieniach, błyskawicznie działające sieci RDMA i zabezpieczenia klasy korporacyjnej. Usługi są dostępne przez cały dzień, codziennie, z krótkim lub zerowym czasem oczekiwania w kolejce.
Nie wszyscy dostawcy infrastruktury chmurowej oferują takie same możliwości. Niektóre chmury nie są przeznaczone do obsługi obliczeń HPC i nie mogą zapewnić optymalnej wydajności w okresach szczytowego obciążenia zadaniami wymagającymi znacznych zasobów. Dokonując wyboru dostawcy chmury, należy wziąć pod uwagę następujące cechy:
Ogólnie rzecz biorąc, najlepiej jest szukać usług chmurowych opartych na infrastrukturze fizycznej (bare metal), które oferują większy zakres kontroli i wyższy poziom wydajności. Rozwiązanie HPC typu bare metal, w połączeniu z siecią klastrów RDMA, zapewnia wyniki identyczne, jak w przypadku korzystania z podobnego sprzętu w środowisku lokalnym.
Firmy i instytucje z wielu branż decydują się na obliczenia HPC, aby pobudzić wzrost, który będzie się utrzymywać przez wiele kolejnych lat. Oczekuje się, że globalny rynek rozwiązań HPC wzrośnie z 31 mld USD w 2017 r. do 50 mld USD w 2023 r. Z uwagi na fakt, że wydajność infrastruktury chmurowej nadal się poprawia, i że infrastruktura ta staje się jeszcze bardziej niezawodna i wydajna, oczekuje się, że znaczna część tego wzrostu będzie dotyczyć wdrażania środowisk HPC w chmurze. Pozwoli to firmom uniknąć konieczności inwestowania milionów w infrastrukturę centrów danych i związanych z tym kosztów.
W najbliższej przyszłości należy się spodziewać konwergencji technologii Big Data i HPC — ten sam duży klaster komputerów będzie wykorzystywany do analizowania wielkich zbiorów danych oraz do obsługi symulacji i innych obciążeń HPC. Konwergencja ta spowoduje dostępność większej mocy obliczeniowej na potrzeby każdego z tych obszarów, co doprowadzi do jeszcze bardziej przełomowych badań i innowacji.
i Earl Joseph, Steve Conway, Bob Sorensen, Alex Norton. Hyperion Research Update: ISC19. https://hyperionresearch.com/wp-content/uploads/2019/06/Hyperion-Research-ISC19-Breakfast-Briefing-Presentation-June-2019.pdf