Семинар «Постановки задач, допускающих распараллеливание на многопроцессорных вычислительных системах» ИМ СО РАН, 3 декабря 2004 г. Параллелизация континуальных и кинетических алгоритмов решения задач сверхзвуковой аэродинамики М.С.Иванов, А.Н.Кудрявцев, П.В.Ващенков, Д.В.Хотяновский, Е.А.Бондарь Институт теоретической и прикладной механики Российская Академия наук, Сибирское отделение Новосибирск Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Иванов Михаил Самуилович, [email protected] Кудрявцев Алексей Николаевич, [email protected] Ващенков Павел Валерьевич, [email protected] Хотяновский Дмитрий Владимирович, [email protected] Бондарь Евгений Александрович, [email protected] Лаборатория вычислительной аэродинамики ИТПМ СО РАН Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Континуальный и кинетический подходы • Континуальный: решение нестационарных уравнений Эйлера и НавьеСтокса с помощью конечноразностных и конечнообъемных схем сквозного счета (TVD, ENO, WENO) высоких (от второго до пятого) порядков. Явное интегрирование по времени (TVD схемы Рунге-Кутты). Многоблочная сетка. Параллелизация: domain decomposition + MPI. • Кинетический: прямое статистическое моделирование течений газа в свободномолекулярном, переходном и околоконтинуальном режимах методом Монте-Карло. Модельные частицы, представляющие каждая определенное число молекул. Может рассматриваться как способ решения уравнения Больцмана. Декартова прямоугольная сетка с адаптивным сгущением. Параллелизация: domain decomposition + статическая или динамическая балансировка загрузки + MPI. Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Параллельные компьютеры • Intel Paragon XP/S35: 512 ЦП, США • SPP-1600: 8 ЦП PA-RISC 7200 СКЦ Института высокопроизводительных вычислений и баз данных, Санкт-Петербург • Illiac 8: 64 ЦП SGI Origin 2000, CRIHAN, Руан, Франция • Cray T3E: 256 ЦП, IDRIS, Орсэ, Франция • Alpha-64 кластер МВС1000-М, 32 ЦП Compaq Alpha 833MHz, Myrinet, ССКЦ, Новосибирск • МВС 1000-М: 768 ЦП Alpha 2164, Межведомственный СКЦ РАН, Москва • IA-32 кластер “Platinum” Национального центра суперкомпьютерных приложений NCSA, США (1024 ЦП Intel Pentium III, 1GHz, Myrinet) • Институтский и лабораторный кластеры Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Необходимые формулировки • Ускорение (speedup): S = T1/TP T1 TP • — время счета на 1 процессоре, — время счета на P процессорах Эффективность: E = S/P S = P — линейное или идеальное ускорение. В реальности S < P (сублинейное ускорение). Иногда бывает S > P (суперлинейное ускорение), например из-за фокусов с кэшем. Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Необходимые формулировки T = f (N,P,…) • Время выполнения задачи: • Время работы процессора состоит из времени счета Tcalc, времени передачи сообщений Tcomm и времени ожидания Tidle: T = Tjcalc + Tjcomm + Tjidle T = (Tcalc+Tcomm+Tidle)/P = (Σ Tjcalc + Σ Tjcomm + Σ Tjidle)/P E = Tcalc/(Tcalc+ Tcomm+Tidle) • Таким образом, основная цель при разработки эффективного параллельного алгоритма состоит в минимизации Tcomm и Институт теоретической и прикладной механики СО РАН Tidle. Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Схемы сквозного счета Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Конвекция вихря • Изэнтропический вихрь переносится вдоль диагонали квадрата с наложенными дважды периодическими граничными условиями средним полем скорости u=1, v=1 Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Дифракция ударной волны Экспериментальная теневая фотография Численная шлирен-визуализация Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Ударная волна (Ms=1,5) в круглой трубе Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Ударная волна (Ms=1,5) в круглой трубе Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Параллельная реализация • Domain decomposition для четырех ЦП в простейшем случае • Достоинства: простота реализации, высокая эффективность. Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Масштабированное параллельное ускорение • Tomcat: IA-32 кластер МВС-1000/16, 16 ЦП Intel Pentium III, 800MHz, Gigabit Ethernet • ССКЦ: Alpha-64 кластер МВС1000-М, 32 ЦП Compaq Alpha 833MHz, Myrinet Ncpu Nx×Ny×Nz Время счета, Tomcat Время счета, ССКЦ 1 120×40×40 1361 377 2 240×40×40 1378 406 4 480×40×40 1430 418 8 960×40×40 1536 438 Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Процесс запуска отражающего сопла Экспериментальная (Amann, 1969) и численная (невязкий расчет) шлирен-визуализации PS: первичная ударная волна CD: контактный разрыв SS: вторичная ударная волна IS: внутренний скачок SLR: отраженный контактный разрыв Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Процесс запуска отражающего сопла Сравнение экспериментальных и численных результатов: (x-t) диаграмма местоположений ударных волн на оси Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Исследования перехода между стационарными регулярной и маховской конфигурациями ударных волн под действием возмущений • • При отражении сильных ударных волн существует область двойного решения, где возможны и регулярный, и маховский тип стационарного отражения при одних и тех же параметрах потока. Короткий лазерный импульс, сфокусированный в потоке может быть использован для осуществления контролируемого перехода между регулярным и маховским отражениями (?) ? Численные шлирены для регулярного (слева) и маховского (справа) отражений Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Параллельное ускорение Измерялось масштабированное ускорение при различной загрузке одного процессора (403, 803 и 1003 ячеек сетки на 1 процессор) IA-32 кластер “Platinum” Национального центра суперкомпьютерных приложений NCSA, США (1024 ЦП Intel Pentium III, 1GHz, Myrinet) Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Воздействие лазерного импульса на регулярное отражение – переход к маховскому отражению • Число Маха потока M=4. Энергия лазерного импульса E = 0.1 Дж. • 16 CPU и 14 млн. ячеек сетки. Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Воздействие лазерного импульса на маховское отражение – переход к регулярному отражению (?) • Число Маха потока M=3.45. • Энергия лазерного импульса E = 0.215 Дж. • 32 CPU и 35 млн. ячеек сетки. Разрешение Δymin=2×10-3. Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Расчеты с высоким разрешением – маховское отражение сохраняется • Параметры потока идентичны предыдущему случаю. • 64 CPU и 120 млн. ячеек сетки. Разрешение Δymin=1.3×10-3. • Вывод: разрешение тонких деталей течения является определяющим в данной задаче! Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Изменение высоты ножки Маха в расчете и эксперименте Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Вязкая ударная труба Начальные условия (Daru & Tenaud, 1999) (x-t) диаграмма плотности в невязком расчете Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Вязкая ударная труба Цветные шлирен-визуализации Re=200 Re=1000 Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Вязкая ударная труба, Re=200 Распределение плотности вдоль нижней стенки в момент времени t =1 Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Плоская струя со спутным потоком Mj=2,5, M∞=1,5, Re=(Uj-U∞)H/ν=5000 Поле энтропии, изгибная мода неустойчивости Поле энтропии, варикозная мода неустойчивости Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Плоская струя со спутным потоком Mj=4,5, M∞=1,5, Re=(Uj-U∞)H/ν=5000 Поле энтропии, изгибная мода неустойчивости Поле энтропии, варикозная мода неустойчивости Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Моделирование крупных вихрей (LES) • Основная идея: движение крупных вихрей рассчитывается прямо их нестационарных уравнений Навье-Стокса, вклад мелкомасштабной турбулентности учитывается с помощью подсеточной модели Выделение крупномасштабных движений производится с помощью процедуры фильтрации • u ( x, t ) G ( x x)u ( x, t )dx • Примеры фильтров: GG 6 / 2 exp 6 x 2 / 2 1 / , GB 0, при x /2 иначе • После фильтрации в уравнениях появляются новые неизвестные члены. Для их вычисления используются подсеточные модели. Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике LES сверхзвуковой турбулентной струи • Моделируется сверхзвуковая турбулентная струя с числом Маха M=1.5, истекающая в затопленное пространство. • Степень нерасчетности струи pj/pa варьируется. • Уровень турбулентных пульсаций во входном сечении струи 5%. • Расчет проводился с помощью WENO схемы 5-го порядка. • Моделируется плоская струя. Течение предполагается периодичным по трансверсальной координате. • Размер вычислительной области Lx×Ly×Lz=10h×5h×2h, где h−высота струи. • Число ячеек сетки в расчетной области Nx×Ny×Nz=312×161×64≈3.2×106 • Расчет проводился на 8 ЦП МВС-1000 в течение нескольких суток Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Идеально расширенная струя pj=pa Изоповерхности завихренности Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Недорасширенная струя. pj /pa=2 Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Влияние продольного градиента давления на характеристики турбулентности Усредненная продольная скорость на оси струи Усредненные пульсации продольной скорости на оси струи Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Метод прямого статистического моделирования • Метод ПСМ традиционно рассматривается как метод компьютерного моделирования поведения большого числа модельных молекул. Обычно число модельных частиц является достаточно большим (порядка миллионов), но оно мало в сравнении с числом молекул реального газа. Каждая модельная частица представляет определенное число реальных молекул. Моделируемый объем физического пространства разбивается на ячейки, размеры которых такие, чтобы изменение параметров течения в каждой ячейке было малым. Изменение времени проводится дискретными шагами dt, малыми по сравнению со средним временем между столкновениями молекул. Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Метод ПСМ • Движение молекул и межмолекулярные столкновения на интервале dt разделены и проводятся последовательно: 1) Все молекулы перемещаются на расстояние, определяемое их скоростями и шагом по времени dt. Проводятся определенные действия, если молекулы пересекают поверхности твердого тела, линии или поверхности симметрии, либо внешние границы течения. Новые молекулы генерируются на границах, через которые есть поток молекул внутрь области. 2) Производятся столкновения между молекулами, соответствующие интервалу dt. Скорости молекул до столкновения заменяются скоростями, приобретаемыми ими после столкновения. Так как изменения параметров течения в ячейках малы, то все молекулы в ячейке определяют одно и тоже состояние, соответствующее положению ячейки. Это дает возможность не учитывать относительные расстояния между частицами при выборе пары молекул для столкновения. Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Метод ПСМ Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Параллелизация алгоритмов ПСМ • Особенностью метода ПСМ является неравномерное распределение модельных частиц по вычислительной области. Возможны два подхода к его параллелизации: 1. Каждый процессор рассчитывает перенос некоторой порции частиц, а затем моделирует столкновения частиц в этой порции. Большие затраты на переиндексацию частиц. 2. Расчетная область разбивается на непересекающиеся подобласти, которые назначаются соответствующим процессорам. Процессы столкновения частиц и их переноса осуществляются каждым процессором независимо от других, и обмен информацией между процессорами состоит в передаче частиц, покидающих подобласть. Позволяет достичь высокой эффективности при условии, что все процессоры используют примерно одинаковое время для расчета временной эволюции частиц и время на передачу сообщений между процессорами мало. Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Балансировка загрузки • Основным способом уменьшения различий в Tcalc и, следовательно, уменьшения времени синхронизации Tidle является использование балансировки загрузки процессоров. Различные алгоритмы БЗП можно объединить в две группы: 1. Статические, в которых область разбивается на подобласти до начала расчета; 2. Динамические, когда балансировка процессоров осуществляется во время расчета по мере необходимости. • Прост в реализации и обладает хорошей эффективностью для не очень большого числа процессоров статический алгоритм с вероятностным распределением кластеров ячеек по процессорам. Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Динамическая балансировка загрузки • В начале расчета вычислительная область разделена на одинакового размера подобласти, число которых равно числу процессоров. При изменении структуры течения и, следовательно, загрузки процессоров во время расчета, кластеры перераспределяются между процессорами. В качестве критерия для балансировки загрузки используется время счета процессора Tjcalc. • Для определения количества передаваемых кластеров и направления их передачи решается уравнение теплопроводности для времени счета. Решение ищется на сетке, являющейся физической сетью процессоров. Используется разностная схема второго порядка точности. Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Обтекание капсулы «Союз» H = 85 км, α = -20º, изолинии плотности Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Влияние алгоритма балансировки на ускорение Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Время счета процессоров Tcalc/T N=64, статическая загрузка N=64, динамическая загрузка N=256, динамическая загрузка N=256, статическая загрузка Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Функция распределения числа процессоров N = 64 N = 256 Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Моделирование обтекания носовой части космического аппарата “Прогресс” после сброса створок головного обтекателя на высоте 83 км Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Основные характеристики задачи. • Расчетное поле состояло из 8 млн. ячеек • Моделировалось 60 млн. частиц. • Использовалось 10 процессоров кластера МВС1000/М Процессоры Alpha 833 МГц, 1 Гб оперативной памяти на процессор. • Требуемое количество памяти – 7 Гб. • Использованное процессорное время около 1500 ч. Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Адаптивная расчетная сетка Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Сравнение результатов моделирования с трубным экспериментом. Эксперимент проведен в ЦАГИ. Угол атаки 7.5 град. Упрощенная модель. Re ýêñï / Re ìîä 200 Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Поле давления около носовой части космического аппарата “Прогресс”. Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Сравнение полного давления, полученного в расчете с результатами натурного эксперимента. (Запуск проводился 24.01.2001 г.) Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Космическая станция «Мир» Геометрия Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Космическая станция «Мир» Контуры давления Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Обтекание надувной спускаемой капсулы в марсианской атмосфере Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Гиперзвуковое обтекание клина • Параметры течения: диссоциирующий азот N2; число Маха M=7,7; число Кнудсена Kn=0,00065 • Вычисления проводились в Межведомственном Суперкомпьютерном Центре РАН на многопроцессорной ЭВМ МВС1000М (768 процессоров Alpha 21264). • Параллельная версия программного пакета для вычислений методом ПСМ реализована с использованием библиотеки MPI. Во всех расчетах использовался алгоритм разбиения расчетной области со случайным распределением ячеек по процессорам. • В расчетах использовано до 70 миллионов моделирующих молекул и до 20 миллионов столкновительных ячеек. Максимальное число использованных процессоров: 200 (при эффективности параллелизации более 60 %). Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике Гиперзвуковое обтекание клина Поля числа Маха δw=47° δw=53,5° δw=62,5° Институт теоретической и прикладной механики СО РАН Параллелизация континуальных и кинетических алгоритмов в сверхзвуковой аэродинамике СПАСИБО ЗА ВНИМАНИЕ ! Институт теоретической и прикладной механики СО РАН