Физики из МГУ научили «персоналку» решать сложные задачи в сотни раз быстрее суперкомпьютеров

Группа физиков из Научно-исследовательского института ядерной физики МГУ научилась на простом персональном компьютере проводить расчёты сложных уравнений квантовой механики, для которых на Западе используются мощные суперкомпьютеры. При этом персональный компьютер справляется с задачей быстрее. Статья, рассказывающая о результатах работы, была опубликована в последнем номере журнала Computer Physics Communications.

Учёные из МГУ имени М. В. Ломоносова сумели применить персональный компьютер с графическим процессором для решения сложнейших уравнений квантовой механики — ранее для этого использовались только мощные и дорогие суперкомпьютеры. По словам ведущего автора работы Владимира Кукулина, персональный компьютер справляется с задачей в разы быстрее: за 15 минут он выполняет работу, на которую суперкомпьютер тратит 2—3 дня.

Уравнения, о которых идёт речь, были сформулированы ещё в 60-х годах прошлого века российским математиком Людвигом Фаддеевым. Уравнения описывали процесс рассеяния нескольких квантовых частиц, то есть представляли собой некий квантовомеханический аналог ньютоновой задачи трёх тел. В результате быстро возникла целая область квантовой механики под названием «физика малочастичных систем».

Эта область представляет огромный интерес для учёных, занимающихся квантовой механикой. Главной их целью было и остаётся научиться решать эти уравнения. Однако из-за своей невероятной сложности для расчёта уравнения долгое время не поддавались исследователям — до тех пор, пока не появились суперкомпьютеры.

Ситуация резко изменилась после того, как группа из НИИЯФ МГУ решила использовать в своём персональном компьютере один из новых графических процессоров корпорации NVIDIA, разработанный для работы в игровых приставках. Как утверждает первый автор статьи Владимир Кукулин, заведующий лабораторией теории атомного ядра, процессор, был не самый дорогой — из тех, что можно купить в магазине за 300—500 долларов.

Главной проблемой при решении уравнений рассеяния нескольких квантовых частиц было составление «ядра» — громадной двумерной таблицы, состоящей из десятков миллионов строк и столбцов, каждая ячейка которой сама по себе была результатом очень непростых вычислений. Но эта таблица представляла собой как бы экран с сотнями триллионов пикселей, и с помощью хорошего графического процессора её вполне можно было построить. Воспользовавшись софтом, разработанным в NVIDIA, и написав собственные программы, учёные разбили свои вычисления на 65 тысяч потоков и смогли блистательно разрешить задачу.

«Мы добились скорости, которая и присниться не может, — рассказал Владимир Кукулин. — Программа работает так, что 260 миллионов сложных интегралов на настольном компьютере она считает за три секунды. И никакого сравнения с суперкомпьютерами! Мой коллега из Тюбингенского университета, лаборатория которого занимается тем же, ведёт расчёты с помощью суперкомпьютера Blue Gene, что на самом деле очень дорогое удовольствие. И то, чего он добивается за двое-трое суток, мы делаем за 15 минут, не потратив ни копейки».

Самое удивительное заключается в том, что и графические процессоры нужного качества, и огромное количества программного обеспечения к ним существуют уже давно, но на Западе никто не использовал их для таких расчётов, отдавая предпочтение суперкомпьютерам. Так или иначе, российские физики сумели изрядно удивить своих западных коллег.

«Эта работа, на наш взгляд, открывает совершенно новые пути в анализе ядерных и резонансных химических реакций, — говорит Владимир Кукулин. — Она также может оказаться очень полезной для решения большого числа вычислительных задач в физике плазмы, электродинамике, геофизике, медицине и множестве других областей науки. Мы хотим организовать что-то наподобие учебных курсов, где исследователи самых разных научных направлений из периферийных университетов, не имеющие доступа к суперкомпьютерам, смогли бы научиться делать на своих «персоналках» то же самое, что делаем мы».

Примечание редакции XX2 ВЕК: Сама идея вычислений с помощью GPU не нова, и это направление развивается уже более 10 лет, а широкое распространение получило начиная с 2009 года, когда компанией NVIDIA была выпущена программно-аппаратная архитектура параллельных вычислений CUDA. Это значительно упростило программистам работу с графическими процессорами, понизило порог входа в область и дало ряд других преимуществ. Достижение российских физиков в данном случае состоит в том, что для решения конкретной задачи они создали новую оригинальную вычислительную схему, позволившую эффективно использовать ресурсы процессора и добиться радикального повышения скорости вычислений.

XX2 век :