Гибридные суперкомпьютеры
Исторически понятие вычислительного кластера (суперкомпьютера) принято связывать с чем-то очень дорогим, энергоёмким, занимающим большое пространство. С развитием отрасли меняется и подход к построению суперкомпьютеров. Они становятся экономичными как с точки зрения энергосбережения, занимаемого места в технологическом помещении, так и с финансовой точки зрения.
Время, когда высокопроизводительную вычислительную систему могли позволить себе только очень крупные организации и компании, уходит в прошлое. И связано это, в первую очередь, с тем, что суперкомпьютер подешевел и стал более эффективным. Говоря другими словами, существенно снизились капитальные и операционные затраты на владение такой системой. Растущая массовость применения параллельных технологий приводит к тому, что всё больше производителей адаптируют своё программное обеспечение для работы на платформах такой архитектуры.
Последние несколько лет рост интереса к суперкомпьютерной тематике связан с выходом на рынок так называемых гибридных суперкомпьютеров. То есть суперкомпьютеров, которые наряду с центральным процессором традиционной архитектуры используют для вычислений специализированные процессоры, в частности, графические.
Компания «Открытые Технологии» предлагает услуги по созданию суперкомпьютеров гибридной архитектуры на базе графических процессоров, отличающихся от традиционных более низким энергопотреблением, существенно более низкой стоимостью и компактностью.
Для решения задач в таких компьютерах используются процессоры, изначально разработанные для обсчёта графики. Всё дело в количестве одновременно обрабатываемых операций. Число ядер современного графического процессора на 2 порядка больше числа ядер процессора традиционной архитектуры. Безусловно, это ядра, способные выполнять ограниченный набор инструкций и имеющие в своём распоряжении ограниченную оперативную память, в отличие от центрального процессора и его ядер. Но для решения огромного количества вычислительных задач, допускающих распараллеливание алгоритмов вычислений этих ресурсов, более чем достаточно, а количество ядер, в конечном итоге, позволяет получить прирост производительности в десятки и сотни раз.
Для примера, если ранее для решения задачи сейсмоанализа требовался суперкомпьютер, состоящий из 2000 вычислительных узлов, потребляющий 1 200 кВт электроэнергии и стоящий около $8 млн., то современный гибридный суперкомпьютер, способный решить ту же задачу за то же время, занимает более чем в 30 раз меньше места, почти в 30 раз экономичнее по энергопотреблению и в 20 раз дешевле.
Однако, суперкомпьютер — это не просто процессоры, память, и компоненты взаимодействия между узлами. Объединение вычислителей в единую систему, работающую над решением одной задачи, это процесс нетривиальный, требующий использования специализированных аппаратно-программных решений. Например, для обмена сообщениями между процессами как в гибридных, так и в классических системах используются протоколы MPI. Выбор конкретной реализации протокола зависит от задачи. Для каждой отдельно взятой задачи оптимальной будет та или иная реализация MPI. Существенное влияние на общую производительность и эффективность использования вычислительных ресурсов оказывает выбранный подход к реализации каналов межузлового взаимодействия. В некоторых случаях достаточно привычного всем Ethernet, а в других необходимо строить специальную низколатентную сеть, например, на базе Infiniband или на более редких специализированных коммуникационных средах Quadrix и Myrinet. Высокая эффективность работы суперкомпьютера достижима только путём проработки архитектуры индивидуально под задачи заказчика. И наши специалисты привыкли работать именно так.
В качестве программного обеспечения при решении задач на суперкомпьютере может быть применено как программное обеспечение коммерческой разработки, так и специализированные программные пакеты, созданные для решения конкретной задачи оптимальным способом.
Безусловно, программное обеспечение должно учитывать гибридную архитектуру суперкомпьютера и использовать его ресурсы. В этом направлении работают практически все ведущие производители коммерческого программного обеспечения. Среди ПО, которое поддерживает гибридную архитектуру, такие широкораспространённые математические пакеты как MathWorks MATLAB, Wolfram Mathematica; пакеты автоматизации проектирования ANSYS, Abaqus; пакеты 3D моделирования, анимации и рендеринга 3Ds Max, Maya; графические пакеты Photoshop, After Effects, Premiere; пакеты расчета задач молекулярной динамики Amber, NAMD и др.
Специализированное программное обеспечение, разработанное под классический вычислительный кластер, при переходе к гибридной архитектуре требует адаптации, но это не такой сложный процесс как может показаться изначально. Основной смысл адаптации – выделение частей кода, которые можно параллельно выполнять на специализированном вычислителе, и обеспечение корректной очерёдности исполнения для того, чтобы ресурсы графических процессоров были использованы оптимально. Первоначальную оценку эффективности перевода программного обеспечения на гибридный суперкомпьютер можно получить с помощью пакетов, автоматизирующих адаптацию программного обеспечения, таких как CAPS, например. В последующем эффект от перевода выполняемых задач на гибридную архитектуру можно усилить доработкой программ разработчиками.
Для оперативного погружения команд разработчиков в мир гибридных суперкомпьютеров и упрощения процесса внедрения гибридных технологий в компании «Открытые Технологии» систематически проходит обучение для программистов заказчиков.
Создав гибридный суперкомпьютер, Вы получите следующие выгоды:
- Применение гибридных суперкомпьютеров позволяет добиться производительности в десятки и сотни терафлоп и выхода на качественно новый уровень решения задач.
- Показатели энергопотребления и занимаемое суперкомпьютером место остаются в разумных пределах.
- Стоимость гибридного суперкомпьютера начального уровня сопоставима со стоимостью нескольких профессиональных рабочих станций.