gtemata.com

Cum se construiește un supercomputer

Aveți nevoie de o mașină care poate efectua sute de milioane de calcule în virgulă mobilă pe secundă? Sau aveți nevoie de o poveste pentru a vă spune prietenilor despre cum supercalculatorul pe care îl aveți în subsol a explodat întregul cartier? Construirea clusterului Computere de înaltă performanță, cunoscut mai degrabă ca un supercomputer, este o provocare pe care toți geekii cu experiență, cu un weekend de timp liber și bani pe care să-i cheltuiți, pot face față. Vorbind în termeni tehnici, un supercomputer modern multiprocesor este o rețea de calculatoare care lucrează în paralel pentru a rezolva o problemă. Acest articol va descrie pe scurt fiecare etapă a procesului, concentrându-se pe hardware și software.

paşi

1
Mai întâi determinați componentele hardware și resursele de care aveți nevoie. Veți avea nevoie de cel puțin un nod principal, cel puțin douăsprezece noduri computationale identice, un switch Ethernet, o unitate de distribuție a energiei și un suport. Determinați cheltuielile cu energia, răcirea și spațiul necesar. De asemenea, decideți ce adresă IP doriți să atribuiți rețelei dvs. private, ce nume să dați nodurilor, ce pachete software să instalați și ce tehnologie să adopte pentru a permite calculul paralel (mai multe informații despre acest aspect mai târziu).
  • Chiar dacă hardware-ul este scump, tot software-ul enumerat în acest ghid este gratuit, iar majoritatea dintre ele sunt open source.
  • Dacă doriți să calculați viteza teoretică a supercomputerelor, utilizați acest instrument: https://hpl-calculator.sourceforge.net/
  • 2
    Construiți nodurile computaționale. Va trebui să asamblați nodurile sau să cumpărați servere pre-construite.
  • Alegeți un șasiu de server care maximizează spațiul, răcirea și energia.
  • sau puteți utiliza aproximativ zece servere vechi și folosite - în acest fel puteți salva foarte mult. Toate procesoarele, adaptoarele de rețea și plăcile de bază ar trebui să fie identice pentru ca sistemul să funcționeze bine. Desigur, nu uitați spațiul RAM și spațiul de stocare pentru fiecare nod și cel puțin o unitate optică pentru nodul principal.
  • 3
    Instalați serverele pe suport. Începeți în partea de jos, pentru a nu suprabalanța greutatea suportului. Va trebui să obțineți ajutor de la un prieten în acest stadiu - serverele pot fi foarte grele și le puteți introduce pe șine care le vor fixa la raft este dificil.
  • 4
    Instalați comutatorul Ethernet de pe șasiul serverului. Configurați comutatorul: permiteți dimensiunile de 9000 de octeți, setați adresa IP la adresa statică pe care ați decis-o în pasul 1 și dezactivați protocoalele de rutare inutile, cum ar fi snoopingul SMTP.
  • 5
    Instalați unitatea de distribuție a alimentării (PDU). În funcție de curentul necesar la noduri la sarcină maximă, poate fi necesară o PDU de 220 volți pentru calculul de înaltă performanță.


  • 6
    După ce ați instalat totul, puteți porni procesul de configurare. Linux este cel mai utilizat sistem de operare pentru clusterele HPC - nu este doar mediul ideal pentru calculul științific, dar instalarea acestuia pe sute sau chiar mii de noduri este complet gratuită. Imaginați-vă cât de mult ar costa instalarea Windows pe toate aceste noduri?
  • Începeți prin a instala cea mai recentă versiune de BIOS și firmware-ul plăcii de bază, care ar trebui să fie același pentru toate nodurile.
  • Instalați distribuția Linux preferată pe fiecare nod, cu o interfață grafică pentru nodul principal. Cele mai populare opțiuni includ CentOS, OpenSuse, Scientific Linux, RedHat și SLES.
  • Încearcă să folosești Rocks Cluster Distribution. În plus față de instalarea tuturor instrumentelor necesare funcționării unui cluster computational, Rocks utilizează o metodă excelentă pentru "distribui" multe cazuri de el însuși la noduri foarte repede folosind boot PXE și procedură "Kick Start" de Red Hat.
  • 7
    Instalați interfața de transmitere a mesajelor, managerul de resurse și celelalte biblioteci necesare. Dacă nu ați instalat Rocks în pasul anterior, va trebui să configurați manual software-ul necesar pentru a activa mecanismul de calcul paralel.
  • Mai intai veti avea nevoie de un sistem de management bash, cum ar fi Torque Resource Manager, care va permite sa impartiti si sa distribuiti sarcinile mai multor procesoare.
  • Cuplați cuplul cu Maui Cluster Scheduler pentru a finaliza configurația.
  • Ca următorul pas, va trebui să instalați interfața de transmitere a mesajelor, care este necesară pentru a partaja date între procesele individuale ale diferitelor noduri computaționale. OpenMP este cea mai bună alegere.
  • Nu uitați bibliotecile matematice multi-threaded și compilatorul pentru a crea programele de calcul paralel. Instalarea Rocks ar face acest proces mult mai simplu.
  • 8
    Creați o rețea cu noduri computaționale. Nodul principal trimite activitățile la nodurile computationale, care vor trebui să răspundă cu rezultatele și să-și trimită mesaje reciproc. Cu cât vor fi mai repede aceste operațiuni, cu atât mai puternic va fi supercomputerul.
  • Utilizați o rețea privată Ethernet pentru a conecta toate nodurile de cluster.
  • Nodul principal poate funcționa și ca servere NFS, PXE, DHCP, TFTP și NTP pe rețeaua Ethernet.
  • Va trebui să separați această rețea de rețeaua publică, pentru a vă asigura că pachetele trimise în difuzare nu interferează cu alte rețele din rețeaua LAN.
  • 9
    Încercați clusterul. Ultimul lucru pe care trebuie să-l faceți înainte de a utiliza puterea completă a supercomputerelor dvs. este de a testa performanța acestuia. Valoarea de referință HPL (High Performance Lynpack) este o alegere comună pentru măsurarea vitezei computaționale a clusterului. Va trebui să îl compilați din fișierul sursă cu toate optimizările oferite de calculatorul dvs. pentru arhitectura dvs.
  • De exemplu, dacă utilizați AMD CPU, compilați cu Open64 cu nivel de optimizare -0fast.
  • Comparați rezultatele pe cele de pe TOP500.org pentru a compara clusterul cu cele mai rapide 500 de supercomputere din lume.
  • Sfaturi

    • IPMI poate face foarte ușor administrarea unui cluster mare oferind KVM-over-IP, resetare de la distanță și multe altele.
    • Pentru rețele cu viteze foarte mari, testați interfețele de rețea InfiniBand. Pregătiți-vă să cheltuiți foarte mult.
    • Utilizați gangliile pentru a monitoriza încărcarea computațională a nodurilor.

    Avertismente

    • Asigurați-vă că infrastructura dvs. poate gestiona sarcina.
    Distribuiți pe rețelele sociale:

    înrudit