3. Реймерс Н.Ф. Надежды на выживание человечества. Концептуальная экология. - М., ИЦ «Россия молодая», 1992. - 366 с.
4. Тетиор А.Н. Архитектурно-строительная экология. Устойчивое строительство. - Тверь, Тверское книжное издательство, 2003. - 495 с.
5. Тетиор А.Н. Антропогенная (искусственная) эволюция. - М.: РГАУ-МСХА им. К.А. Тимирязева, Институт природообустройства, 2015. - 444 с.
6. Тетиор А.Н. Экологическая инфраструктура. М.: «Колосс», 2005. - 265 с.
7. Тетиор А.Н. Экологизация мышления и деятельности человека. - М.: МГУП, 2014. - 410 с.
ВЫЧИСЛЕНИЯ НА GPU. ОБЗОР УСКОРИТЕЛЬНЫХ БЛОКОВ НА ОСНОВЕ
ГРАФИЧЕСКИХ УСКОРИТЕЛЕЙ
Федоров Дмитрий Игоревич
Академический бакалавр, ФГБОУ ВО «МГМУ (МАМИ)», г. Москва
Чукуров Евгений Борисович
начальник лаборатории высокопроизводительных вычислительных систем, ФГУП "НИИ "Квант",
г. Москва
АНОТАЦИЯ
Рассмотрена актуальность использования GPU в высокопроизводительных вычислительных системах, дан обзор современных технических решений и сделан вывод о применимости различных систем. ABSTRACT
The main idea of the article is the relevance of using GPU in high performance computing. The article contains the information about modern technical approaches in the area of high performance computing using GPU and the conclusion about the most efficient systems.
Ключевые слова: суперкомпьютеры; кластеры; графические ускорители; ускорительные блоки. Keywords: supercomputers; clusters; graphic accelerators; accelerator blocks.
Графические процессоры, в сочетании с традиционными для систем x86 вычислительными узлами, по данным [1-4,8-11] пользуются сегодня приоритетом у создателей суперкомпьютеров и вычислительных кластеров. Явным подтверждением этого является то, что в 10-ку лучших суперкомпьютеров списка ТОП500 входят системы, основанные на подобных технических решениях. «Рост частот универсальных процессоров упёрся в физические ограничения и высокое
энергопотребление, и увеличение их производительности всё чаще происходит за счёт размещения нескольких ядер в одном чипе» [5, с. 271]. Этим и обусловлен высокий интерес к гибридным вычислительным системам наблюдаемый во всем мире, поскольку использование массивно-параллельной структуры GPU в
высокопроизводительных вычислениях позволяет существенно ускорить решение критических задач, по данным [6,7].
В задачи, для решения которых применение GPU невозможно или нецелесообразно, можно решать на стандартных х86-серверах, входящих в состав гибридного кластера. Мной рассмотрены некоторые из вариантов: как серверных платформ с возможностью установки многоядерных ускорителей, так и ускорительных блоков.
Ускорительные блоки от фирмы OneStopSystem CA 2000, CA 4000 и CA 16000 Одной из последних разработок на данный момент являются ускорительные блоки от фирмы OneStopSystem CA 2000, CA 4000 и CA 16000.
Ускорительный блок CA 2000 Блок имеет форм фактор 1U. Дает возможность установки в него до двух карт многоядерных ускорителей. Ускорительный блок оснащен блоком
питания 1620 Вт. На задней панели располагается слот PCIx16 Gen3 для подключения управляющего сервера. СА 2000 оснащен блоком мониторинга, отслеживающим работу вентиляторов, рабочую температуру блока, а также напряжение.
В ускорительном блоке CA 2000 производитель рекомендует использовать профессиональную линейку графических ускорителей NVIDIA (Tesla K10, K20, K20X, K40 и К80), а также многоядерные ускорители Intel Xeon Phi.
Ускорительный блок CA 4000
От младшей модели его отличает форм фактор в 2U, возможность устанавливать до четырех карт многоядерных ускорителей. Ускорительный блок оснащен двумя блоками питания по 1620Вт. каждый. На задней панели имеется возможность размещения до двух слотов PCIx16 Gen3 для подключения управляющих серверов. СА 4000 оснащен блоком мониторинга, отслеживающим работу вентиляторов, рабочую температуру блока и напряжение.
В ускорительном блоке CA 4000 производитель рекомендует использовать профессиональную линейку графических ускорителей NVIDIA (Tesla K10, K20, K20X, K40 и К80), а также многоядерные ускорители Intel Xeon Phi.
Ускорительный блок СА 16000
Это изделие представляет собой внешнее шасси 3U, рассчитанное на установку до шестнадцати карт расширения. Блок может быть подключен к одному, двум или четырем серверам по интерфейсу PCIe x16 Gen3. Каждое соединение характеризуется агрегированной пропускной способностью 128 Гбит/с. В роли карт расширения могут выступать Nvidia Tesla K20, K20X, K40 или K80. Возможна установка Intel Xeon Phi.
Данный блок имеет существенные конструктивные отличия от младших моделей этого
производителя. Разработчики отмечают модульную конструкцию изделия, включающую три блока питания по 3000 Вт и четыре корзины, каждая из которых вмещает по четыре ускорителя. В каждой корзине есть вентилятор. Еще четыре вытяжных вентилятора установлено на задней стенке корпуса. Корзины и блоки питания сделаны выдвижными, а передняя панель — съемной, за счет чего упрощается установка и техническое обслуживание оборудования. Для мониторинга и администрирования есть порт Ethernet и модуль Intelligent Platform Management Interface (IPMI). Отслеживается скорость работы вентиляторов, рабочая температура блока и напряжение.
Серверные платформы с возможностью использования графических
ускорителей
Серверные платформы для GPU/Xeon Phi от Supermicro SuperServer 1028GR-TRT (TR)
Двухпроцессорная серверная платформа SuperServer 1028GR-TRT на базе процессоров Intel Xeon E5-2600 V3, форм-фактора 1U, поддерживает до трех ускорителей GPU/Xeon Phi, позволяет установить до 1TB ECC LRDIMM или до 512GB ECC RDIMM памяти DDR4. До четырех HDD x 2.5" hot-swap, 2x RJ45 10GBase-T ports, 1x RJ45 Dedicated IPMI LAN port, 4x PCI-E 3.0 x16 (double-width) slots, 1x PCI-E 3.0 x8 (in x16) low-profile slot. Два блока питания по 1600W.
SuperServer 2028GR-TRHT (TRH)
Двухпроцессорная серверная платформа SuperServer 2028GR-TRHT (TRH) на базе процессоров Intel Xeon E5-2600 V3, форм-фактора 2U, поддерживает до шести ускорителей GPU/Xeon Phi, позволяет установить до 1TB ECC LRDIMM или до 512GB ECC RDIMM памяти DDR4. До десяти HDD x 2.5" hot-swap, 2x RJ45 10GBase-T ports, 1x RJ45 Dedicated IPMI LAN port, 6x PCI-E 3.0 x16 (double-width) slots, 1x PCI-E 3.0 x8 (in x16) low-profile slot. Два блока питания по 2000W.
SuperServer 4027GR-TRT (TR) Двухпроцессорная серверная платформа SuperServer 4027GR-TRT (TR) на базе процессоров Intel Xeon E5-2600 V2, форм-фактора 4U, поддерживает до восьми ускорителей GPU/Xeon Phi, позволяет установить до 1.5TB DDR3 ECC LRDIMM или до 768GB DDR3 ECC RDIMM. До двадцати четырех HDD x 2.5", 2x RJ45 10GBase-T ports, 1x RJ45 Dedicated IPMI LAN port, 8x PCI-E 3.0 x16 (double-width) slots, 2x PCI-E 3.0 x8 (in x16) slot, 1x PCI-E 2.0 x4 (in x16) slot. Блоки питания по 1600W.
GPUFatTwin SuperServer F627G3-FTPT+ Запатентованная архитектура Twin компании Supermicro интегрирует автономные системы в одном корпусе, повышая интенсивность вычислений и снижая стоимость решения благодаря общим ресурсам, таким как корпус, вентиляторы, блоки питания, кабели и монтируемое в стойку аппаратное обеспечение. GPU FatTwin SuperServer форм-фактора 4U поддерживает до двенадцати ускорителей GPU/Xeon Phi в четырех узлах, где каждый узел поддерживает два процессора Intel Xeon E5-2600 V2, позволяет установить до 1TB ECC LRDIMM или до
512GB ECC RDIMM памяти DDR3. До двух 3.5" SAS HDD, 2x RJ45 10GBase-T ports, 1x RJ45 Dedicated IPMI LAN port, 3x PCI-E 3.0 x16 slots, 2x PCI-E 3.0 x8 slots.
Серверная платформа для GPU/Xeon Phi от Gigabyte HPC Server Gigabyte G250-S88 Двухпроцессорная серверная платформа HPC Server Gigabyte G250-S88 на базе процессоров Intel Xeon E5-2600 V3, форм-фактора 2U, поддерживает до восьми ускорителей GPU/Xeon Phi, позволяет установить до 1,5 TB ECC LRDIMM или до 768GB ECC RDIMM памяти DDR4. До восьми HDD x 2.5" hotswap, 2 x 10GbE SFP+ ports, 1 x 10/100/1000 management LAN, 2 x QSFP+ (supporting 56Gb/s FDR InfiniBand or 40GbE), 2 x 10Gb/s SFP+ LAN card, 8x PCI-E 3.0 x16 (double-width) slots, 1x PCI-E 3.0 x8 (in x16) low-profile slot. Два блока питания по 1600W.
Серверная платформа для GPU/Xeon Phi от
TYAN
Серверная платформа TYAN FT77A-B7059 Двухпроцессорная серверная платформа TYAN FT77A-B7059 форм фактора 4U на базе процессоров Intel Xeon E5-2600v2 дает возможность установить до восьми многоядерных ускорителей, при этом возможно использование игровых ускорителей без дополнительных условий и ограничений.
Позволяет установить до 768GB DDR3 RDIMM/LRDIMM, до шести 2.5" HDD или до четырех 3.5" HDD, 1x RJ45 10GBase-T ports, 1x RJ45 Dedicated IPMI LAN port, PCI-E Gen3 8x16 slots, PCI-E Gen3 2x8 slots (one for mezzanine card). Серверная платформа для GPU/Xeon Phi от HP
Сервер половинной ширины HP ProLiant SL270s Gen8 4U Шасси HP ProLiant s6500 вмещает два сервера SL270s Gen8 половинной ширины, каждый из которых может обслуживаться отдельно. Это шасси разработано для получения максимальных возможностей обработки графических данных с высокой плотностью, и позволяет установить до 16 графических плат, что снижает сложность установки адаптеров и прокладки кабелей. В шасси выполнена передняя прокладка кабеля, а блоки питания и вентиляторы подключены к общим слотам для простоты обслуживания.
Заключение
На данный момент можно определить три основных варианта использования полноразмерных многоядерных ускорителей в вычислительных кластерах.
К первому относятся различные типы ускорительных блоков. Определенным неудобством этого варианта можно считать необходимость в управляющих серверах. Таким образом, в вычислительных стойках определённое количество «юнитов» необходимо резервировать под управление. Так же в этом случае требуется дополнительная настройка программного обеспечения для корректной работы модели: ускорительный блок - управляющий сервер. Особенностью является то, что конструктивно ускорительные блоки адаптированы под профессиональную линейку многоядерных ускорителей. В случае адаптации игровых карт, в частности к ускорительному блоку СА 16000, мы
сталкиваемся с рядом проблем: от организации подключения питания и недостаточностью охлаждения, до нестабильности результатов опроса, установленных карт. При использовании ускорительных блоков, в лучшем случае можно добиться плотности установки ускорителей до ста шестидесяти на стойку 42U.
Второй вариант - сервера с плотной компоновкой многоядерных ускорителей. Как пример - HPC Server Gigabyte G250-S88. Такой вариант не требует отдельной управляющей единицы и, предположительно, не будет требовать дополнительных настроек «софта». При этом использования серверов такого вида дает возможность добиться достаточно плотной компоновки вычислительных стоек, как и в случае с ускорительными блоками, до ста шестидесяти полноразмерных карт на стойку 42U. Но и в этом случае сохраняются все те же проблемы с линейкой многоядерных ускорителей, что были упомянуты в случае с ускорительными блоками.
Третий вариант - использование серверов, как правило, форм фактора 4U, типа TYAN FT77A-B7059. Плотной компоновки такие сервера достичь не позволят, так как максимальное количество ускорителей может составлять максимум до восьми штук на сервер, но они обладают одним важным преимуществом. В серверах подобного типа можно использовать игровые карты, не прибегая при этом к дополнительным доработкам корпуса и самих карт, что существенно сказывается на стоимости создаваемых вычислительных кластеров. Одновременно с этим игровые карты часто превосходят профессиональные в производительности. В этом случае можно разместить до восьмидесяти полноразмерных ускорителей в стойке 42U.
Таким образом, при выборе вычислительной единицы необходимо будет отталкиваться от поставленных задач и финансовых возможностей. Сравнительно недорогой и производительный третий вариант сильно теряет в надежности, из-за непрофильного использования ускорителей, что влечет к большому проценту выходящих из строя игровых карт. Использование серверов плотной компоновки видится наиболее привлекательным в плане работы и настройки оборудования при построении вычислительных систем но, как и в случае с
ускорительными блоками, приводит к сравнительно большой стоимости профессиональных многоядерных ускорителей.
Список литературы
1. Воеводин В.В., Воеводин Вл. В. Параллельные вычисления. СПб.: БХВ-Петербург, 2002.
2. Гергель В.П. Высокопроизводительные вычисления для многопроцессорных многоядерных систем. Учебник. М.: Изд-во Московского государственного университета, 2010.
3. Корнеев В.В. Вычислительные системы. М.: Гелиос АРВ, 2004.
4. Лацис А.О. Параллельная обработка данных: Учеб. пособие. М.: Академия, 2010.
5. Полетаев С.А., Параллельные вычисления на графических процессорах. Издательство Томского Политехнического Университета, 2009.
6. Параллельные вычисления на GPU. Архитектура и программная модель CUDA. Авторы: А. Бо-ресков, А. Харламов, Н. Марковский, Д. Микушин, Е. Мортиков, А. Мыльцев, Н. Сахарных, В. Фролов. Издательство МГУ, 2012 г.
7. Эхтер Ш., Робертс Дж. Многоядерное программирование. СПб.: Питер, 2010.
8. Яблонский С.В. Тенденция развития суперкомпьютеров// Вестник МГОУ. Серия "техника и технология". №1, 2010.
9. Яблонский С.В., Конева Н.Е., Конев Ф.Б. Современные суперкомпьютерные технологии// Вестник МГОУ. Серия "Техника и технологии". №1, 2011.
10. Яблонский С.В., Конева Н.Е., Конев Ф.Б. Развитие высокопроизводительных систем обработки информации. - Естественные и математические науки в современном мире/ Сб.статей по материалам XIX межд.научн.-практич.конф. Новосибирск. 2014. №6(18)
11. Яблонский С.В., Конева Н.Е., Конев Ф.Б. Подготовка специалистов по суперкомпьютерным технологиям в техническом вузе. В сборнике "Международный Институт "Educatio" 2015 г.
12. http://www.nvidia.com/
13. http://onestopsystems.com/
14. www.supermicro.com/
15. www.hp.com/
16. www.tyan.com/