УДК [004.272.2:004.942]::519.854.3::519.218.82

Повышение эффективности обменов данными при параллельном численном моделировании многофазных систем с использованием средств автоматизации программирования

В.В.ПЕКУНОВ
(Ивановский государственный энергетический университет,
Региональный научно-образовательный центр по наноматериалам «Жидкие кристаллы»)

Основные потери эффективности распараллеливания по пространству при моделировании многофазных сред (систем) происходят при обменах данными на стыках блоков расчетной области. Актуальны задачи сокращения количества обменов и оптимизации оставшихся обменов.
Часть обменов была исключена за счет периодической экстраполяции (кубическими полиномами) по времени значений переменных на стыках. Для нахождения коэффициентов полиномов использовался метод наименьших квадратов с весами qi(t) в целевой функции: , где Q — количество предыдущих точек, i — невязка для i-й точки. Соответствующая задача решалась для каждого узла расчетной сетки. Веса либо определялись специальной сигмоидальной функцией, либо путем периодической подстройки. Для случайного набора из S узлов относительно qi(t) градиентным методом решалась задача: , где M — глубина предсказания, jk — невязка в j-м узле для k-й точки. Подстройка снизила погрешность экстраполяции в 1,21,3 раза на наиболее критичных первых сотнях итераций, далее подстройка дает снижение не более чем в 1,05 раза.
Перейдем ко второй задаче. Совместим во времени вычисления и обмены данными на стыках. Вычислительный процесс представим как серию процессов обработки групп переменных модели. Совмещение вычислений и обменов ограничивается наличием зависимостей между группами. Редуцируем орграф взаимозависимостей переменных модели, последовательно объединяя узлы, образующие циклы. Получим сеть взаимозависимостей К групп переменных, по которой построим матрицу P отношений строгого следования между группами. Задача сводится к определению значений целочисленных переменных Xij (i-я группа входит в блок групп, передаваемый j-м по счету и обрабатываемый (j+1)-м по счету; Xij  {0; 1}), при которых достигается минимум временных затрат:
;
; ,
где ; M — максимальное количество блоков групп;  — табличная нелинейная функция времени обмена сообщениями (на j-й стадии) из N элементов; k — коэффициент замедления вычислений при асинхронном обмене;  — доля объема данных блока поля, подлежащая передаче; i — эмпирическая средняя скорость обработки поля одной переменной в i-й группе; Vi — объем данных в i-й группе. Введем отсутствие простоев при обработке блоков групп, вхождение группы в один блок и верный порядок обработки:
;
;   .
Данная модель используется в системе автоматизированного порождения программ. С ее помощью была построена оптимальная схема обменов при решении задачи моделирования процессов образования и распространения твердых, жидких и газообразных загрязнений. При Q = 5 и M = 4 на МВС-1000/16 удалось повысить эффективность распараллеливания с 80% до 91% на девяти процессорах, с 85,5% до 93% на пяти процессорах. Работа была выполнена при финансовой поддержке Минобразования и науки (грант РНП.2.2.1.1.7280).