RUS  ENG
Полная версия
ЖУРНАЛЫ // Вычислительные методы и программирование // Архив

Выч. мет. программирование, 2013, том 14, выпуск 3, страницы 375–382 (Mi vmp126)

Вычислительные методы и приложения

Трехуровневый MPI+NUMA+Threads метод построения параллельных программ для расчета задач гидродинамического моделирования на кластерных системах с узлами с неоднородным доступом к памяти

К. Ю. Богачев, Я. В. Жабицкий, А. А. Климовский, А. Р. Миргасимов, А. Е. Семенко

Московский государственный университет им. М.В. Ломоносова, механико-математический факультет

Аннотация: Рассматривается параллельная реализация программы решения задачи трехфазной фильтрации вязкой сжимаемой жидкости на кластерных системах с распределенной памятью, узлы которых имеют разное время доступа процессоров к различным участкам своей памяти. Традиционным подходом построения параллельных программ на кластерных системах с распределенной памятью является использование библиотеки MPI. В силу специфики решаемой задачи приходится иметь дело с неструктурированной расчетной сеткой и моделированием динамически меняющегося набора скважин, проходящих через значительное число блоков сетки. Это вносит ряд проблем при использовании традиционного подхода: дисбаланс загруженности вычислительных узлов, увеличение объема пересылок между MPI-процессами, увеличение используемого объема оперативной памяти и др. Предлагается трехуровневый MPI+NUMA+Threads-метод построения параллельной программы, целью которого является решение указанных проблем. В основе метода лежит идея переноса архитектуры узла кластера (многоядерность и неоднородный доступ к общей памяти узла) на архитектуру параллельной программы. Выполнено сравнение программ, реализованных с использованием предложенного метода и традиционного подхода, с точки зрения скорости работы и объема используемой оперативной памяти. Приведены результаты численных экспериментов на большом количестве реальных задач.

Ключевые слова: высокопроизводительные вычисления; гибридные MPI-многопоточные программы; NUMA-системы; балансировка загруженности; задача фильтрации.

УДК: 519.683.4

Поступила в редакцию: 27.05.2013



© МИАН, 2024