To sprawia, że model wieloprocesorowy jest atrakcyjny, jeśli chcesz używać superkomputera do uruchamiania popularnych aplikacji wielowątkowych, takich jak narzędzia do renderowania 3D lub kodery multimediów.
Tworzenie klastra
Podejście wieloprocesorowe ma ograniczenia. Po zainstalowaniu dwóch drogich procesorów na drogiej płycie głównej prawie nie ma możliwości organicznej rozbudowy; możesz zainstalować więcej pamięci RAM lub wymienić procesory na parę mocniejszych modeli, ale w zasadzie masz zamknięty system. Bardziej elastycznym podejściem jest tworzenie klastrów.
Klaster to grupa komputerów, zwykle połączonych za pośrednictwem sieci lokalnej, która działa tak, jakby był pojedynczym systemem.
okna profilowe tymczasowe 10
Klaster obliczeniowy może być postrzegany jako makrokosmos systemu wieloprocesorowego, w którym wiele fizycznych komputerów pracuje równolegle nad swoimi indywidualnymi zadaniami
Klastry mogą być używane do różnych celów, takich jak zapewnianie równoważenia obciążenia i odporności na awarie usług sieciowych, ale model ten nadaje się szczególnie dobrze do zastosowań o dużej mocy obliczeniowej. Rzeczywiście, podejście klastrowe było podstawą większości najbardziej znanych superkomputerów w historii, w tym wiodącego na świecie komputera K firmy Fujitsu.
Filozofia klastrowania superkomputerów jest prosta. Jedna fizyczna (lub wirtualna) maszyna jest skonfigurowana jako system główny lub węzeł główny i to w tym systemie uruchamiany jest główny kod aplikacji. Inne węzły nie robią nic poza siedzeniem i czekaniem, aż system główny przekaże im obciążenia; po ich otrzymaniu wykonują pracę i zwracają wyniki tak szybko, jak to możliwe.
Klaster obliczeniowy może być postrzegany jako makrokosmos systemu wieloprocesorowego, w którym wiele fizycznych komputerów pracuje równolegle nad swoimi indywidualnymi zadaniami.
Różnica polega na tym, że węzły można dodawać do klastra lub z niego usuwać tak łatwo, jak podłączenie nowego komputera do sieci; a co więcej, nie ma żadnego wymogu, aby sprzęt węzła używał określonej architektury.
Jeśli chcesz, możesz złożyć klaster z wielu różnych systemów, w tym netbooków, laptopów, stacji roboczych i serwerów o wysokiej wydajności. Jedynym wymaganiem jest to, że każdy węzeł ma uruchomione odpowiednie oprogramowanie klienckie.
Prawdopodobnie najbardziej znanymi przykładami klastrów obliczeniowych są projekty [chronione przez pocztę e-mail] i [chronione przez pocztę e-mail] – ale termin klaster częściej oznacza centralnie zarządzany system (projekty, które łączą moc zdalnych komputerów, są zamiast tego określane jako przetwarzanie siatkowe ).
Węzły klastra są zwykle połączone znacznie szybszym łączem niż zwykłe połączenie internetowe, aby zminimalizować opóźnienia związane z przesyłaniem obciążeń w tę iz powrotem. W klastrze domowym może to być Gigabit lub 10GbE; komputer K używa zastrzeżonego połączenia o nazwie Tofu, które zapewnia przepustowość 100 GB/s.
Dowiedz się więcej
Kodowanie superkomputerowe
Klastry oparte na systemie Windows można dość łatwo składać za pomocą systemu operacyjnego Windows HPC Server 2008, a firma Microsoft zapewnia wytyczne dotyczące tworzenia aplikacji obsługujących klastry, które będą korzystać z zasobów klastra po uruchomieniu w takim systemie. Alternatywnie istnieją różne bezpłatne dystrybucje Linuksa przeznaczone do klastrowania, takie jak openMosix i ClusterKnoppix. Zapewniają one przyjazne dla użytkownika doświadczenie, które sprawia, że prawie bez wysiłku można skonfigurować klaster o dowolnej wielkości przy użyciu popularnego systemu Beowulf.
Niezależnie od wybranej trasy, jednym z ograniczeń, które prawdopodobnie napotkasz, jest brak istniejących aplikacji zaprojektowanych do korzystania z zasobów klastra. Niekoniecznie stanowi to problem, ponieważ zadania superkomputera są zwykle wykonywane przez kod na zamówienie.
Karty dodatkowe
Podejście klastrowe jest elastyczne, ale dość marnotrawne – zasadniczo oznacza to, że cały komputer jest włączony i pobiera energię, gdy zazwyczaj korzystasz tylko z kilku funkcji procesora.
Bardziej energooszczędnym podejściem jest zamontowanie dużej liczby rdzeni procesorów na jednej karcie rozszerzeń i wykorzystanie tych rdzeni jako wirtualnego klastra.
Poprzednia strona Następna strona