Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 10 лет назад пользователемОлег Челогузов
1 Д. Н. Микушин В. М. Степаненко Параллельные Вычислительные Технологии ПАВТ-2009 МГУ им. М.В. Ломоносова Научно- исследовательский Вычислительный Центр
2 Параллельные Вычислительные Технологии ПАВТ Региональная атмосферная модель и её приложения 2. Компоненты модели, профилирование 3.MPI-реализация 1. Явные схемы уравнений динамики, термодинамики и радиации: локальность вычислений 2. Решение эллиптического уравнения: транспонирование расчётной области 4.Cell-реализация 1. Одномерные циклы, шаблоны памяти 2. Вычисление правой части для эллиптического уравнения 3. Явная схема для уравнения переноса 5. Перспективы развития
3 Параллельные Вычислительные Технологии ПАВТ-2009 Обтекание воздушным потоком горного рельефа (Miranda and James, 1992)
4 Параллельные Вычислительные Технологии ПАВТ-2009 Виды бризовых циркуляций: морской бриз городской бриз ледовый бриз и др. (Langland et al., 1989) Рост концентрации вредных примесей в приземном слое атмосферы (Eastman et al., 1995)
5 Параллельные Вычислительные Технологии ПАВТ-2009 Height, m Черноморское побережье Кавказа Взаимодействие морского бриза с горно-долинными циркуляциями Временной ход температуры в приземном слое по результатам модели и данным измерений
6 Параллельные Вычислительные Технологии ПАВТ-2009 Атмосферная динамика Вертикальное перемешивание Микрофизика облачности и осадков Модель подстилающей поверхности Атмосферная термодинамика Радиационное излучение Модель внутренних водоёмов
7 Двумерная декомпозиция расчетной области Высокая связанность задачи – большое количество обменов Информационная зависимость алгоритмов по вертикальной координате: прогонки радиационный блок Параллельные Вычислительные Технологии ПАВТ-2009
8 Подобласть процесса Обмены граничными элементами массивов X Y Пример шаблона: явная схема + фильтрация Параллельные Вычислительные Технологии ПАВТ-2009
9 Сверхлинейное ускорение за счёт кэширования Параллельные Вычислительные Технологии ПАВТ-2009
10 Ускорение близко к линейному Параллельные Вычислительные Технологии ПАВТ-2009
11 TRANS_XY_YZ БПФ по оси X 1) 2) 3) TRANS_YZ_XZ TRANS_XZ_XY БПФ по оси Y X Y σ Параллельные Вычислительные Технологии ПАВТ-2009
12 Параллельные Вычислительные Технологии ПАВТ-2009 Насыщение на 100 процессорах
13 Параллельные Вычислительные Технологии ПАВТ ) Repeat for each piece of N Data 1) Transpose: N pieces per SPU 2) Fetch some pieces to SPUs 3) Compute partial results 4) Transfer results into main memory Results 6) Repeat for each iteration
14 Параллельные Вычислительные Технологии ПАВТ-2009 Обмен данными только между SPU и PPU (между SPU нет обменов) Декартово разбиение (как в случае MPI) не нужно X Y σ 0 nv = nx ny ns
15 Параллельные Вычислительные Технологии ПАВТ-2009 // 32 FLOPS const double ppdx = (*_P(_R(pp3)) - *_P(_L(pp3))) / (dx2 * *_P(_C(pp3))), ppdy = (*_P(_U(pp3)) - *_P(_D(pp3))) / (dy2 * *_P(_C(pp3))), ppgra2 = ppdx * ppdx + ppdy * ppdy, pplap = ((*_P(_R(pp3)) + *_P(_L(pp3)) - 2. * *_P(_C(pp3))) / dxx + (*_P(_U(pp3)) + *_P(_D(pp3)) - 2. * *_P(_C(pp3))) / dyy) / *_P(_C(pp3)), p = ptop + sigma0[is] * *_P(_C(pp3)), dtsdsi = (*_F(tems) - *_B(tems)) / (ds02a[is] * *_C(tems)), alfa = ptop / p + sigma0[is] * dtsdsi, beta = -ptop * *_P(_C(pp3)) / (p * p) + dtsdsi * (1. + sigma0[is] * dtsdsi) + sigma0[is] * ((*_F(tems) - *_C(tems)) / ds0[is+1] - (*_C(tems) - *_B(tems)) / ds0[is]) / (ds1[is] * *_C(tems)), betas = beta * sigma0[is], upduds = 0.5 * (*_C(u3) + *_L(u3)) * s0ds2a[is] * (*_F(u3) + *_LF(u3) - *_B(u3) - *_LB(u3)), vpdvds = 0.5 * (*_C(v3) + *_D(v3)) * s0ds2a[is] * (*_F(v3) + *_DF(v3) - *_B(v3) - *_DB(v3)); // 12 FLOPS const double val1 = ((*_P(_C(pp3)) - *_P(_C(pp1))) / dtl * (*_C(u2) * (*_P(_C(pp2)) + *_P(_R(pp2))) – *_L(u2) * (*_P(_L(pp2)) + *_P(_C(pp2)))) / dx * (*_C(v2) * (*_P(_C(pp3)) + *_P(_U(pp3))) – *_D(v2) * (*_P(_D(pp3)) + *_P(_C(pp3)))) / dy + *_P(_C(pp2)) * (*_F(wsig2) - *_C(wsig2)) / ds1[is]) / dt2; // 12 FLOPS const double val2 = -(*_C(uflux) - *_L(uflux)) / dx - (*_C(vflux) - *_D(vflux)) / dy +...
16 Параллельные Вычислительные Технологии ПАВТ-2009 // 32 FLOPS const double ppdx = (*_P(_R(pp3)) - *_P(_L(pp3))) / (dx2 * *_P(_C(pp3))), ppdy = (*_P(_U(pp3)) - *_P(_D(pp3))) / (dy2 * *_P(_C(pp3))), ppgra2 = ppdx * ppdx + ppdy * ppdy, pplap = ((*_P(_R(pp3)) + *_P(_L(pp3)) - 2. * *_P(_C(pp3))) / dxx + (*_P(_U(pp3)) + *_P(_D(pp3)) - 2. * *_P(_C(pp3))) / dyy) / *_P(_C(pp3)), p = ptop + sigma0[is] * *_P(_C(pp3)), dtsdsi = (*_F(tems) - *_B(tems)) / (ds02a[is] * *_C(tems)), alfa = ptop / p + sigma0[is] * dtsdsi, beta = -ptop * *_P(_C(pp3)) / (p * p) + dtsdsi * (1. + sigma0[is] * dtsdsi) + sigma0[is] * ((*_F(tems) - *_C(tems)) / ds0[is+1] - (*_C(tems) - *_B(tems)) / ds0[is]) / (ds1[is] * *_C(tems)), betas = beta * sigma0[is], upduds = 0.5 * (*_C(u3) + *_L(u3)) * s0ds2a[is] * (*_F(u3) + *_LF(u3) - *_B(u3) - *_LB(u3)), vpdvds = 0.5 * (*_C(v3) + *_D(v3)) * s0ds2a[is] * (*_F(v3) + *_DF(v3) - *_B(v3) - *_DB(v3)); // 12 FLOPS const double val1 = ((*_P(_C(pp3)) - *_P(_C(pp1))) / dtl * (*_C(u2) * (*_P(_C(pp2)) + *_P(_R(pp2))) – *_L(u2) * (*_P(_L(pp2)) + *_P(_C(pp2)))) / dx * (*_C(v2) * (*_P(_C(pp3)) + *_P(_U(pp3))) – *_D(v2) * (*_P(_D(pp3)) + *_P(_C(pp3)))) / dy + *_P(_C(pp2)) * (*_F(wsig2) - *_C(wsig2)) / ds1[is]) / dt2; // 12 FLOPS const double val2 = -(*_C(uflux) - *_L(uflux)) / dx - (*_C(vflux) - *_D(vflux)) / dy pp pp pp3 4.+nx pp3 5.-nx pp pp pp pp pp3 10.+nx pp3 11.-nx pp pp pp pp3 15.+np tems 16.-np tems tems pp3 19.+np tems tems tems 22.-np tems tems u u3 26.+np u3 27.+np-1 u3 28.-np u3 29.-np-1 u v3 … pp pp pp3 4.+nx pp3 5.-nx pp pp pp pp pp3 10.+nx pp3 11.-nx pp pp pp pp3 15.+np tems 16.-np tems tems pp3 19.+np tems tems tems 22.-np tems tems u u3 26.+np u3 27.+np-1 u3 28.-np u3 29.-np-1 u v3 …
17 Параллельные Вычислительные Технологии ПАВТ Пробный проход итерации цикла: последовательность эффективных адресов используемых данных исключение дубликатов 2. Использование полученной последовательности как базовых адресов в итерациях цикла с прибавлением соотв. смещения
18 Параллельные Вычислительные Технологии ПАВТ массивов, на одну итерацию: 83 входных значения 2 выходных значения 119 FLOP Процессорные элементы Время, сек
19 Параллельные Вычислительные Технологии ПАВТ массивов, на одну итерацию: 22 входных значения 1 выходное значение 17 FLOP Процессорные элементы Время, сек
20 Параллельные Вычислительные Технологии ПАВТ-2009 Возможность одновременного расчёта двух итераций (double precision) при использовании векторных операций ПРОБЛЕМА согласования выравниваний
21 Параллельные Вычислительные Технологии ПАВТ-2009
22 Параллельные Вычислительные Технологии ПАВТ-2009 сопряжение региональной атмосферной модели и вихре разрешающей модели пограничного слоя ИВМ РАН (Глазунов А.В.) развитие блока переноса активной атмосферной примеси включение параметризации кристаллической фазы в блок микрофизики облаков моделирование эмиссии и переноса метана в атмосферном бассейне Сибири
23 Параллельные Вычислительные Технологии ПАВТ Работа выполнена при поддержке гранта РФФИ программы Скиф-грид компании Т-Платформы
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.