Как сделать суперкомпьютер: 9 шагов (с картинками)

Оглавление:

Как сделать суперкомпьютер: 9 шагов (с картинками)
Как сделать суперкомпьютер: 9 шагов (с картинками)

Видео: Как сделать суперкомпьютер: 9 шагов (с картинками)

Видео: Как сделать суперкомпьютер: 9 шагов (с картинками)
Видео: Перенос информации с Mac, Windows на Mac 2024, Апрель
Anonim

Нужна машина, способная выполнять триллионы вычислений с плавающей запятой за секунду? Или вам нужен крутой рассказ о вашем персональном суперкомпьютере, который выключил свет в вашей деревне? Создание суперкомпьютера - интересная задача, если вы богатый гений и у вас есть свободное время. Технически многопроцессорный суперкомпьютер - это сеть компьютеров, которые работают вместе для решения проблемы. В этой статье мы кратко обсудим каждый этап его создания, уделяя особое внимание аппаратному и программному обеспечению.

Шаг

Создайте суперкомпьютер Шаг 1
Создайте суперкомпьютер Шаг 1

Шаг 1. Сначала выясните, какие аппаратные компоненты вам понадобятся

Один главный узел, по крайней мере, дюжина идентичных вычислительных узлов, коммутатор Ethernet, блок распределения питания (PDU) и серверная стойка. Также узнайте о потребностях в электричестве, охлаждении и пространстве. Укажите IP-адрес для частной сети, имена узлов, программные пакеты, которые вы хотите установить, и какую технологию вы хотите использовать, чтобы заставить их все работать вместе для выполнения параллельных вычислений (подробнее об этом ниже).

  • Хотя оборудование, которое вам понадобится, дорогое, все программное обеспечение в этом руководстве бесплатное, и большая его часть имеет открытый исходный код.
  • Если вы хотите узнать, насколько быстрым будет ваш суперкомпьютер (теоретически), используйте это:
Создайте суперкомпьютер Шаг 2
Создайте суперкомпьютер Шаг 2

Шаг 2. Постройте вычислительные узлы

Вы можете собрать нужные вычислительные узлы самостоятельно или использовать готовый сервер.

  • Выберите платформу компьютерного сервера, которая максимизирует пространство, охлаждение и энергоэффективность.
  • Или вы можете использовать примерно дюжину устаревших серверов. При совместном использовании они гораздо более полезны, чем при использовании по отдельности, и вы можете немного сэкономить. Все процессоры, сетевые адаптеры и материнские платы должны быть одинаковыми, чтобы система работала бесперебойно. Конечно, не забывайте об оперативной памяти и емкости хранилища для каждого узла и как минимум об одном оптическом приводе для основного узла.
Создайте суперкомпьютер Шаг 3
Создайте суперкомпьютер Шаг 3

Шаг 3. Установите встроенный сервер в серверную стойку

Начните снизу, чтобы избежать возражений наверху. Пригласите друга помочь вам, так как перегруженные серверы могут стать настолько тяжелыми, что их будет сложно разместить в ящиках.

Создайте суперкомпьютер Шаг 4
Создайте суперкомпьютер Шаг 4

Шаг 4. Установите коммутатор Ethernet на корпусе сервера

Воспользуйтесь этой возможностью, чтобы настроить его: укажите размер кадра 9000 байт, установите IP-адрес на статический адрес, указанный на шаге 1, и отключите ненужные протоколы маршрутизации, такие как SMTP Snooping.

Создайте суперкомпьютер Шаг 5
Создайте суперкомпьютер Шаг 5

Шаг 5. Установите блок распределения питания

Вам может потребоваться 220 вольт для высокопроизводительных вычислений, в зависимости от того, какой ток требуется узлу при максимальной нагрузке.

Создайте суперкомпьютер Шаг 6
Создайте суперкомпьютер Шаг 6

Шаг 6. После того, как все установлено, вы можете начать процесс настройки

