Potřebujete stroj, který dokáže za sekundu provést biliony výpočtů s plovoucí desetinnou čárkou? Nebo potřebujete skvělý příběh o svém osobním superpočítači, který ve vaší vesnici vypnul světla? Postavit superpočítač je zajímavá výzva, pokud jste bohatý génius s trochou volného času. Technicky je víceprocesorový superpočítač síť počítačů, které společně řeší problém. Tento článek bude stručně diskutovat o každé fázi jeho vytváření se zaměřením na hardware a software.
Krok
Krok 1. Nejprve zjistěte, jaké hardwarové komponenty budete potřebovat
Jeden hlavní uzel, nejméně tucet identických výpočetních uzlů, ethernetový přepínač, distribuční jednotka napájení (PDU) a serverový rack. Podívejte se také na potřeby elektřiny, chlazení a prostoru. Zadejte IP adresu pro soukromou síť, názvy uzlů, softwarové balíky, které chcete nainstalovat, a jakou technologii chcete použít k tomu, aby všechny fungovaly společně při provádění paralelních výpočtů (více o tom níže).
- Ačkoli hardware, který budete potřebovat, je drahý, software v této příručce je zdarma a většina z nich je open source.
- Pokud chcete vidět, jak rychlý bude váš superpočítač (teoreticky), použijte toto:
Krok 2. Vybudujte výpočetní uzly
Potřebné výpočetní uzly si můžete sestavit sami nebo použít hotový server.
- Zvolte rámec počítačového serveru, který maximalizuje prostor, chlazení a energetickou účinnost.
- Nebo můžete použít zhruba tucet zastaralých serverů. Pokud jsou použity společně, jsou mnohem užitečnější než při použití jednotlivě a můžete docela ušetřit. Všechny procesory, síťové adaptéry a základní desky musí být stejné, aby systém běžel hladce. Samozřejmě nezapomeňte na RAM a úložnou kapacitu pro každý uzel a alespoň jednu optickou jednotku pro hlavní uzel.
Krok 3. Namontujte server, který jste zabudovali, do racku serveru
Začněte dole, abyste se vyhnuli námitkám nahoře. Pozvěte kamaráda, aby vám pomohl, protože zahlcené sady serverů mohou být tak těžké, že je obtížné je vejít do zásuvek.
Krok 4. Namontujte přepínač Ethernet na horní část rámce serveru
Využijte této příležitosti a nakonfigurujte jej: dejte mu velikost rámce 9 000 bajtů, nastavte IP adresu na statickou adresu, kterou jste zadali v kroku 1, a vypněte nepotřebné směrovací protokoly, jako je SMTP Snooping.
Krok 5. Nainstalujte jednotku pro distribuci energie
Pro vysoce výkonné výpočty můžete potřebovat 220 voltů v závislosti na tom, kolik proudu uzel vyžaduje při maximálním zatížení.
Krok 6. Jakmile je vše nainstalováno, můžete spustit proces konfigurace
Linux je nezbytný operační systém pro vysoce výkonné výpočetní klastry, protože kromě toho, že je ideální pro vědecké výpočty, je také 100% zdarma. S uzly, které dosahují stovek nebo dokonce tisíců, to bude určitě velmi drahé, pokud používáte Windows!
- Začněte instalací nejnovější verze BIOSu a firmwaru základní desky. Instalovaná verze musí být pro všechny uzly stejná. Začněte instalací nejnovější verze BIOSu základní desky a firmwaru, které by měly být stejné na všech uzlech.
- Nainstalujte distribuci Linuxu, kterou chcete, na každý uzel s grafickým rozhraním na hlavním uzlu. Oblíbenými možnostmi jsou CentOS, OpenSuse, Scientific Linux, RedHat a SLES.
- Autor důrazně doporučuje použít distribuci clusterů Rocks. Rocks okamžitě nainstaluje všechny programy, které váš superpočítač potřebuje k fungování, a použije šikovný způsob, jak se „sdílet“mezi všemi stávajícími uzly pomocí bootování PXE Red Hat a postupu „Kick Start“.
Krok 7. Nainstalujte si rozhraní pro zasílání zpráv, správu zdrojů a další základní softwarové knihovny
Pokud jste v předchozím kroku nenainstalovali Rocks, budete si muset připravit software potřebný k napájení paralelního výpočetního mechanismu sami.
- Nejprve budete potřebovat přenosný systém pro správu bash, jako je Torque Resource Manager, který bude provádět sdílení úloh mezi počítači.
- Dokončete nastavení spárováním točivého momentu s plánovačem clusterů Maui.
- Dále je třeba nainstalovat rozhraní pro zasílání zpráv, které je nutné k tomu, aby samostatné výpočetní uzly sdílely stejná data. OpenMP je jednoznačná volba.
- Nezapomeňte na maticové knihovny a překladače s více vlákny pro vytváření potřebných paralelních výpočetních programů. Nebo si jednoduše nainstalujte Rocks, aby to bylo ještě jednodušší.
Krok 8. Zkombinujte všechny výpočetní uzly do sítě
Hlavní uzel odešle výpočetní úlohy výpočetnímu uzlu, který pak musí odeslat zpět výsledky při vzájemné výměně zpráv. Čím dříve, tím lépe.
- Pomocí soukromé ethernetové sítě propojte všechny uzly v clusteru superpočítačů.
- Primárním uzlem může být server NFS, PXE, DHCP, TFTP a NTP v ethernetové síti.
- Tuto síť musíte oddělit od veřejné sítě, abyste zajistili, že odeslané pakety nebudou zasahovat do jiných sítí ve vaší místní síti.
Krok 9. Otestujte superpočítač, který jste vytvořili
Před použitím ostatními vám doporučujeme nejprve vyzkoušet výkon vašeho superpočítače. HPL (High Performance Linpack) je populární měřítko pro měření výpočetní rychlosti superpočítačů. Budete muset kompilovat ze zdroje se všemi možnostmi optimalizace, které nabízí kompilátor, který používáte pro architekturu, kterou jste si vybrali.
- Samozřejmě musíte kompilovat ze zdroje se všemi možnými možnostmi optimalizace pro vaši platformu. Pokud například používáte procesor AMD, zkompilujte jej pomocí Open64 s úrovní optimalizace -0fast.
- Porovnejte výsledky testů na webu TOP500.org a porovnejte svůj superpočítač s 500 nejrychlejšími superpočítači na světě!
Tipy
- Pro vysoké rychlosti sítě se podívejte na síťové rozhraní InfiniBand. Samozřejmě musíte být připraveni zaplatit prémiovou cenu.
- IPMI může zjednodušit správu velkých superpočítačových klastrů poskytováním KVM-over-IP, vzdáleným řízením cyklu napájení a dalšími funkcemi.
- Pomocí Ganglia můžete sledovat výpočetní zatížení uzlů.