Вычислительные технологии, 2021, том 26, № 5, с. 814)4. © ФИЦ ИВТ, 2021 Computational Technologies, 2021, vol. 26, no. 5, pp. 81-94. © FRC ICT, 2021
ISSN 1560-7534 eISSN 2313-691X
ВЫЧИСЛИТЕЛЬНЫЕ ТЕХНОЛОГИИ
D01:10.25743/ICT.2021.26.5.007
Алгоритмы решения задач механики сплошной среды для экзафлопсных систем
A.B. Снытников1,2'*, Г. Г. Лазарева3,4
1 Институт автоматики и электрометрии СО РАН, 630090, Новосибирск, Россия
2
3Российский университет дружбы народов, 117198, Москва, Россия
4Новосибирский государственный университет, 630090, Новосибирск, Россия
*
Поступила 24 июля 2020 г., доработана 9 августа 2021 г., принята в печать 16 августа 2021 г.
Рассмотрены вопросы использования экзафлопсных вычислений для решения прикладных задач. На основе обзора работ в этой области выделены наиболее актуальные вопросы, связанные с экзафлопсными вычислениями. Особое внимание уделено особенностям программного обеспечения, алгоритмам и численным методам для экзафлопсных суперЭВМ. Приведены примеры разработки новых и адаптации существующих алгоритмов и численных методов для решения задач механики сплошной среды. Сделан анализ наиболее популярных приложений.
Ключевые слова: экзафлопсные вычисления, алгоритмы решения задач механики сплошной среды, численные методы.
Цитирование: Снытников A.B., Лазарева Г.Г. Алгоритмы решения задач механики сплошной среды для экзафлопсных систем. Вычислительные технологии. 2021; 26(5):81—94. D01:10.25743/ICT.2021.26.5.007.
Введение
Экзафлопсными вычислениями называются вычисления на суперЭВМ производительностью порядка 1018 операций с плавающей точкой в секунду. В последнее десятилетне было опубликовано более 300 статей в научных журналах по экзафлопеным вычислениям, из них около трети посвящены решению различных прикладных задач, остальные — вопросам масштабируемости вычислений, созданию специальных высокоэффективных параллельных программ и использованию ускорителей вычислений.
Среди обзоров наиболее содержательные выполнены мировыми лидерами в области высокопроизводительных вычислений: Jack Dongarra [1], William Gropp [2], David Keyes [3]. Вызывают интерес различные технические отчеты [4]. Все эти публикации освещают преимущественно проблемы технической реализации вычислений и программного обеспечения, но в них мало уделено внимания вопросам вычислительной математики, однако развитие новых подходов и идей в прикладной математике будет определять будущий прогресс вычислительных систем [5].
В данной статье приведен обзор численных методов и алгоритмов для решения задач механики сплошных сред на суперЭВМ и естественно-научных задач.
1. Актуальные вопросы экзафлопсных вычислений
Наиболее актуальными вопросами е точки зрения экзафлопсных вычислений являются энергоэффективность, обработка данных большого размера и создание масштабируемых архитектур суперЭВМ, Так как ожидаемое энергопотребление порядка 1 ГВт, на первый план выходят вопросы эффективной эксплуатации такой исключительно дорогой машины. Нельзя разделять технические параметры суперкомпьютера и требования к ресурсоемкое™ используемых вычислительных технологий. Расход энергии процессора на требуемое количество операций алгоритма, так называемая его энергоэффективность, стала определяющей характеристикой для допуска алгоритма к расчетам, Вычислительные алгоритмы должны быть согласованы с отказоустойчивыми и эффективными алгоритмами обработки данных большого размера. Разработка масштабируемых архитектур позволила существенно расширить класс решаемых задач и используемых вычислительных методов.
Недостаточное внимание уделяется созданию вычислительных методов для решения задач механики сплошных сред, специально предназначенных для экзафлопсных суперЭВМ, и вопросам адаптации вычислительных методов и алгоритмов к экзафлопе-ным системам, В основном рассматриваются варианты метода Монте-Карло и методы решения больших систем линейных алгебраических уравнений (СЛАУ), преимущественно на основе методов подпространства Крылова, Остальные методы и технологии математического моделирования в применении к экзафлопеным суперЭВМ изучаются значительно реже. Поиск новых вычислительных алгоритмов и адаптация существующих позволит расширить класс задач, решаемых на экзафлопсных вычислительных системах. Актуальность такого развития суперкомпьютерных технологий не вызывает сомнений [6].
Имеющееся разнообразие архитектур [7] означает, что все реализации вычислительных алгоритмов для перспективных экзафлопс-компьютеров должны быть в достаточной степени универсальными. Это позволит проводить расчеты на тех процессорах или ускорителях вычислений, которые будут выбраны для создания экзафлопс-компьютера.
Ограничивая мир высокопроизводительных вычислений первой десяткой наиболее мощных суперЭВМ мира, а это вполне оправданно в том случае, если речь идет о возможной архитектуре экзафлопс-компьютера, можно сказать, что этот мир весьма неоднороден. Серьезно различаются базовые элементы, на основе которых строятся суперЭВМ, Используются различные типы многоядерных процессоров (Intel Xeon, AMD Opteron, Sun UltraSPARC и др.). Гибридные суперЭВМ используют различные архитектуры ускорителей вычислений (Intel Xeon Phi, Nvidia GPU и др.). Наиболее мощные компьютеры строятся на основе ускорителей вычислений [8], Поэтому для эффективного использования компьютеров большой мощности с целью решения актуальных задач принципиально необходимо значительно упростить освоение гибридных суперЭВМ, Это упрощение должно в первую очередь заключаться в создании удобного инструментария для специалиста по моделированию в конкретной предметной области,
2. Программное обеспечение для экзафлопсных суперЭВМ
Трудности в создании программного обеспечения для экзафлопсных суперЭВМ связаны с наличием в их составе сотен тысяч и миллионов процессорных элементов, В реализации вычислительного алгоритма на суперЭВМ наиболее важен вопрос маештабиру-
емоети алгоритма, т, е, обеспечение равномерной загрузки процессорных элементов — отдельных процессоров, ускорителей вычислений или узлов суперкомпьютера. Общепринята точка зрения, что решение задач на экзафлопеных суперЭВМ будет производиться с использованием существующего программного обеспечения, т, е, коммуникационных библиотек, основанных на сообщениях [9] и алгоритмических языках программирования, Таким образом, можно строить реализацию вычислительных алгоритмов для экзафлопеных суперЭВМ на основе модели передачи сообщений (самый известный ее вариант называется MPI) и исходя из предположений об иерархической структуре коммуникационной системы. Существует альтернативный взгляд, а именно то, что для эффективной работы на экзафлопеных суперЭВМ потребуется создание принципиально новых математических основ параллельных вычислений, операционных систем, языков программирования и пр., не требующих межпроцессорных коммуникаций в принципе [10, 11],
Важно отметить, что в настоящее время не накоплено достаточного опыта проведения расчетов петафлопеной размерности, и это не позволяет с полной определенностью говорить об экзафлопеных расчетах. Вопросы эффективного и устойчивого функционирования суперЭВМ освещаются в работе [12], посвященной анализу эксплуатации К computer (Япония), одного из самых мощных суперкомпьютеров в мире, К computer является прототипом экзафлопеной суперЭВМ, построенной на основе процессоров классической архитектуры.
Разрабатывается так называемое мультифизичное выеокомаештабируемое программное обеспечение для нескольких одновременно протекающих физических процессов. При этом различные процессы моделируются совершенно различными способами, В частности, в работе [13] создан инструмент для расчета движения жидкости на основе решеточного метода Больцмана в комбинации с диффузным представлением теплопередачи с целью внедрения более сложных геометрий и учета большего количества взаимодействующих процессов.
Программы и алгоритмы, предназначенные для работы на экзафлопеных суперЭВМ, должны отвечать следующим требованиям,
• Линейность алгоритма [14] нужна для обеспечения неограниченной масштабируемости и отсутствия ограничений снизу на размер минимального фрагмента, что позволит выполнять декомпозицию на любое количество процессорных элементов,
• Для обеспечения масштабируемости необходима устойчивость к отказам оборудования. Это связано с тем, что в экзафлопеной вычислительной системе, состоящей из сотен тысяч или миллионов узлов, сбои отдельных элементов (процессов, блейдов и т, д.) будут происходить постоянно. Следовательно, приложение должно быть способно продолжить исполнение без вышедшего из строя оборудования,
• Требование мультиархитектурности вытекает из того, что современные вычислительные системы оснащаются, кроме процессоров, и ускорителями вычислений, и специализированными модулями типа GraPE, и реконфигурируемыми устройствами (ПЛИС), и всем упомянутым в комплексе. Так как маловероятно создание экзафлопеной суперЭВМ целенаправленно под определенный тип задач, необходимо, чтобы программа была готова использовать любое имеющееся оборудование,
В работе [15] показана связь парадигм параллельного программирования с поколениями высокопроизводительных вычислительных систем. Существует множество подходов, используемых для достижения более высокой производительности.
• Декомпозиция расчетной области с целью ее разделения на более мелкие подобласти. В частности, в статье [16] представлен метод декомпозиции для трехмерной области при крупномасштабных расчетах конфигураций электронов на основе теории функционала плотности, проводимых на массивно-параллельных компьютерах. Метод предполагает декомпозицию по атомам и декомпозицию по сетке.
• Использование большого количества процессорных элементов (ПЭ). С этой целью разрабатывается системное программное обеспечение, позволяющее увеличить число процессорных элементов сверх определенного предела [9] или создаются численные методы с меньшим количеством необходимых коммуникаций. Например, в работе [17] предложена реализация метода исключения Гаусса со сниженным уровнем коммуникаций, основанная на LU-факторизации с использованием блоков столбцов матрицы.
• Применение многоядерных процессоров или различных ускорителей вычислений [18], позволяющих увеличить скорость счета без возрастания нагрузки на коммуникационную сеть, оптимизация под архитектуру процессора или ускорителя.
• Разработка высокопроизводительных мелокомасштабных сетевых устройств типа "сеть на кристалле" (Network-ori-Crystal, NoC) [19].
• Сокращение количества отправляемых сообщений [20].
• Переход к численным методам, более подходящим для многопроцессорных ЭВМ. Например, переход от неявных схем к явным [21], к методам на основе ортогональных преобразований [22], к методам, рассматривающим газ или жидкость как набор "частиц". Например, в работе [23] предложена стратегия реализации на экзафлопс-машинах решеточного метода Больцмана, которая заключается в вычислении с задержкой по времени.
Все перечисленные подходы можно разделить на три принципиально разные непересекающиеся направления (рис. 1):
• масштабируемость и увеличение числа процессорных элементов;
• использование ускорителей вычислений;
• адаптация вычислительных методов к архитектуре высокопроизводительной вычислительной системы (ВВС);
• адаптация вычислительных методов к экзафлопсу;
• вычислительные методы, специально разработанные для экзафлопса;
• обработка данных большого размера;
• со-дизайн и комплексная разработка программ.
Масштабируемость и увеличение числа ПЭ Использование ускорителей вычислений Адаптация вычислительных методов к архитектуре ВВС Адаптация вычислительных методов к экзафлопсу Вычислительные методы, разработанные специально для экзафлопса
Обработка данных большого размера Co-дизайн и комплексная разработка программ
Рис. 1. Основные подходы к достижению экзафлопсной производительности. Доли публикаций в обзоре
Fig. 1. Main approaches used to achieve exascale performance. Portion of publications in the review
3. Численные методы для экзафлопсных вычислений
Разработка численных алгоритмов и подходов к их реализации лежит в русле основных тенденций развития современных вычислительных методов механики сплошных сред. Наиболее часто используемые для расчетов на суперЭВМ численные методы:
• метод Монте-Карло;
• методы частиц;
• метод конечных элементов;
• методы молекулярной динамики;
• итерационные методы решения СЛАУ;
• вычисление многомерных интегралов;
• прямые методы решения кинетического уравнения Власова-Лиувилля,
3.1. Разработка новых численных методов для экзафлопсных суперЭВМ
Очень важно выработать критерии применимости вычислительных алгоритмов для экзафлопсных суперЭВМ, Использование критериев и оценок эффективности таких алгоритмов позволит:
• упростить переход к экзафлопеным вычислениям;
• исключить непригодные алгоритмы;
• выделить принципы построения наиболее перспективных алгоритмов;
• повысить эффективность использования суперЭВМ экзафлопсного класса,
В настоящее время используется только критерий, состоящий в отсутствии существенного падения эффективности при переходе с петафлопеного расчета на дееятипе-тафлопеный. При невозможности проведения таких расчетов может быть выполнено имитационное моделирование [24, 25], В статье [25] излагаются возможные подходы к построению экзафлопеной суперЭВМ с точки зрения использования оборудования. Моделирование расчетов на экзафлопсных системах проводится на машинах-прототипах с помощью так называемых мини-приложений, В работе [26] предложена методология упрощения создания и улучшения переносимости приложений для экзафлопсных суперЭВМ, которая имеет название "top down methodology". Данная методология основывается на разработке кода таким образом, чтобы он не был привязан к типу параллелизма или используемому оборудованию. Доработка под реально имеющееся оборудование проводится на следующей стадии разработки, и таким образом код может быть перенесен и запущен на любом типе суперЭВМ,
Имеются численные методы, разработанные специально для экзафлопсных машин. Например, методика локального сгущения шага при решении уравнений реакции-диффузии [27], решение дифференциальных уравнений в частных производных с пониженным объемом коммуникаций [28], Создание численных методов для экзафлопсных суперЭВМ (рис, 2) состоит в том числе в анализе работы с данными большого размера. Это вызвано очевидной необходимостью сохранить результаты счета объемом в сотни петабайт [29] и передавать их для обработки.
Разработка параллельных вычислительных приложений с учетом особенностей вычислительной системы называется со-дизайном. Примерами такого со-дизайна являются [30, 31], В работах [32, 33] предложен многоуровневый параллелизм. На уровне физической постановки задачи происходит разделение по физическим процессам. При переходе к дискретной модели используются различные технологии для реализации
■ Адаптация вычислительных методов к экзафлопсу
■ Вычислительные методы, разработанные специально для экзафлопса
■
Рис. 2. Разработка и адаптация численных методов для экзафлопсных суперЭВМ Fig. 2. Development and adaptation of numerical methods for exascale supercomputers
параллельных вычислений. На уровне адаптации к архитектуре суперЭВМ используется множество подходов дня наиболее эффективной реализации каждого конкретного численного метода.
Задача конструирования пакетов программ дня экзаф.нонспых систем решается, в частности, путем создания инструментов дня разработки многомасштабных приложений с помощью автоматизированного сочетания нескольких приложений с разными масштабами па основе платформы GridSpace и окружения АНЕ |34|, путем минимизации коммуникационных издержек между CPU и GPU па примере реализации метода ветвей и границ |35|, а также создания инструмента дня обеспечения необходимой локальности данных при иерархической организации памяти в гибридных системах |36|, В работе |37| представлен подход, названный авторами "unite and conquer", который заключается в следующем: нараллельпая программа, реализующая некоторую математическую модель, разбивается на три элемента: вычисления, работа с данными и коммуникации. При этом все три элемента тесно взаимодействуют, но разрабатываются различным образом и могут быть представлены каждый несколькими компонентами, что обеспечивает адаптацию к структуре суперЭВМ и выбор оптимальных численных методов.
3.2. Адаптация численных методов к архитектуре экзафлопсных суперЭВМ
Характерными примерами адаптации вычислительных методов к архитектуре суперЭВМ дня работы па очень большом количество процессорных элементов являются вариант итерационного метода Якоби с ускорением Андерсона |38|, метод иерархических алгоритмов дня эффективной параллельной реализации параллельного решения систем линейных уравнений с разреженной матрицей на основе комбинации прямых и итерационных методов |39| и масштабируемые алгоритмы Монте-Карло |40|, В работе |41| предложена идея гиперболизации уравнений механики сплошной среды, что позволит использовать .ногически более простые алгоритмы. На примере замены уравнений Навье-Стокса на QGS-снстему изложена стратегия, основанная на свойстве ограниченности области влияния на решение, позволяющая строить отказоустойчивые алгоритмы дня таких гиперболизированных систем уравнений |5|,
Возникает вопрос: где проходит грань между алгоритмами, специально разработанными дня экзаф.нонспых машин, и алгоритмами, адаптированными дня экзаф.нонса. На первый взгляд разница незначительна, так как разрабатываемые специально дня экзаф.нонспых суперЭВМ алгоритмы основаны па уже известных алгоритмах. Тем не менее отличие существенное. Алгоритмы, разработанные специально дня экзаф.нонспых вычислений, изначально создавались с цслыо минимизировать или свести к пуню коммуникации и обеспечить высокую эпергоэффективпость (с достижением корректности результатов). Адаптированные алгоритмы к экзаф.нонспым вычислениям разрабаты-
вались для параллельных вычислений на десятках или сотнях процессорных элементов и случайно оказались достаточно хорошо масштабируемыми для их эксплуатации на пета- и экзафлопеных системах. Такие алгоритмы не могут быть эффективными (за редким исключением), так как для адаптированных алгоритмов коммуникации не минимальны. Кроме того, адаптированные алгоритмы не могут оказаться энергоэффективными, так как разрабатывались для процессоров общего назначения. Изменить это свойство в процессе адаптации невозможно без принципиальных изменений самого алгоритма.
4. Приложения
Экзафлопеные вычисления особенно актуальны в таких задачах науки и техники, где натурный эксперимент либо очень дорогостоящий, либо невозможен. Такие задачи интересны с точки зрения разработки и программной реализации вычислительных алгоритмов: различные варианты декомпозиции расчетной области, организация межпроцессорных обменов, достижение оптимальной производительности. Наибольшее число статей в нашем обзоре посвящено вычислительной гидродинамике (см, таблицу). Это объясняется тем, что гидродинамические приложения — обширная и очень разнообразная область. Есть статьи, посвященные пета- и экзафлопеным вычислениям в области космической газодинамики, расчетам обтекания кораблей, предсказаниям наводнений в прибрежных городах Северной Европы и другим экологическим вопросам, исследованию моделей океана и масштабированию вычислений при моделировании океанических течений, расчетам поведения жидкости в случае обтекания пучка твэлов при больших числах Рейнольдса, расчету гидродинамической турбулентности, разработке гибридных МР1-ОрепМР-приложений для моделирования турбулентности, моделированию шумовых характеристик реактивных двигателей, применению графических ускорителей для моделирования крупномасштабной турбулентности, расчету турбулентных вихрей при решении задачи обтекания самолета, вопросам контроля погрешности вычислений в моделировании турбулентных потоков, моделированию многофазных течений на основе как графических ускорителей, так и подееточных расширений многосеточного метода для улучшения масштабируемости. Важным вопросом является построение сеток для гидродинамического моделирования, в частности подбор оптимального
Естественно-научные приложения экзафлопеных вычислений Natural science applications of exascale computing
Вычислительная гидродинамика 27
Ядерные технологии 17
Физика плазмы 11
Разработка новых материалов 10
Предсказание погоды 10
Биомедицинские приложения 9
Астрофизика и космология 6
Молекулярная динамика 6
Мультифизика 6
Геофизика 6
Финансы 2
генератора ееток для крупномасштабных расчетов, автоматическое создание сетки с высоким разрешением на основе неструктурированной грубой сетки в режиме параллельного исполнения с использованием MPI, а также организация для параллельных расчетов оптимизированного доступа к данным на основе декартовой сетки.
Существенной областью приложений пета- и экзафлопеных вычислений являются ядерные технологии и вопросы моделирования ядерных реакторов. Разработаны масштабируемые версии метода Монте-Карло для переноса нейтронов и проведен анализ коммуникационных потерь в методе Монте-Карло, Для решения задач ядерной физики применяются решеточные уравнения Больцмана с использованием квантовой хро-модинамики. Следует особенно отметить работы по созданию интегральной среды для разработки ядерных реакторов и моделированию новых видов реакторного топлива. Есть статьи, посвященные пета- и экзафлопеным вычислениям в области моделирования процессов, протекающих в ядерных реакторах.
Заключение
Применение современных высокопроизводительных суперЭВМ дает качественный скачок в решении многих важных научных и производственных задач. Анализ публикаций показал, что в области решения задач механики сплошной среды преобладает подход, связанный не с разработкой новых, а с адаптацией существующих численных методов и алгоритмов к архитектуре экзафлопеных суперЭВМ, Наиболее актуальным приложением экзафлопеных суперЭВМ в этой области является вычислительная гидродинамика, Число публикаций свидетельствует о том, что привлечение высокопроизводительных вычислений стало доступным и востребованным.
Благодарности. Работа выполнена при финансовой поддержке Минобрнауки России в рамках государственного задания: соглашение № 075-03-2020-223/3 (FSSF-2020-0018),
Список литературы
[1] Dongarra J., Beckman P., Moore T., Aerts P., Aloisio G., Andre J.-C., Barkai D., Berthou J.-Y., Boku T., Braunschweig В., Cappello F., Chapman В., Chi X., Choudhary A., Dosanjh S., Dunning T., Fiore S., Geist A., Gropp В., Harrison R., Hereld M., Heroux M., Hoisie A., Hotta K., Jin Z., Ishikawa Y., Johnson F., Kale S., Kenway R., Keyes D., Kramer В., Labarta J., Lichnewsky A., Lippert T., Lucas В., Maccabe В., Matsuoka S., Messina P., Michielse P., Möhr В., Mueller M.S., Nagel W.E., Nakashima H., Papka M.E., Reed D., Sato M., Seidel E., Shalf J., Skinner D., Snir M., Sterling T., Stevens R., Streitz F., Sugar В., Sumimoto S., Tang W., Taylor J., Thakur R., Trefethen A., Valero M., van der Steen A., Vetter J., Williams P., Wisniewski R., Yelick K. The international exascale software project roadmap. The International Journal of High Performance Computing Applications. 2011; 25(l):3-60. DOI: 10.1177/1094342010391989.
[2] Gropp W., Snir M. Programming for exascale computers. Computing in Science Engineering. 2013; 15:27-35. D01:10.1109/MCSE.2013.96.
[3] Keyes D.E. Exaflop/s: The why and the how. Comptes Rendus Mecanique. 2011; 339(2):70-77. D01:10.1016/j.crme.2010.11.002.
[4] Hey T., Agarwal D., Borgman C., Cartaro C., Crivelli S., Van Dam K.K., Luce R., Arjun S., Trefethen A., Wade A., Williams D. Doe advanced scientific computing
advisory committee (ASCAC) subcommittee report on scientific and technical information, United States. September 2015. 1)01:10.2172 1222717.
[5] Четверушкин Б.Н., Якобовский M.B. Вычислительные алгоритмы и архитектура систем высокой производительности. М.; 2018; 52:12. (Препр. 1111 \ I РАН им. М.В. Келдыша № 52). DOI:10.20948/prepr-2018-52.
[6] Voevodin V.V., Popova N.N. Infrastructure of supercomputing technologies. Programming and Computer Software. 2019; 45(3):89-95. D01:10.1134/S0361768819030071.
[7] Тютляева E.O., Одинцов И.О., Московский А.А., Мармузов Г.В. Тенденция развития вычислительных узлов современных суперкомпьютеров. Вестник ЮУрГУ. Серия Вычислительная математика и информатика. 2019. 8(3):92—114. D01:10.14529/cmsel90305.
[8] Степаненко С.А. Оценки ускорения вычислений гибридными системами. Пленарные доклады Пятой Международной конференции "Параллельные вычисления и задачи управления". М.: Учреждение Российской академии наук. Институт проблем управления им. В.А. Трапезникова РАН; 2010: 29-39.
[9] Gropp W. MPI at exascale: Challenges for data structures and algorithms. Proceedings of the 16th European PVM/MPI Users' Group Meeting on Recent Advances in Parallel Virtual Machine and Message Passing Interface. Berlin, Heidelberg, Springer-Verlag; 2009: 3-3. DOI: 10.1007/978-3-642-03770-2_3.
[10] Ильин В.П. Фундаментальные вопросы математического моделирования. Вестник Российской академии наук. 2016; 86(4):316-326. DOI:10.7868/S086958731604006X.
[11] Da Costa G., Fahringer Т., Gallego J.A.R., Grasso I., Hristov A., Karatza H., Lastovetsky A., Marozzo F., Petcu D., Stavrinides G., Talia D., Trunfio P., Astsatryan H. Exascale machines require new programming paradigms and runtimes. Supercomputing Frontiers and Innovations. 2015; 2(2):6-27. D01:10.14529/jsfil50201.
[12] Yamamoto K., Uno A., Murai H., Tsukamoto Т., Shoji F., Matsui S., Sekizawa R., Sueyasu F., Uchiyama H., Okamoto M., Ohgushi N., Takashina K., Wakabayashi D., Taguchi Y., Yokokawa M. The К computer operations: Experiences and statistics. Procedia Computer Science, International Conference on Computational Science. 2014; (29):576-585. D01:10.1016/j.procs.2014.05.052.
[13] Ettrich J., Nestler B. Diffuse interface method for fluid flow and heat transfer in cellular solids. Advances in Engineering Software. 2015; (87):1—12. DOI: 10.1016/j.advengsoft.2015.04.012.
[14] Malyshkin V.E. Functionality in ASSY system and language of functional programming. Proceedings the First Aizu International Symposium on Parallel Algorithms/Architecture Synthesis. 1995: 92-97. D01:10.1109/AISPAS.1995.401350.
[15] Воеводин В.В. Параллелизм в сложных программных комплексах (почему сложно создавать эффективные прикладные пакеты). Чебышевский сборник. 2017; 18(3):188—201. DOI: 10.22405/2226-8383-2017-18-3-188-201.
[16] Duy T.V.T., Ozaki Т. A three-dimensional domain decomposition method for large-scale dft electronic structure calculations. Computer Physics Communications. 2014; 185(3) :777-789. D01:10.1016/j.cpc.2013.11.008.
[17] Grigori L., Demmel J.W., Xiang H. Communication avoiding gaussian elimination. SC'08: Proceedings of the 2008 ACM/IEEE Conference on Supercomputing. Austin, Texas, November 2008: 1-12.
[18] Степаненко С.А., Южаков В.В. Экзафлопсные суперЭВМ. Контуры архитектуры. Программные системы: Теория и приложения. 2013; 4(4):61-90.
[19] Zheng N., Gu Н., Huang X., Chen X. Csquare: A new kilo-core-oriented topology. Microprocessors and Microsystems. 2015; 39(4-5):313-320. D01:10.1016/j.micpro.2015.03.008.
[20] Demmel J. Communication avoiding algorithms. SC Companion: High Performance Computing, Networking Storage and Analysis. 2012: 1942-2000. DOI: 10.1109/SC.Companion.2012.351.
[21] Kalinnik N., Korch M., Rauber T. Online auto-tuning for the time-step-based parallel solution of odes on shared-memorv systems. Journal of Parallel and Distributed Computing. 2014; 7 i(S):2722 27 i i. D01:10.1016/j.jpdc.2014.03.006.
[22] Mininni P.D., Rosenberg D., Reddy R., Pouquet A. A hybrid MPI-openMP scheme for scalable parallel pseudospectral computations for fluid turbulence. Parallel Computing. 2011; 37(6-7):316-326. D01:10.1016/j.parco.2011.05.004.
[23] Succi S., Amati G., Bernaschi M., Falcucci G., Lauricella M., Montessori A. Towards exascale lattice Boltzmann computing. Computers Fluids. 2019; 181:107-115. D01:10.1016/j.compfluid.2019.01.005.
[24] Rodionov A., Chernikh I., Glinskij B., Kulikov I.M., Marchenko M., Podkoritov D. Using simulation system agnes for modeling execution of parallel algorithms on supercomputers computers. Proceedings of the 2014 International Conference on System, Control, Signal Processing and Informatics (SCSI'2014). Prague, Czech Republic, April 2-4, 2014. 2014: 66-70.
[25] Dosanjh S., Barrett R., Doerfler D., Hammond S., Hemmert K., Heroux M., Lin P., Pedretti K., Rodrigues A., Trucano T., Luitjens J. Exascale design space exploration and co-design. Future Generation Computer Systems. Special Issue on Extreme Scale Parallel Architectures and Systems, Cryptography in Cloud Computing and Recent Advances in Parallel and Distributed Systems, ICPADS 2012 Selected Papers. 2014; (30):46-58. DOI: 10.1016/j.future.2013.04.018.
[26] Subotic V., Brinkmann S., Marjanovic V., Badia R.M., Gracia J., Niethammer C., Ayguade E., Labarta J., Valero M. Programmabilitv and portability for exascale: Top down programming methodology and tools with starSs. Journal of Computational Science. Scalable Algorithms for Large-Scale Systems Workshop (ScalA2011), Supercomputing 2011. 2013; 4(6):450-456. D01:10.1016/j.jocs.2013.01.008.
[27] Krause D., Krause R. Enabling local time stepping in the parallel implicit solution of reaction-diffusion equations via space-time finite elements on shallow tree meshes. Applied Mathematics and Computation. 2016; (277):164-179. D01:10.1016/j.amc.2015.12.017.
[28] Norman M.R. Developing a large time step, robust, and low communication multi-moment PDE integration scheme for exascale applications. Procedia Computer Science. International Conference On Computational Science, ICCS 2015 Computational Science at the Gates of Nature. 2015; (51):1848-1857. D01:10.1016/j.procs.2015.05.413.
[29] Abramson D., Lees M., Krzhizhanovskaya V.V., Dongarra J., Sloot P.M. Big data meets computational science, preface for ICCS 2014. Procedia Computer Science. 2014 International Conference on Computational Science. 2014; (29):l-7. DOI: 10.1016/j.procs.2014.04.002.
[30] Glinskiy B.M., Kulikov I.M., Snytnikov A.V., Romanenko A.A., Chernykh I.G., Vshivkov V.A. Co-design of parallel numerical methods for plasma physics and astrophysics. Supercomputing Frontiers and Innovations. 2014; l(3):88-98. D01:10.14529/jsfil40305.
[31] Poghosyan G., Matta S., Streit A., Bejger M., Krolak A. Architecture, implementation and parallelization of the software to search for periodic gravitational wave signals. Computer Physics Communications. 2015; (188):167-176. D01:10.1016/j.cpc.2014.10.025.
[32] Jacobsen D.A., Senocak I. Multi-level parallelism for incompressible flow computations on GPU clusters. Parallel Computing. 2013; 39(l):l-20. D01:10.1016/j.parco.2012.10.002.
[33] Liu F., Sosonkina M. A multilevel parallelism support for multi-phvsics coupling. Procedia Computer Science. Proceedings of the International Conference on Computational Science, ICCS 2011. 2011; (4):261-270. D01:10.1016/j.procs.2011.04.028.
[34] Rycerz К., Ciepiela Е., Dyk G., Groen D., Gubala Т., Harezlak D., Pawlik M., Suter J., Zasada S., Coveney P., Bubak M. Support for multiscale simulations with molecular dynamics. Procedia Computer Science. 2013 International Conference on Computational Science. 2013; (18):1116-1125. D01:10.1016/j.procs.2013.05.277.
[35] Chakroun I., Melab N., Mezmaz M., Tuyttens D. Combining multi-core and gpu computing for solving combinatorial optimization problems. Journal of Parallel and Distributed Computing. Heterogeneity in Parallel and Distributed Computing. 2013; 73(12): 1503 1577. DOI: 10.1016/j.jpdc.2013.07.023.
[36] Jin H., Jespersen D., Mehrotra P., Biswas R., Huang L., Chapman B. High performance computing using mpi and openmp on multi-core parallel systems. Parallel Computing. Emerging Programming Paradigms for Large-Scale Scientific Computing. 2011; 37(D):562 575. D01:10.1016/j.parco.2011.02.002.
[37] Emad N., Petiton S. Unite and conquer approach for high scale numerical computing. Journal of Computational Science. 2016; (1 1):5 1 1. D01:10.1016/j.jocs.2016.01.007.
[38] Pratapa P.P., Suryanarayana P., Pask J.E. Anderson acceleration of the Jacobi iterative method: An efficient alternative to Krvlov methods for large, sparse linear systems. Journal of Computational Physics. 2016; (306):43-54. D01:10.1016/j.jcp.2015.11.018. *
[39] Agullo E., Giraud L., Guermouche A., Roman J. Parallel hierarchical hybrid linear solvers for emerging computing platforms. Comptes Rendus Mecanique. High Performance ComputingLe Calcul Intensif. 2011; 339(2-3):96-103. D01:10.1016/j.crme.2010.11.005.
[40] Alexandrov V., Martel C.G., Strassburg J. Montecarlo scalable algorithms for computational finance. Procedia Computer Science. Proceedings of the International Conference on Computational Science, ICCS 2011. 2011; (4):1708-1715. D01:10.1016/j.procs.2011.04.185.
[41] Четверушкин Б.Н. Пределы детализации и формулировка моделей уравнений сплошных сред. Математическое моделирование. 2012; 21(11):33 52.
Вычислительные технологии, 2021, том 26, № 5, с. 81-94. © ФИЦ ИВТ, 2021 ISSN 1560-7534
Computational Technologies, 2021, vol. 26, no. 5, pp. 81-94. © FRC ICT, 2021 elSSN 2313-691X
COMPUTATIONAL TECHNOLOGIES
DOI: 10.25743/ICT. 2021.26.5.007 Computational methods of continuum mechanics for exaflop computer systems
SNYTNIKOV ALEKSEY V.1'2'*, LAZAREVA GALINA G.3'4
1Institute of Automation and Electrometry SB RAS, 630090, Novosibirsk, Russia
2
3
4
* Corresponding author: Snytnikov Aleksey V., e-mail: snytavQssd.sscc.ru Received July 24, 2020, revised August 9, 2021, accepted August 16, 2021.
Abstract
The article deals with applied issues which arise when exascale computing are used to solve applied problems. Based on the review of works in this area, the most pressing issues related to exascale calculations are highlighted. Particular attention is paid to software features, algorithms and
numerical methods for exaflop supercomputers. The requirements for such programs and algorithms are formulated. Based on the review of existing approaches related to achieving high performance, the main fundamentally different and non-overlapping directions for improving the performance of calculations are highlighted. The question of the necessity for criteria of applicability for computational algorithms for exaflop supercomputers is raised. Currently, the only criterion which is used, demands the absence of a significant drop in efficiency in the transition from a petaflop calculation to a ten-petaflop calculation. In the absence of the possibility of such calculations, simulation modelling can be carried out. Examples of development for new and adaptation of existing algorithms and numerical methods for solving problems of continuum mechanics are given. The fundamental difference between algorithms specially designed for exascale machines and algorithms adapted for exaflops is shown. The analysis of publications has showed that in the field of solving problems of continuum mechanics, the approach not associated with the development of new, but rather with the adaptation of existing numerical methods and algorithms to the architecture of exaflop supercomputers prevails. The analysis of the most popular applications is made. The most relevant application of exaflop supercomputers in this area is computational fluid dynamics. This is because hydrodvnamic applications are rich and diverse field. The number of publications indicates that the involvement of high-performance computing now is available and in demand.
Keywords: exaflops calculations, mathematical modelling of problems in continuum mechanics, numerical methods.
Citation: Snvtnikov A.V., Lazareva G.G. Computational methods of continuum mechanics for exaflop computer systems. Computational Technologies. 2021; 26(5):81—94. D01:10.25743/ICT.2021.26.5.007. (In Russ.)
Acknowledgements. This work is supported by the Ministry of Science and Higher Education of the Russian Federation: agreement No. 075-03-2020-223/3 (FSSF-2020-0018).
References
1. Dongarra J., Beckman P., Moore T., Aerts P., Aloisio G., Andre J.-C., Barkai D., Berthou J.-Y., Boku T., Braunschweig B., Cappello F., Chapman B., Chi X., Choudhary A., Dosanjh S., Dunning T., Fiore S., Geist A., Gropp B., Harrison R., Hereld M., Heroux M., Hoisie A., Hotta K., Jin Z., Ishikawa Y., Johnson F., Kale S., Kenway R., Keyes D., Kramer B., Labarta J., Lichnewsky A., Lippert T., Lucas B., Maccabe B., Matsuoka S., Messina P., Michielse P., Mohr B., Mueller M.S., Nagel W.E., Nakashima H., Papka M.E., Reed D., Sato M., Seidel E., Shalf J., Skinner D., Snir M., Sterling T., Stevens R., Streitz F., Sugar B., Sumimoto S., Tang W., Taylor J., Thakur R., Trefethen A., Valero M., van der Steen A., Vetter J., Williams P., Wisniewski R., Yelick K. The international exascale software project roadmap. The International Journal of High Performance Computing Applications. 2011; 25(l):3-60. D01:10.1177/1094342010391989.
2. Gropp W., Snir M. Programming for exascale computers. Computing in Science Engineering. 2013; 15:27-35. D01:10.1109/MCSE.2013.96.
3. Keyes D.E. Exaflop/s: The why and the how. Comptes Rendus Mecanique. 2011; 339(2):70-77. D01:10.1016/j.crme.2010.11.002.
4. Hey T., Agarwal D., Borgman C., Cartaro C., Crivelli S., Van Dam K.K., Luce R., Arjun S., Trefethen A., Wade A., Williams D. Doe advanced scientific computing advisory committee (ASCAC) subcommittee report on scientific and technical information, United States. September 2015. DOLlO.2172/1222717.
5. Chetverushkin B.N., Yakobovskiy M.V. Vychislitel'nye algoritmy i arkhitektura sistem vysokoy proizvoditel'nosti [Computational algorithms and architecture of high performane computers]. Moscow; 2018: 52:12. (Preprint of Keldysh Applied Mathematics Institute No. 52). (In Russ.)
6. Voevodin V.V., Popova N.N. Infrastructure of supercomputing technologies. Programming and Computer Software. 2019; 45(3):89-95. D01:10.1134/S0361768819030071.
7. Tyutlyeva E.O., Odintsov I.O., Moskovskiy A.A., Marmuzov G.V. Development trends for computational nodes of modern supercomputers. Bulletin of South Ural State University. Series
Computational Mathematics and Software Engineering. 2019; 8(3):92-114. D01:10.14529/cmsel90305. (In Russ.)
8. Stepanenko S.A. Estimates on acceleration of computations for hybrid systems. Plenarnye doklady Pyatoy Mezhdunarodnoy Konferentsii "Parallel'nye vychisleniya i zadachi upravleniya" [Plenary talks of the 5th International Conference "Parallel computing and control problems"]. 2010: 29-39. (In Russ.)
9. Gropp W. MPI at exascale: Challenges for data structures and algorithms. Proceedings of the 16th European PVM/MPI Users' Group Meeting on Recent Advances in Parallel Virtual Machine and Message Passing Interface. Berlin, Heidelberg, Springer-Verlag; 2009: 3-3. DOLIO. 1007/978-3-642-03770-2^3.
10. Il'in V.P. Fundamental issues of mathematical modelling. Herald of the Russian Academy of Sciences. 2016; 86(2):118-126. DOL10.1134/S101933161602009X.
11. Da Costa G., Fahringer T., Gallego J.A.R., Grasso I., Hristov A., Karatza H., Lastovetsky A., Marozzo F., Petcu D., Stavrinides G., Talia D., Trunfio P., Astsatryan H.
Exascale machines require new programming paradigms and runtimes. Supercomputing Frontiers and Innovations. 2015; 2(2):6-27. D01:10.14529/jsfil50201.
12. Yamamoto K., Uno A., Murai H., Tsukamoto T., Shoji F., Matsui S., Sekizawa R., Sueyasu F., Uchiyama H., Okamoto M., Ohgushi N., Takashina K., Wakabayashi D., Taguchi Y., Yokokawa M. The K computer operations: Experiences and statistics. Procedia Computer Science, International Conference on Computational Science. 2014; (29):576-585. DOLIO. 1016/j.procs.2014.05.052.
13. Ettrich J., Nestler B. Diffuse interface method for fluid flow and heat transfer in cellular solids. Advances in Engineering Software. 2015; (87):1-12. DOLIO.1016/j.advengsoft.2015.04.012.
14. Malyshkin V.E. Functionality in ASSY system and language of functional programming. Proceedings the First Aizu International Symposium on Parallel Algorithms/Architecture Synthesis. 1995: 92-97. D01:10.1109/AISPAS.1995.401350.
15. Voevodin V.V. Parallelism in large software packages (why is it difficult to create efficient software). Chebyshevskii Sbornik. 2017; 18(3):188-201. DOL10.22405/2226-8383-2017-18-3-188-201. (In Russ.)
16. Duy T.V.T., Ozaki T. A three-dimensional domain decomposition method for large-scale dft electronic structure calculations. Computer Physics Communications. 2014; 185(3):777-789. D01:10.1016/j.cpc.2013.11.008.
17. Grigori L., Demmel J.W., Xiang H. Communication avoiding gaussian elimination. SC'08: Proceedings of the 2008 ACM/IEEE Conference on Supercomputing. Austin, Texas, November 2008: 1-12.
18. Stepanenko S.A., Yuzhakov V.V. Exaflops supercomputers. Outline of architecture. Software Systems: Theory and Applications. 2013; 4(4):61-90. (In Russ.)
19. Zheng N., Gu H., Huang X., Chen X. Csquare: A new kilo-core-oriented topology. Microprocessors and Microsystems. 2015; 39(4-5):313-320. D01:10.1016/j.micpro.2015.03.008.
20. Demmel J. Communication avoiding algorithms. SC Companion: High Performance Computing, Networking Storage and Analysis. 2012: 1942-2000. DOI:10.1109/SC.Companion.2012.351.
21. Kalinnik N., Korch M., Rauber T. Online auto-tuning for the time-step-based parallel solution of odes on shared-memory systems. Journal of Parallel and Distributed Computing. 2014; 74(8):2722-2744. D01:10.1016/j.jpdc.2014.03.006.
22. Mininni P.D., Rosenberg D., Reddy R., Pouquet A. A hybrid MPI-openMP scheme for scalable parallel pseudospectral computations for fluid turbulence. Parallel Computing. 2011; 37(6-7):316-326. DOI: 10.1016/j.par co.2011.05.004.
23. Succi S., Amati G., Bernaschi M., Falcucci G., Lauricella M., Montessori A. Towards exascale lattice Boltzmann computing. Computers Fluids. 2019; 181:107-115. DOI: 10.1016/j.compfluid.2019.01.005.
24. Rodionov A., Chernikh I., Glinskij B., Kulikov I.M., Marchenko M., Podkoritov D. Using simulation system agnes for modeling execution of parallel algorithms on supercomputers computers. Proceedings of the 2014 International Conference on System, Control, Signal Processing and Informatics (SCSI'2014). Prague, Czech Republic, April 2-4, 2014. 2014: 66-70.
25. Dosanjh S., Barrett R., Doerfler D., Hammond S., Hemmert K., Heroux M., Lin P., Pedretti K., Rodrigues A., Trucano T., Luitjens J. Exascale design space exploration and co-design. Future Generation Computer Systems. Special Issue on Extreme Scale Parallel Architectures
and Systems, Cryptography in Cloud Computing and Recent Advances in Parallel and Distributed Systems, ICPADS 2012 Selected Papers. 2014; (30):46-58. D01:10.1016/j.future.2013.04.018.
26. Subotic V., Brinkmann S., Marjanovic V., Badia R.M., Gracia J., Niethammer C., Ayguade E., Labarta J., Valero M. Programmability and portability for exascale: Top down programming methodology and tools with starSs. Journal of Computational Science. Scalable Algorithms for Large-Scale Systems Workshop (ScalA2011), Supercomputing 2011. 2013; 4(6):450-456. D01:10.1016/j.jocs.2013.01.008.
27. Krause D., Krause R. Enabling local time stepping in the parallel implicit solution of reaction-diffusion equations via space-time finite elements on shallow tree meshes. Applied Mathematics and Computation. 2016; (277):164-179. D01:10.1016/j.amc.2015.12.017.
28. Norman M.R. Developing a large time step, robust, and low communication multi-moment PDE integration scheme for exascale applications. Procedia Computer Science. International Conference On Computational Science, ICCS 2015 Computational Science at the Gates of Nature. 2015; (51):1848-1857. D01:10.1016/j.procs.2015.05.413.
29. Abramson D., Lees M., Krzhizhanovskaya V.V., Dongarra J., Sloot P.M. Big data meets computational science, preface for ICCS 2014. Procedia Computer Science. 2014 International Conference on Computational Science. 2014; (29):l-7. D01:10.1016/j.procs.2014.04.002.
30. Glinskiy B.M., Kulikov I.M., Snytnikov A.V., Romanenko A.A., Chernykh I.G., Vshivkov V.A. Co-design of parallel numerical methods for plasma physics and astrophysics. Supercomputing Frontiers and Innovations. 2014; l(3):88-98. D01:10.14529/jsfil40305.
31. Poghosyan G., Matta S., Streit A., Bejger M., Krolak A. Architecture, implementation and parallelization of the software to search for periodic gravitational wave signals. Computer Physics Communications. 2015; (188):167-176. D01:10.1016/j.cpc.2014.10.025.
32. Jacobsen D.A., Senocak I. Multi-level parallelism for incompressible flow computations on GPU clusters. Parallel Computing. 2013; 39(l):l-20. D01:10.1016/j.parco.2012.10.002.
33. Liu F., Sosonkina M. A multilevel parallelism support for multi-physics coupling. Procedia Computer Science. Proceedings of the International Conference on Computational Science, ICCS 2011. 2011; (4):261-270. D01:10.1016/j.procs.2011.04.028.
34. Rycerz K., Ciepiela E., Dyk G., Groen D., Gubala T., Harezlak D., Pawlik M., Suter J., Zasada S., Coveney P., Bubak M. Support for multiscale simulations with molecular dynamics. Procedia Computer Science. 2013 International Conference on Computational Science. 2013; (18):1116-1125. DOI: 10.1016/j.procs.2013.05.277.
35. Chakroun I., Melab N., Mezmaz M., Tuyttens D. Combining multi-core and gpu computing for solving combinatorial optimization problems. Journal of Parallel and Distributed Computing. Heterogeneity in Parallel and Distributed Computing. 2013; 73(12):1563-1577. DOI: 10.1016/j.jpdc. 2013.07.023.
36. Jin H., Jespersen D., Mehrotra P., Biswas R., Huang L., Chapman B. High performance computing using mpi and openmp on multi-core parallel systems. Parallel Computing. Emerging Programming Paradigms for Large-Scale Scientific Computing. 2011; 37(9):562-575. D01:10.1016/j.parco.2011.02.002.
37. Emad N., Petiton S. Unite and conquer approach for high scale numerical computing. Journal of Computational Science. 2016; (1 !):5 1 !. D01:10.1016/j.jocs.2016.01.007.
38. Pratapa P.P., Suryanarayana P., Pask J.E. Anderson acceleration of the Jacobi iterative method: An efficient alternative to Krylov methods for large, sparse linear systems. Journal of Computational Physics. 2016; (306):43-54. D01:10.1016/j.jcp.2015.11.018.
39. Agullo E., Giraud L., Guermouche A., Roman J. Parallel hierarchical hybrid linear solvers for emerging computing platforms. Comptes Rendus Mecanique. High Performance ComputingLe Calcul Intensif. 2011; 339(2-3):96-103. D01:10.1016/j.crme.2010.11.005.
40. Alexandrov V., Martel C.G., Strassburg J. Montecarlo scalable algorithms for computational finance. Procedia Computer Science. Proceedings of the International Conference on Computational Science, ICCS 2011. 2011; (4):1708-1715. D01:10.1016/j.procs.2011.04.185.
41. Chetverushkin B.N. Limits of detalization continuous media mode and their mathematical formulations. Mathematical Models and Computer Simulations. 2013; (5):266-279. DOI: 10.1134/S2070048213030034.