Сегодня использование графических процессоров для высокопроизводительных вычислений (High Performance Computing, HPC) получило общемировое признание. Что же касается России, то вполне приемлемое представление о роли, которую играют GPU и CUDA в стране, можно было получить на конференции «Применение гибридных высокопроизводительных систем для решения научных и инженерных задач", организованной в Нижегородском государственном университете при участии компаний nVidia и "Т-платформы». Выбор места для ее проведения не случаен: с продуктами nVidia здесь хорошо знакомы.
К конференции оказалось приурочено открытие первого в стране Исследовательского центра CUDA, созданного на базе факультета вычислительной математики и кибернетики. Такие центры уже работают в целом ряде университетов за рубежом.
Если сравнивать обсуждаемое мероприятие с конференцией "Высокопроизводительные вычисления на платформе Tesla от nVidia", проведенной в Москве полтора года назад, то обнаружатся разительные отличия. Тогда на встречу с представителями компании собралось несколько десятков студентов и преподавателей МГУ, они пассивно воспринимали рассказы о возможностях рабочей станции Tesla Personal Supercomputer, построенной на процессоре Tesla C1060.
Сейчас же все было по-иному, в том числе круг обсуждавшихся вопросов, широта тематики и компетентность докладов, а главное, готовность аудитории к восприятию технологий. Тем не менее практическое освоение возможностей GPU только начинается, а потому доклады заметно различались по уровню профессионализма. Здесь можно было услышать, к примеру, и насыщенное цифрами и фактами выступление представителя ANSYS, компании, специализирующейся на системах автоматического проектирования и моделирования, и типичный аспирантский доклад о моделировании взаимодействия корабля со льдом средствами PhysX, игрового движка, предназначенного для симуляции поведения физических объектов (выбор PhysX выглядит довольно странным, ведь помимо игровых существуют и аналогичные научные движки). К числу выступавших в Нижнем тяжеловесов можно отнести представителей ИПС РАН, Российского федерального ядерного центра в Сарове и ИПФ РАН, в докладах которых говорилось о высокоуровневых средствах программирования GPU, решении задач в физике и биомедицинской диагностике методом Монте-Карло соответственно.
В течение дня было зачитано еще несколько интересных докладов, но остался червь сомнения. Смущает какая-то безоглядная вера в безграничные возможности GPU-ускорителей, превосходные качества которых являются производными от успехов индустрии компьютерных игр.
Как результат, работы страдают очевидным смещением акцентов на конкретные приложения, поддерживаемые средствами GPU, и делается это явно в ущерб общему системному взгляду на природу вещей. В итоге фабула большей части докладов предельно проста: "Мы сделали так, и это решение во столько раз быстрее, чем на CPU", остальное — детали. Не подлежит сомнению, что для любой задачи нужен соответствующий ей инструмент: странно то, что ни один из выступающих не проанализировал сущности феномена GPU, возможности и ограничения этого класса процессоров как инструментов, то, какие именно приложения могут быть реализованы на GPU сейчас, а какие в будущем.
Разрекламированные китайские петафлопсы легли тяжелым грузом на сознание многих, быстро сместили вектор интересов в сторону GPU (вышедший в лидеры рейтинга Top500 китайский суперкомпьютер, наряду с традиционными многоядерными процессорами, использует графические процессоры nVidia Tesla. — Прим. ред.). Теперь, например, представитель Сарова уверенно заявил, что на GPU или на их преемниках, но не более чем через семь–девять лет в РФЯЦ будет построен экзафлопсный (1 EFLOPS = 1000 PFLOPS!) компьютер. Пока же, насколько известно, в этой уважаемой организации удалось собрать всего пару десятков рабочих станций с GPU, далеко не петафлопсных. В итоге, ни секунды не отрицая великолепных возможностей GPU на ограниченном поле, невольно усомнишься в правоте тех, кто был в НГУ, и многих других специалистов, а также в разумности движения к грядущим петафлопсам и тем более к экзафлопсам с опорой на GPU единственного вендора. Впрочем, история повторяется: в середине 80-х наблюдался всплеск интереса к транспьютерам, применяемым в качестве ускорителей вычислений, но вскоре они канули в Лету. Есть надежда, что GPU ожидают лучшие перспективы.
Буквально на следующий день компания «Т-Платформы» и МГУ подвели итоги первого тура конкурса «Эффективное использование GPU-ускорителей при решении больших задач», устроенного с целью популяризации применения графических ускорителей. Было подано 69 заявок, во второй тур вышли 30; конкурс продолжится до осени.
Стоит отметить, что за пару дней до нижегородской конференции nVidia объявила о выходе новой версии набора инструментов CUDA 4.0. Его отличает поддержка технологии nVidia GPUDirect 2.0, которая упрощает и ускоряет мультипроцессорное программирование и работу приложений. Унифицированная виртуальная адресация UVA организует единое адресное пространство для основной системной памяти и памяти графического процессора. А библиотеки примитивов Thrust C++ упрощают программирование для разработчиков на C++. Архитектура CUDA 4.0 предлагает средства для интеграции с приложениями, поддержку многопоточных приложений, новую библиотеку NPP, предназначенную для обработки изображений и компьютерного видения, а также ряд других новинок.