Что считает суперкомпьютер МГУ?

F1034E95-9B11-4504-9377-13E64F4CCCA2
 

Суперкомпьютерный комплекс Московского университета является самым мощным в России и одним из самых мощных в мире. Основу комплекса составляют суперкомпьютеры «Ломоносов-2» и «Ломоносов». На них работают порядка 2500 пользователей из 20 подразделений университета. Ежедневно в суперкомпьютеры МГУ выполняют около 1000 вычислительно сложных задач. 

Ведущий научный сотрудник научно-исследовательского центра МГУ и системный администратор суперкомпьютера «Ломоносов-2» Сергей Жуматий рассказал о том, как сегодня живет суперкомпьютер МГУ, и как он помогает в поисках лекарства от коронавирус же прямого действия 

Суперкомпьютеры выполняют одновременно много разных вычислений: ищут лекарство от ковида, просчитывают течения и изменение климата. Как осуществляется сегментация задач, каждое вычисление происходит изолированно в рамках программы?

Для этих целей на суперкомпьютерах используются менеджеры ресурсов. На «Ломоносов-2» как и на многих других используется SLURM. Такие менеджеры ресурсов отслеживают, какие вычислительные узлы свободны, а какие заняты. Они выделяют необходимое число свободных узлов для каждой задачи. Все задачи организуются в очередь и ждут, пока освободятся необходимы ресурсы. Загруженность «Ломоносов-2» такая, что в среднем задача ждёт около 20 часов в очереди.

Кто пишет код для вычислений? И есть ли у суперкомпьютеров ПО? На каком языке или многих языках программирования работает «Ломоносов»?

 Все суперкомпьютеры являются параллельными, любая вычислительная задача тоже параллельная – она должна использовать сразу множество процессоров на множестве вычислительных узлов (серверов). Можно сказать, что каждая такая задача – это несколько (десятки, сотни, тысячи и более) экземпляров одной программы (их называют процессы), работающих одновременно, и обменивающихся данными.

Например, типичный расчёт физических свойств какой-то модели делается так: модель разбивается на множество небольших фрагментов (сетку), и каждый набор этих фрагментов обсчитывает свой процесс. Так как свойства фрагмента
зависят от его «оседей», то процессы регулярно обмениваются данными друг с другом.

Чтобы такие программы можно было писать, для языков Си и Фортран создан стандарт MPI (Message Passing Interface), с его помощью пишется большинство программ для суперкомпьютеров сегодня. Но, конечно, есть и некоторые альтернативы. Код часто пишут сами пользователи (исследователи), но для многих задач используются готовые программные пакеты – большинство из них доступны в виде open source продуктов и разрабатываются учёными.

Какой результат должен выдать «Ломоносов» при вычислении лекарства от короновируса? Примерную последовательность молекул? Решали ли раньше подобные задачи на суперкомпьютерах? Заняты ли суперкомпьютеры изучением онкологии или поиска лекарства от СПИДа?

Это очень широкая область. Но если кратко, то обычно ищется химическое соединение, которое обладает каким-то свойством, с помощью которого планирует бороться с болезнью – блокирование активности какого-то белка, изменение свойств части вируса и т.п. На «Ломоносов-2» и его предшественниках «Ломоносов» и «Чебышёв» такие исследования велись очень давно и многие из них находят применение в виде прототипов лекарств. Ведь мало найти нужное вещество, его нужно ещё научиться синтезировать с нужной чистотой, провести тестирование на токсичность и побочные эффекты, слепое тестирование и т.п. Обычно от расчёта до нового лекарства проходит около 10 лет.

У химиков есть технология предсказания свойств молекул, задействована ли она в этих вычислениях?

Таких технологий несколько, они имеют разную точность и разные требования по времени расчётов, и все они, так или иначе, применяются на «Ломоносов-2» разными группами исследователей.

 Кто-нибудь следит за работой «Ломоносова» в праздники и на выходных? На что похожа подобная «вахта», как это происходит?

Ночью и на выходных в зале «Ломоносов-2» никого нет, но работает автоматика, а также наши инженеры и администраторы удалённо отслеживают состояние суперкомпьютера. В случае возникновения проблем, если это что-то очень важное, мы получаем оповещения через sms, если же это не столь срочное оповещение получаем с помощью мессенджеров и email. При необходимости приходится срочно приезжать, чтобы исправить что-то на месте, но такое бывает крайне редко, большинство операций выполняется удалённо. Днём в машинном зале работают инженеры, они выполняют те действия, которые необходимо выполнять на месте – замена, тестирование оборудования и подобные задачи.