Linux - это операционная система, которую необходимо использовать для высокопроизводительных вычислительных кластеров, потому что она не только идеальна для научных вычислений, но и на 100% бесплатна. Если количество узлов достигает сотен или даже тысяч, использование Windows будет стоить очень дорого!

  • Начните с установки последней версии BIOS и прошивки материнской платы. Установленная версия должна быть одинаковой для всех узлов. Начните с установки последней версии BIOS и прошивки материнской платы, которая должна быть одинаковой на всех узлах.
  • Установите нужный дистрибутив Linux на каждый узел с графическим интерфейсом на главном узле. Популярные варианты - CentOS, OpenSuse, Scientific Linux, RedHat и SLES.
  • Автор настоятельно рекомендует использовать кластерное распределение Rocks. Rocks мгновенно установит все программы, необходимые для работы вашего суперкомпьютера, и воспользуется изящным способом «поделиться» собой на всех существующих узлах, используя загрузку Red Hat PXE и процедуру «Kick Start».
Создайте суперкомпьютер Шаг 7
Создайте суперкомпьютер Шаг 7

Шаг 7. Установите интерфейс обмена сообщениями, управление ресурсами и другие важные программные библиотеки

Если вы не установили Rocks на предыдущем шаге, вам придется самостоятельно подготовить программное обеспечение, необходимое для работы механизма параллельных вычислений.

  • Во-первых, вам понадобится портативная система управления bash, такая как Torque Resource Manager, которая будет выполнять распределение заданий между машинами.
  • Соедините Torque с Maui Cluster Scheduler, чтобы завершить настройку.
  • Затем вам нужно установить интерфейс обмена сообщениями, который необходим для того, чтобы отдельные вычислительные узлы совместно использовали одни и те же данные. OpenMP - очевидный выбор.
  • Не забывайте о многопоточных математических библиотеках и компиляторах для создания необходимых вам программ параллельных вычислений. Или просто установите Rocks, чтобы сделать это еще проще.
Создайте суперкомпьютер Шаг 8
Создайте суперкомпьютер Шаг 8

Шаг 8. Объедините все вычислительные узлы в сеть

Главный узел будет отправлять вычислительные задачи на вычислительный узел, который затем должен отправлять обратно результаты, обмениваясь сообщениями друг с другом. Чем скорее, тем лучше.

  • Используйте частную сеть Ethernet для соединения всех узлов в кластере суперкомпьютеров.
  • Первичный узел может быть сервером NFS, PXE, DHCP, TFTP и NTP в сети Ethernet.
  • Вы должны отделить эту сеть от общедоступной сети, чтобы гарантировать, что отправляемые пакеты не мешают другим сетям в вашей локальной сети.
Создайте суперкомпьютер Шаг 9
Создайте суперкомпьютер Шаг 9

Шаг 9. Протестируйте созданный суперкомпьютер

Прежде чем использовать его другими, мы рекомендуем сначала проверить производительность вашего суперкомпьютера. HPL (High Performance Linpack) - популярный эталонный тест для измерения скорости вычислений суперкомпьютеров. Вам нужно будет выполнить компиляцию из исходного кода со всеми вариантами оптимизации, предлагаемыми компилятором, который вы используете для выбранной вами архитектуры.

  • Конечно, вам нужно компилировать из исходников со всеми возможными вариантами оптимизации для вашей платформы. Например, если вы используете процессор AMD, скомпилируйте его с помощью Open64 с уровнем оптимизации -0fast.
  • Сравните результаты своих тестов на TOP500.org, чтобы сравнить свой суперкомпьютер с 500 самыми быстрыми суперкомпьютерами в мире!

подсказки

  • Если вам нужна высокая скорость сети, обратите внимание на сетевой интерфейс InfiniBand. Конечно, вы должны быть готовы заплатить большую цену.
  • IPMI может упростить администрирование больших суперкомпьютерных кластеров, предоставляя KVM-over-IP, удаленное управление циклом включения питания и другие функции.
  • Используйте Ganglia для отслеживания вычислительной нагрузки на узлы.

Рекомендуемые: