Имате нужда от машина, която може да извърши трилиони изчисления с плаваща запетая за секунда? Или имате нужда от готина история за вашия личен суперкомпютър, който изключи светлините във вашето село? Изграждането на суперкомпютър е интересно предизвикателство, ако сте богат гений с малко свободно време. Технически, многопроцесорен суперкомпютър е мрежа от компютри, които работят заедно за решаване на проблем. Тази статия ще разгледа накратко всеки етап от създаването му, като се фокусира върху хардуера и софтуера.
Стъпка
Стъпка 1. Първо, разберете какви хардуерни компоненти ще ви трябват
Един основен възел, поне дузина идентични изчислителни възли, Ethernet превключвател, блок за разпределение на мощността (PDU) и сървърна стойка. Научете също за нуждите от електричество, охлаждане и пространство. Посочете IP адреса за частната мрежа, имената на възлите, софтуерните пакети, които искате да инсталирате, и каква технология искате да използвате, за да накарат всички те да работят заедно за извършване на паралелни изчисления (повече за това по -долу).
- Въпреки че хардуерът, от който се нуждаете, е скъп, софтуерът в това ръководство е безплатен и повечето от него са с отворен код.
- Ако искате да видите колко бърз ще бъде вашият суперкомпютър (на теория), използвайте това:
Стъпка 2. Изградете изчислителни възли
Можете сами да сглобите нужните изчислителни възли или да използвате готов сървър.
- Изберете рамка на компютърен сървър, която увеличава максимално пространството, охлаждането и енергийната ефективност.
- Или можете да използвате приблизително дузина остарели сървъри. Когато се използват заедно, те са далеч по -полезни, отколкото когато се използват поотделно и можете да спестите доста. Всички процесори, мрежови адаптери и дънни платки трябва да са еднакви, за да се гарантира, че системата работи безпроблемно. Разбира се, не забравяйте RAM и капацитет за съхранение за всеки възел и поне едно оптично устройство за основния възел.
Стъпка 3. Монтирайте вградения сървър в сървърната стойка
Започнете отдолу, за да избегнете възраженията отгоре. Поканете приятел да ви помогне, тъй като претоварените сървърни комплекти могат да станат толкова тежки, че да затруднят поставянето им в чекмеджетата.
Стъпка 4. Монтирайте Ethernet превключвателя върху сървърната рамка
Възползвайте се от тази възможност да го конфигурирате: дайте му размер на рамката от 9000 байта, задайте IP адреса на статичния адрес, който сте посочили в стъпка 1, и изключете ненужните протоколи за маршрутизиране като SMTP Snooping.
Стъпка 5. Инсталирайте разпределителния блок
Може да се нуждаете от 220 волта за високопроизводителни изчисления в зависимост от това колко ток изисква възелът при максимално натоварване.
Стъпка 6. След като всичко е инсталирано, можете да стартирате процеса на конфигуриране
Linux е задължителна операционна система за високопроизводителни изчислителни клъстери, защото освен че е идеална за научни изчисления, тя е и 100% безплатна. С възли, които достигат стотици или дори хиляди, определено ще бъде много скъпо, ако използвате Windows!
- Започнете с инсталирането на най -новата версия на BIOS на дънната платка и фърмуера. Инсталираната версия трябва да е еднаква за всички възли. Започнете с инсталирането на последната версия на BIOS на дънната платка и фърмуера, които трябва да са еднакви на всички възли.
- Инсталирайте дистрибуцията на Linux, която искате на всеки възел, с графичен интерфейс на основния възел. Популярни възможности за избор са CentOS, OpenSuse, Scientific Linux, RedHat и SLES.
- Авторът силно препоръчва използването на Rocks Cluster Distribution. Rocks незабавно ще инсталира всички програми, от които вашият суперкомпютър трябва да функционира, и ще използва отличен начин да се „сподели“във всички съществуващи възли, като използва PXE зареждане на Red Hat и процедура „Kick Start“.
Стъпка 7. Инсталирайте интерфейса за съобщения, управление на ресурси и други основни софтуерни библиотеки
Ако не сте инсталирали Rocks в предишната стъпка, ще трябва да подготвите софтуера, необходим за самостоятелно захранване на паралелния изчислителен механизъм.
- Първо, ще ви е необходима преносима система за управление на bash като Torque Resource Manager, която ще извършва споделянето на работата между машините.
- Сдвоете въртящия момент с Maui Cluster Scheduler, за да завършите настройката.
- След това трябва да инсталирате интерфейса за съобщения, който е необходим, за да накарате отделните изчислителни възли да споделят едни и същи данни. OpenMP е категоричен избор.
- Не забравяйте многофункционалните математически библиотеки и компилатори, за да изградите необходимите програми за паралелни изчисления. Или просто инсталирайте Rocks, за да стане още по -лесно.
Стъпка 8. Комбинирайте всички изчислителни възли в мрежа
Основният възел ще изпраща изчислителни задачи към изчислителния възел, който след това трябва да изпраща обратно резултатите, докато обменя съобщения помежду си. Колкото по-скоро, толкова по-добре.
- Използвайте частна Ethernet мрежа, за да свържете всички възли във вашия суперкомпютърен клъстер.
- Основният възел може да бъде NFS, PXE, DHCP, TFTP и NTP сървър в Ethernet мрежата.
- Трябва да отделите тази мрежа от публичната мрежа, за да сте сигурни, че изпратените пакети не пречат на други мрежи във вашата локална мрежа.
Стъпка 9. Тествайте суперкомпютъра, който сте създали
Преди да се използва от други, препоръчваме ви първо да тествате работата на вашия суперкомпютър. HPL (High Performance Linpack) е популярен еталон за измерване на изчислителната скорост на суперкомпютрите. Ще трябва да компилирате от източник, с всички опции за оптимизация, предлагани от компилатора, който използвате за архитектурата, която сте избрали.
- Разбира се, трябва да компилирате от източника с всички възможни опции за оптимизация за вашата платформа. Например, ако използвате процесор AMD, компилирайте го с Open64 с ниво на оптимизация -0fast.
- Сравнете резултатите от тестовете си на TOP500.org, за да сравните вашия суперкомпютър с 500 -те най -бързи суперкомпютъра в света!
Съвети
- За високи скорости на мрежата, погледнете мрежовия интерфейс на InfiniBand. Разбира се, трябва да сте готови да платите премия цена.
- IPMI може да опрости администрирането на големи суперкомпютърни клъстери, като предоставя KVM-over-IP, дистанционно управление на цикъла на захранване и други функции.
- Използвайте Ganglia за наблюдение на изчислителното натоварване на възли.