Куда двигаются высокопроизводительные вычисления?

24 октябрь, 2011 - 13:18Тимур Ягофаров

Самым коротким ответом на этот вопрос является слово «экзофлоп». По оценкам экспертов, к уровню экзофлопной производительности индустрия HPC придет к 2020 году. Но что нас ждет в пути?

Нынешняя конференция HPC Day стала шестой по счету, что свидетельствует о неослабевающем интересе к этой тематике как поставщиков решений, так и применяющих их в своей деятельности специалистов. Неудивительно, что в этом году программа конференции увеличилась до трех дней и включила практические семинары и сессионные выступления.

По уже установившейся традиции поддержал это мероприятие НТУУ КПИ, в чьих стенах прошли все три дня конференции. Она собрала свыше сотни участников из разных сфер деятельности: от научных сотрудников и студентов до системных администраторов, обслуживающих крупные вычислительные кластеры в государственных и коммерческих предприятиях. А список выступлений на сессионном заседании включил 12 докладов, охвативших самые разные аспекты проблематики высокопроизводительных вычислений. Понятно, что подробно рассказывать обо всех выступлениях в рамках обзора нет смысла. Желающие могут познакомиться с материалами конференции, доступными в онлайне. Мы же остановимся на тех тенденциях, которые были отмечены в докладах.

Куда двигаются высокопроизводительные вычисления?
Дмитрий Конягин: "Выход Kepler в начале 2012 г будет приурочен к появлению CUDA 5"

Безусловно, одной из наиболее заметных среди них является использование гибридных архитектур на базе связки CPU-GPU. О растущей популярности использования в сфере HPC графических ускорителей свидетельствует тот факт, что целый день в программе конференции был посвящен знакомству с особенностями программирования в среде CUDA 4.0. К сожалению, не было возможности провести на этом семинаре целый день, но даже короткого знакомства с его вступительной частью было достаточно, чтобы понять насколько непростым является процесс переписывания программы с учетом специфики применения GPU. Хотя NVIDIA в новой версии CUDA все же постаралась упростить жизнь программистам и ввела механизм доступа к глобальной памяти, доступной и со стороны коды для CPU, и со стороны GPU. Но в тех случаях, когда идет оптимизация кода для достижения наивысшей скорости выполнения задачи, это упрощение может и не помочь.

Куда двигаются высокопроизводительные вычисления?
Мартин Яловый: "SGI активно использует GPU в своих HPC-решениях, но будущее, скорее всего, за архитектурой Intel MIC"

Как бы то ни было, а ведущие производители HPC-решений делают серьезную ставку на гибридные архитектуры. Самым свежим примером является официальное объявление решения Oak Ridge National Laboratory о создании суперкомпьютера с самой высокой в мире производительностью на уровне 20 петафлопосов, в состав которого войдет 18 тыс. GPU от NVIDIA. Пусть и менее мощные систему на базе гибридной архитектуры применяют наши ближайшие соседи в Польше, где недавно была закуплена система SGI, о которой рассказал системный инженер компании Мартин Яловый. Так в Университете в Познани установлен кластер SGI из 227 узлов, на каждый из которых пришлось 1-2 GPU. Пиковая производительность системы достигает 21,7 терафлопса.

Куда двигаются высокопроизводительные вычисления?
Денис Пасечник: "О больших возможностях Microsoft Azure свидетельствует тот факт, что в этом "облаке" был полностью выполнен рендеринг фильма «Аватар»"

Отметим, что в программу конференции вошли также выступления Microsoft о возможностях «облачной» архитектуры Azure и Intel о новых ускорителях компании на базе архитектуры MIC (Many Integrated Core). Оба эти подхода представлялись докладчиками как новый метод организации высокопроизводительных вычислений. Так вот «облачный» подход вызвал у участников сомнения, связанные с возможностью линейного масштабирования и обеспечением гарантированной скорости связи вычислительных узлов, что очень важно при выполнении целого ряда задач в кластере, когда рассчитываемые параллельно участки кода обмениваются данными. И эти сомнения получили подтверждение в докладе SGI, где был приведен пример задачи моделирования движения потоков ветра в городе, решаемую исследователями из австралийского университета Curtin. Оказалось, что использование собственных компьютеров, собираемых в кластер, на определенном уровне упирается в ограничение. А заказ ресурсов в «облаке» Amazon EC2 хотя и дает линейный прирост скорости, но с весьма невысокой динамикой. Поэтому выбором стало специализированное решение SGI. Рассказывая об этом опыте австралийцев, хочется обратить внимание на не столько на то, что они остановились на конкретном производителе, а о самом подходе: специалисты сравнили все имеющиеся возможности, испытав их на своей задаче.

Куда двигаются высокопроизводительные вычисления?

Понятно, что «облачные» архитектуры подходят далеко не для всех задач. Но на них успешно решаются те, что хорошо разбиваются на независящие друг от друга части. В качестве примера такой Денис Пасечник, ведущий специалист по разработке ПО отдела стратегических технологий в Microsoft, привел рендеринг фильма «Аватар», который, по его словам, был полностью выполнен в Azure.

Куда двигаются высокопроизводительные вычисления?
Николай Местер: "Аппаратные ускорители Knights Corner будут поставляться в комплекте с компиляторами, которые позволят, используя только директивы, оптимизировать код под эту платформу без нужды переписывать его основную часть"

А вот планирующийся к выходу в начале следующего года ускоритель Intel, известный под условным названием Knights Corner, похоже, может коренным образом изменить сегмент высокопроизводительных вычислений. Как сообщил Николай Местер, директор по развитию корпоративных HPC-проектов Intel в регионе СНГ, это решение создавалось на базе наработок Intel Larrabee и представляет собой плату расширения, которая является, по сути, автономным многоядерным компьютером под управлением ОС семейства Linux. В пилотном решении Knights Ferry, уже предоставленном Intel разработчикам, на борту находится 32 ядра, а в Knights Corner их число увеличится до 50. Но самое главное, что эти аппаратные ускорители будут поставляться в комплекте с компиляторами, которые позволят, используя только директивы, оптимизировать код под эту платформу. Иными словами, не требуется вообще переписывать ядро приложений, а тем более менять использующиеся в них алгоритмы, чтобы добиться значительного увеличения производительности за счет распараллеливания выполнения задачи. По мнению представителя SGI, архитектура Intel MIC очень быстро вытеснит гибридные решения на базе GPU именно потому, что для нее не требуется серьезного вмешательства в исходные коды. Присутствовавшие в зале программисты с недоверием отнеслись к этому мнению, видимо, потому что еще не успели оценить возможности нового решения Intel в деле. Но в любом случае, стоит их изучить, ведь подход NVIDIA предусматривает переписывание кода: по оценкам компании, изменение 5% исходников может привести к увеличению скорости выполнения задачи до 10 раз, если это ключевые участки, связанные с интенсивными вычислениями.

И чтобы уже закрыть тему гибридных и многоядерных вычислений, заметим, что в стане сторонников GPU не сидят, сложа руки. И уже в начале следующего года у NVIDIA ожидается появление решений следующего поколения под условным названием Kepler, а следующим за ним станет Maxwell. Пока особых подробностей об них нет. В своем докладе представитель NVIDIA Дмитрий Конягин отметил, что выход Kepler будет приурочен к появлению CUDA 5. И единственное, что можно сейчас сообщить – это улучшенная энергоэффективность данного решения. Зато из общения в кулуарах стало известно, что NVIDIA идет путем обеспечения все большей автономности своих ускорителей, ведь они обязательно должны использоваться в связке с CPU. Так вот в Maxwell планируется появление CPU на борту, что позволит строить вычислители без использования x86-процессоров. Но пока это лишь слухи, хотя подобного вполне логично ожидать от NVIDIA, уже имеющей в своем активе ARM-процессоры семейства Tegra.

Как видим, нынешняя конференция затронула достаточно интересные вопросы развития направления высокопроизводительных вычислений. Наблюдая за этим в течение длительного времени, специалисты Intel сделали вывод, что примерно за 18 лет вычислительными возможностями суперкомпьютеров начинают обладать десктопы, а еще через пять лет – смартфоны. Поэтому при всей своей кажущейся узкой направленности HPC-проблематика на самом деле затрагивает всю ИТ-индустрию. И тем интереснее наблюдать за происходящим в данном направлении.