автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.18, диссертация на тему:Реализация моделей климата на многопроцессорных вычислительных системах кластерного типа

кандидата физико-математических наук
Глухов, Валерий Николаевич
город
Москва
год
2004
специальность ВАК РФ
05.13.18
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Реализация моделей климата на многопроцессорных вычислительных системах кластерного типа»

Автореферат диссертации по теме "Реализация моделей климата на многопроцессорных вычислительных системах кластерного типа"

На правах рукописи

Глухов Валерий Николаевич

РЕАЛИЗАЦИЯ МОДЕЛЕЙ КЛИМАТА НА МНОГОПРОЦЕССОРНЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМАХ КЛАСТЕРНОГО ТИПА

05.13.18 — Математическое моделирование, численные методы и комплексы программ

АВТОРЕФЕРАТ

диссертации на соисканиеученой степени кандидата физико-математическихнаук

Москва 2004 г.

Работа выполнена в Институте вычислительной математики РАН

Научный руководитель доктор физ.-мат. наук, академик Воеводин В.В.

Официальные оппоненты: доктор физ.-мат. наук,

Володин Е.М., кандидат физ.-мат. наук, Антонов А. С.

Защита состоится < 12 > февраля 2004 г. в 14 часов на заседании диссертационного совета Д 002.045.01 в Институте вычислительной математики РАН по адресу: 119991 ГСП-1, Москва, ул.Губкина, 8

С диссертацией можно ознакомиться в библиотеке Института вычислительной математики РАН.

Автореферат разослан < 12 > января 2004 г.

Ведущая организация: Межведомственный суперкомпьютерный центр

Ученый секретарь

диссертационного совета

доктор физико-математических наук

Бочаров Г.А

2004-4 26795

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

Актуальность темы. Работа посвящена проблеме эффективной реализации моделей климата на многопроцессорных вычислительных системах кластерной архитектуры. Актуальность темы обусловлена высокими требованиями, предъявляемыми современными моделями климата к производительности ЭВМ, на которых производятся расчеты, с одной стороны, и ростом мощности вычислительных систем, происходящим за счет реализации концепции параллельной обработки данных.

Так, если под климатом понимать ансамбль состояний, который климатическая система (атмосфера, океан, суша, криосфера, биота) проходит за достаточно большой промежуток времени, несложно получить грубую оценку выполняемых моделью арифметических операций. Предположим, что размерность пространственной сетки модели 100 х 100 х 100, и интегрирование производится на 100 лет с шагом 10 минут. При этом на каждом шаге по времени на каждую ячейку модельной сетки приходится N арифметических операций. Тогда общее количество операций будет порядка N • 1013. Если N порядка 100-1000, а производительность рабочей станции ограничивается 109 операциями в секунду, то на такой расчет уйдет несколько месяцев. Следовательно, моделирование климата - одна из задач требующая для своего решения суперкомпьютер с производительностью 1012 операций с плавающей точкой в секунду.

Именно такую пиковую производительность имеет введенная в эксплуатацию в Межведомственном суперкомпьютерном центре в конце 2000 года вычислительная система МВС1000М, включающая в себя 768 процессоров Alpha 21264 с тактовой частотой 667 MHz, соединенных высокоскоростной сетью Myrinet 2000. Она имеет кластерную архитектуру, то есть состоит из базовых блоков, каждый из которых имеет по 128 процессоров. В свою очередь блоки состоят из двухпроцессорных вычислительных модулей с общей памятью.

Модели климата, разрабатываемые в Институте вычислительной математики, успешно участвовали в международных программах AMIP, AMIP И,

CMIP, а также в ряде других экспериментов. Однако, до последнего времени расчеты проводились на персональных компьютерах или рабочих станциях. Таким образом, возникла острая потребность в их адаптации к многопроцессорным вычислительным комплексам.

Целью диссертационной работы являлось решение следующих задач:

1. Разработка методов адаптации климатических моделей к многопроцессорным ЭВМ кластерного типа.

2. Параллельная реализация модели общей циркуляции ИВМ РАН на многопроцессорных ЭВМ кластерного типа.

3. Параллельная реализация модели океана ИВМ РАН на многопроцессорных ЭВМ с общей памятью.

4. Сравнение эффективности алгоритмов, применяемых в глобальных атмосферных моделях, на многопроцессорных ЭВМ кластерного типа.

Научная новизна диссертации заключается в следующем. Во-первых, модель общей циркуляции атмосферы ИВМ РАН была распараллелена с применением двумерного распределения данных по процессорам, которое является более общим по сравнению с одномерным. Во-вторых, на основе спектрального метода, широко используемого в глобальных атмосферных моделях, и конечно-разностного метода, применяемого в модели общей циркуляции атмосферы ИВМ РАН, разработаны тестовые программы - динамические ядра для измерения производительности кластеров. Конечно-разностное динамическое ядро позволяет тестировать как явную, так и полунеявную схему интегрирования по времени, а также прямой и итерационные методы для решения дискретного уравнения Гельмгольца. В третьих, модель океана ИВМ РАН была реализована на многопроцессорных ЭВМ с общей памятью.

Практическая ценность работы заключается в том, что были разработаны и применены к конкретным моделям климата технологии адаптации последовательных программ к многопроцессорным ЭВМ с общей и распределенной памятю. В результате было получено значительное ускорение этих

моделей за счет их внутреннего параллелизма. Кроме того, была создана библиотека коммуникационных процедур, включающая в себя процедуры обмена граничными значениями и транспонирования распределенных данных, применение которой не ограничивается моделями климата. Библиотека применима для параллельной реализации вычислительных задач, использующих структурированные сетки и декомпозицию расчетной области вдоль одной или нескольких пространственных переменных, на системах с распределенной памятью.

Апробация работы. Основные результаты диссертации докладывались на семинарах НИВЦ МГУ и ИВМ РАН, на конференции МОДАС-2001 (Новосибирск), на XLГV Научной конференции МФТИ 2001 (Долгопрудный), на конференциях 0РБЛ'2001 (Санкт-Петербург), ГССБ 2002 (Амстердам), РагСББ 2003 (Москва).

Публикации. Результаты диссертации опубликованы в 3 работах.

Структура и объем работы. Диссертация состоит из введения, трех глав и заключения. Текст изложен на 97 страницах и содержит 22 рисунка и 14 таблиц. Библиографический список включает 39 наименований.

СОДЕРЖАНИЕ РАБОТЫ

Введение содержит в себе обоснование актуальности переноса моделей климата с рабочих станций на супер ЭВМ и обзор публикаций, посвященных этой проблеме.

В первой главе приводятся уравнения, описывающие крупномасштабную динамику атмосферы, методы их численного решения на ЭВМ (спектральный метод и метод конечных разностей), общая постановка проблемы адаптации программных комплексов моделей к многопроцессорным ЭВМ и основные критерии, которым должны удовлетворять параллельные версии моделей.

Уравнения, лежащие в основе гидростатических моделей общей циркуляции атмосферы, можно записать в виде:

дп _ . , д , .. —+ —(тгсг) =0,

+ 7?к X V + + ф) + ДТУ 1п7Г + <7 — = Р,

да

Р = рят,

где - горизонтальная и вертикальная компоненты скорости ветра,

соответственно, Т - температура, 7г - давление на поверхности земли, р -плотность, р - давление, Ф - геопотенциал, а = р/ж, к - вектор нормали к поверхности земли, Д -газовая постоянная воздуха, к = Д/ср, Ср - удельная теплоемкость при постоянном давлении, - абсолютный вихрь, f — параметр Кориолиса, £ = к.У XV- вихрь, Е — - кинетическая энергия единицы массы воздуха, - горизонтальная сила трения, С} - интенсивность нагревания единицы массы воздуха, - двумерный оператор Набла, действующий в горизонтальной плоскости. На решения накладывается условие периодичности по долготе, условие ограниченности на полюсах и условие твердой крышки <г(0) = а(1) = 0.

При использовании метода конечных разностей дискретизация зависимых величин осуществляется на смещенной "С"-сетке Аракавы. Применение полунеявной схемы позволяет увеличить шаг по времени в 4-5 раз по сравнению с явной схемой "чехарда" и приводит к необходимости решать на каждом шаге по времени дискретное уравнение Гельмгольца относительно дивергенции d:

где - шаг по времени, - матрица

размеров К х К, К - количество вертикальных уровней, - конечно-разностный аналог оператора Далласа, RHS - правая часть, зависящая от явных динамических тенденций на текущем шаге по времени, и от значений полей на текущем и предыдущем шаге. После диагонализации матрицы G уравнение распадается на К независимых систем линейных алгебраических уравнений, которые можно решать прямым или итерационным методом. Прямой метод основывается на преобразовании правых частей систем

в пространство Фурье, трехдиагональным гауссовым прогонкам вдоль широты и обратному преобразованию Фурье полученных решений.

Для подавления численной неустойчивости в высоких широтах, возникающей из-за сходимости меридианов к полюсам, в конечно-разностной модели применяется фильтр Фурье, гасящий высокочастотные зональные гармоники вблизи полюсов.

При использовании спектрального метода искомые поля раскладываются в ряды по сферическим функциям <р) (А - долгота, <р - широта). Поскольку последние являются собственными функциями оператора V2, решение уравнения Гельмгольца тривиально, но на каждом шаге по времени трансформировать переменные из пространства спектральных коэффициентов в физическое пространство, а нелинейные члены динамических тенденций - наоборот, из физического пространства в спектральное. Обратное спектральное преобразование поля Г имеет вид:

р(А^) = ¿^^^¿х;^

тогда как, его прямое преобразование есть суперпозиция прямого преобразования Фурье

и прямого преобразования Лежандра

где г = л/—1, X] = бш^-, ^ - Гауссовы широты, И^ - Гауссовы веса, Р^(гс) -многочлены Лежандра. И поскольку для них справедливо следующее свойство вычисления проводятся в цикле по симметричным относительно экватора парам Гауссовых широт так, что члены с четными и нечетными суммируются отдельно:

БО Л=1,М/2

обратное преобразованиеЛежандра обратное преобразование Фурье вычисления в физическом пространстве прямое преобразование Фурье прямоепреобразованиеЛежандра -ЕЮ БО

Целесообразным представляется подход, при котором адаптация модели к многопроцессорной ЭВМ считается успешной и завершенной, если для параллельной версии модели наблюдается существенное ускорение и результаты вычислений для последовательной и параллельной версий модели совпадают в пределах определенной приемлемой точности. Конечно, идеальным случаем можно было бы считать совпадение результатов с точностью до бита, однако, на практике не редко наблюдается разница, возникающая вследствии несохранения порядка выполнения арифметических операций и наличия ошибок округления. Также определенное отклонение результатов может происходить за счет оптимизации численных методов, применяемых в моделях, замены последовательных алгоритмов их параллельными аналогами. Естественно, любая такая замена не должна существенно влиять на качество воспроизведения моделью климата.

Во второй главе рассматриваются различные способы распараллеливания динамических блоков глобальных атмосферных моделей на многопроцессорных ЭВМ с распределенной памятью, проводится сравнение их масштабируемости на конкретных вычислительных системах. В этой же главе приводится описание коммуникационных процедур, используемых для реализации обменов данными между процессорами.

Процедуры реализованы на языке Си, оформлены в виде отдельной библиотеки и имеют интерфейс, позволяющий вызывать их как из программ на Си, так и из программ на языке Фортран. Предполагается, что физические поля хранятся в многомерных массивах, размерности которых соответствуют размерностям физического пространства, причем распределение данных по процессорам осуществляется декомпозицией по одной или нескольким

пространственным размерностям, а процессоры упорядочены в одномерный массив или многомерную решетку (картезианскую топологию).

Основные коммуникационные операции, реализуемые библиотекой, - обмены граничными значениями и транспонирование данных.

Обмен граничными значениями необходим, например, при вычислении конечно-разностной производной в направлении распределенной размерности. Во время этой операции каждый процессор обменивается данными, прилежащими границе соответствующей ему подобласти, со своими соседями. Такой обмен может одновременно осуществляться в направлении отдельных распределенных размерностей и, если необходимо, по смежным направлениям, соответствующим нескольким распределенным размерностям. Так, при двумерной декомпозиции данных для вычисления конечно-разностного аналога двумерного оператора Лапласа на пятиточечном шаблоне каждый процессор обменивается граничными значениями со своими соседями с севера, юга, запада и востока. Однако, при использовании девятиточечного шаблона также необходимо иметь "угловые" элементы от юго-восточного, юго-западного, северо-восточного и северо-западного соседа. Кроме того, при обменах должны быть учтены периодические граничные условия, если они налагаются на решение задачи. Предполагается, что коммутируемые границы могут иметь любую ширину, не превосходящую ширину подобласти, принадлежащей процессору.

Под транспонированием данных мы понимаем их перераспределение между процессорами, в результате которого нераспределенная размерность становится распределенной, а распределенная нераспределенной. Так, на практике довольно часто приходится сталкиваться с ситуацией, когда для проведения вычислений нужны все данные вдоль некоторой распределенной размерности и существует нераспределенная размерность, вдоль которой вычисления независимы. Именно в этом случае применимо транспонирование. Во время транспонирования каждый процессор внутри группы процессоров, соответствующей распределенной размерности, обменивается данными с каждым. Иногда можно совместить транспонирование с последующим обменом граничными значениями, если этот обмен производится в направ-

лении размерности, которая до транспонирования не была распределенной.

Наконец, отметим, что обе коммуникационные опреации: как транспонирование, так и обмен граничными значениями - можно выполнять параллельно с вычислениями. Для этого их нужно некоторым образом инициировать и проконтролировать их окончание.

Таким образом, основными целями, приследовавшимися при создании библиотеки, были

♦ универсальность (возможность использования несколькими различными приложениями)

♦ переносимость (обращения к стандартным функциям MPI)

♦ эффективность (в процедурах используются асинхронные пересылки и осуществляемые процедурами коммуникации могут выполняться в фоновом режиме, одновременно с вычислениями)

При распараллеливания динамических блоков глобальных атмосферных моделей сеточные данные распределялись по процессорам по широте и долготе. Выбор двумерного разбиения расчетной области в горизонтальной плоскости объясним, с одной стороны, тем, что такое разбиение является более общим по сравнению с одномерным, а, с другой стороны, тем, что разбиение вдоль третьего направления - высоты не представляется удобным из-за наличия гидростатического приближения, приводящего к необходимости интегрировать поля по вертикали. И, кроме того, наличие нераспределенной размерности позволяет транспонировать данные.

В конечно-разностном динамическом блоке сеточная область равномерно делится на Рх подобластей вдоль долготы и Ру подобластей вдоль широты (рис. 1, основное распределение), а процессоры упорядочиваются в двумерную картезианскую топологию размеров Рх х Ру. Ее столбцы и строки будем условно называть зональными и меридиональными подгруппами процессоров, соответственно.

Аналогичным образом упорядочиваются процессоры в спектральном динамическом блоке (рис. 2, физическое пространство).

Рис. 1: Распределение данных в конечно-разностном динамическом блоке, транспонирования в прямом солвере для уравнения Гельмгольца (случай Рх = 2, Ру = 3). А - долгота, (р - широта, }г - высота.

Основными коммуникационными операциями в конечно-разностном динамическом блоке являются обмены граничными значениями и транспонирования, тогда как в спектральном - только транспонирования.

В частности, в конечно-разностном динамическом блоке для вычисления явных динамических тенденций в некотором узле сетки необходимы данные из определенной окрестности этого узла. Кроме того, значения нескольких величин на полюсах вычисляются осреднением переменных на первой и последней широтах - операция глобального суммирования внутри первой и последней зональной группы. Применение фильтра Фурье для подавления численной нестабильности вблизи полюсов достигается транспонированием полей в плоскости высота-долгота. До транспонирования каждый процессор обладает частью точек по долготе и всеми уровнями по высоте, а после транспонирования лишь частью уровней, но, зато, всеми точками по долготе, что позволяет использовать последовательный алгоритм быстрого преобразования Фурье.

При применении прямого метода для решения дискретного уравнения Гельмгольца данные транспонируются в плоскости высота-долгота, затем, после вычисления быстрого преобразования Фурье, снова транспонируются но уже в плоскости долгота-широта (рис. 1, транспонирования Тд.ь и Т\уЧ>). В результате каждый процессор обладает частью точек по долготе и высо-

те, но всеми точками по широте. Применяется последовательная трехдиаго-нальная гауссова прогонка вдоль широты и делается обратное транспонирование в плоскости долгота-широта. Вычисляется обратное преобразование Фурье и восстанавливается исходное "основное" распределение данных.

Если используется итерационный метод для решения линейных систем, процессоры обмениваются граничными значениями при умножении матрицы на вектор и вычисляют глобальные суммы при расчете скалярных произведений векторов. Заметим, что умножение матрицы на вектор можно вычислять во внутренних точках подобласти одновременно с обменом граничными значениями.

В спектральном динамическом блоке спектральные коэффициенты первоначально распределяются по высоте (рис. 2, спектральное пространство, распределение А) таким образом, что на каждую меридиональную группу процессоров приходится некоторый набор уровней. А итерации

Физическое пространство

Пространство Фурье

Распределение А

Распределение В

Рис. 2: Распределения данных в спектральном динамическом блоке (треугольное усечение), транспонирования (случай - долгота, <р - широта, Л - высота, п - меридиональное волновое число, I - зональное волновое число.

гауссова цикла распределяются по зональным группам процессоров. Поэтому после завершения обратного спектрального преобразования данные распределены по высоте и широте. Так как для вычисления нелинейных членов динамических тенденций в физическом пространстве нужны все уровни высоты (рис. 2, физическое пространство), данные транспонируются в плоскости высота-долгота. После расчета тенденций производится обратное транспонирование и вычисляется быстрое преобразование Фурье (рис. 2, пространство Фурье). Затем, каждый процессор вычисляет свой индивидуальный вклад в сумму по гауссовым широтам для соответствующих ему уровней. Наконец, вычисление прямого преобразования Лежандра завершается глобальным суммированием внутри меридиональных групп и полученный результат дублируется в процессорах каждой меридиональной группы. В итоге, восстанавливается исходное распределение спектральных коэффициентов (распределение А).

Исходное распределение хорошо подходит для расчета горизонтальной диффузии, однако, вычисления по полунеявной схеме требуют данные со всех уровней. Для них больше подходит распределение спектральных коэффициентов, изображенное на рис. 2, как "распределение В". Переход из одного распределения в другое осуществляется путем транспонирования.

Отметим, что если вычисляется обратное спектральное преобразование нескольких полей, преобразование следующего поля можно осуществлять одновременно с транспонированием предыдущего.

Третья глава посвящена адаптации модели общей циркуляции атмосферы (ОЦА) ИВМ РАН и модели океана ИВМ РАН к вычислительным системам с общей и распределенной памятью, соответственно. Проводится анализ производительности моделей на суперкомпьютере МВСЮООМ, БСГ-кластере НИВЦ МГУ и других системах. В заключении главы приводятся основные возможные этапы адаптации моделей климата к многопроцессорным ЭВМ как с общей, так и с распределенной памятью.

Распараллеливание динамического блока модели ОЦА ИВМ РАН на вычислительных системах с распределенной памятью выполнено так, как описано во второй главе, с учетом того, что в нем всегда используется полу-

неявная схема и прямой метод для решения дискретного уравнения Гельм-гольца. Большая часть процедур, ответственных за расчет параметризаций физических процессов, не содержит зависимостей в горизонтальной плоскости, а потому не представляет серьезных трудностей при распараллеливании, за некоторым исключением. В нескольких местах осуществляется интерполяция из смещенных на пол шага по широте или долготе узлов сетки в центральные узлы. Для разрешения зависимостей такого характера достаточно вставить в код обмены граничными значениями.

Более серьезным модификациям подвергся блок, рассчитывающий вертикальную диффузию, в котором решается уравнение вида

где - любая из прогностических переменных (в том числе горизонтальные компоненты скорости и и и), г - относительная высота, а К - коэффициент диффузии, зависящий от и и V. Коэффициент К вычисляется в центральных узлах сетки, а значения скоростей интерполируются в них из смещенных узов:

Уравнение решается прогонками по вертикали в двумерном цикле по широте и долготе, на каждой итерации которого модифицируются Щ+1/2,^) и Поскольку выражение для К^ содержало уже

модифицированные на предыдущих итерациях значения имела место зависимость, которой можно избежать, если в качестве них использовать немодифицированные значения этих величин. Соответствующие изменения были внесены в код процедуры, в следствии чего итерации в цикле стали независимыми. Было показано, что возникающие в полях отклонения малы по сравнению с их естественной изменчивостью.

Распараллеливание модели ОЦА ИВМ РАН было выполнено таким образом, что результаты моделирования на нескольких процессоров совпадают с точностью до бита с результатами, получаемыми на одном процессоре. Это

дф 1 д дф

Щ-\/2,3 +Щ+1/2,] щ,3-1/2 + 4-1/2

2

было достигнуто благодаря сохранению порядка суммирования элементов распределенных массивов.

Ускорение и эффективность модели ОЦА ИВМ РАН на вычислительной системе МВС1000М МСЦ и 8С1-кластере НИВЦ МГУ показаны в таблицах 1 и 2. В строке (РХ,РУ) приведены размерности двумерных топологий процессоров, обеспечивающих максимальное ускорение для данного количества процессоров.

К-во проц. 2 4 8 16 32 64 128 256

Ускорение 1.80 3.42 5.77 9.42 15.29 23.96 30.89 31.13

Эфф-сть 90% 86% 72% 59% 48% 37% 24% 12%

(Рх,Ру) (1,2) (1,4) (2,4) (4,4) (2,16) (4Д6) (8,16) (16Д6)

Таблица 1: Ускорение и эффективность модели ОЦА ИВМ 2° х 2,5° (21 уровень) на вычислительной системе МВСЮООМ МСЦ.

К-во проц. 2 4 8 16 32 36

Ускорение 1.77 3.14 5.65 9.16 14.11 14.49

Эффективность 89% 78% 71% 57% 44% 40%

(Р*,Ру) (1,2) (2,2) (2,4) (2,8) (2Д6) (2,18)

Таблица 2: Ускорение и эффективность модели ОЦА ИВМ 2° х 2,5° (21 уровень) на БС1-кластере НИВЦ МГУ.

Проведенный анализ масштабируемости отдельных блоков модели показал, что плохо распараллеливаемой процедурой является пространственная фильтрация полей, основанная на быстром преобразовании Фурье.

Распараллеливание модели общей циркуляции океана (ОЦО) ИВМ РАН было проведено на вычислительных системах с общей памятью с использованием ОрепМР.

Поскольку в модели ОЦО независимыми переменными являются широта, долгота и относительная глубина, расчетная область имеет сложную, хотя

Рис. 3: Время расчета моделью ОЦА ИВМ климата на 6 часов модельного времени (в секундах) и зависимость ее ускорения от количества процессоров на вычислительной системе МВСЮООМ МСЦ и SCI-кластере НИВЦ МГУ.

и цилиндрическую в вертикальном направлении, форму. В горизонтальной плоскости используется равномерная прямоугольная сетка. Поля хранятся в двумерных и трехмерных массивах, в которых элементы, приходящиеся на сушу, маскируются. Для интегрирования уравнений модели применяется метод расщепления по физическим процессам и пространственным координатам. Условие "твердой крышки" позволяет ввести функцию тока.

Интерес к применению модели общей памяти возник, прежде всего, в связи с тем, что хотелось испытать различные способы распределения итераций в циклах (параметр SCHEDULE в директивах ОрепМР). Во-вторых, метод расщеплений сводится к трехдиагональным прогонкам вдоль каждой пространственной координаты и при использовании MPI пришлось бы многократно транспонировать данные, а при использовании общей памя-

ти в этом нет необходимости. Кроме того, общепризнанным считается, что распараллеливание программы с помощью ОрепМР требует гораздо меньше трудозатрат по сравнению с MPL

В методе последовательной верхней релаксации, в блоке функции тока, было введено красно-черное упорядочение неизвестных. Это преобразование сделало внутренний цикл в итерациях параллельным и не увеличило числа итераций, необходимых для достижения сходимости.

Зависимость времени счета параллельной версии модели ОЦО на один год модельного времени от количества процессоров на различных вычислительных системах с общей памятью приведена в таблице 3, а полученное ускорение изображено на рис. 4. Наименьшее время 5 мин. 58 с было достигнуто на 4-х процессорах системы Intel Itanium II, 1000 MHz, установленной в МСЦ. Соответствующее ему ускорение равно 2,6.

К-во проц. 1 2 4 8

IBM Regatta 16мин. 47с Имин. 28с 8мин. 39с 7мин.16с

Intel Itanium II 15мин. 46с 9мин. 46с 5мин.58с

Sun Fire 15000 Збмин. 01с - 16мин. 20с 13мин.00с

Рахат 10000 1ч. 38мин. 24с 1ч. 5мин. 48с 48мин.48с

Таблица 3: Время счета модели ОЦО ИВМ на один год модельного времени на вычислительных системах с общей памятью.

Анализ масштабируемости отдельных блоков модели ОЦА показал, что процедура решения уравнения для функции тока является наиболее плохо распарралеливаемой. Вопрки ожиданиям, применение динамических распределений итераций в циклах DYNAMIC и GUIDED не оказалось более эффективным по сравнению со статическим STATIC.

В качестве обобщения сформулируем и поясним основные этапы технологической цепочки, используемой для адаптации моделей климата к многопроцессорным ЭВМ. При применении модели распределенной памяти это

а) анализ ресурсов параллелизма программы;

б) выбор способа распределения данных по процессорам;

2 4

Количество процессоров

Рис. 4: Ускорение модели ОЦО ИВМ на вычислительных системах с общей памятью.

в) изменение границ циклов;

г) реализация межпроцессорных обменов;

д) оптимизация "узких" мест;

е) контроль результатов вычислений. При применении модели общей памяти:

а) анализ ресурсов параллелизма программы;

б) выбор способа распределения вычислений по процессорам;

в) разметка кода директивами ОрепМР;

г) оптимизация "узких" мест;

д) контроль результатов вычислений.

Анализ ресурсов параллелизма подразумевает изучение зависимостей между отдельными операторами и целыми блоками внутри программы. Он присутствует в обеих моделях программирования. Его цель - поиск независимых операций или макроопераций, соответствующих блокам, порядок выполнения которых не влияет на результаты вычислений. По существу, он, мог бы сводится к построению канонической параллельной формы графа алгоритма. Для его проведения достаточно кода программы и ее входных данных. Существуют системы, позволяющие автоматизировать анализ зависимостей. О характере зависимостей позволяет также судить информация о физике задачи и применяемых для ее решения численных методах. Обобщением проводимого анализа является вывод о целесообразности того или иного распределения вычислений между процессорами. Распределение вычислений можно рассматривать и как разбиение вершин, принадлежащих, ярусам параллельной формы графа программы, на подмножества. К сожалению, до настоящего времени не известно общего конструктивного решения проблемы их оптимального разбиения, поэтому в большинстве случаев приходится прибегать к эвристическим подходам, действовать на основании опыта, накопленного в реализации тех или иных схем на конкретных вычислительных системах той или иной параллельной архитектуры.

В случае применения модели распределенной памяти распределение вычислений по процессорам обусловливается выбором распределения данных. При этом, при распараллеливании циклов приходится явно модифицировать их параметры: границы циклов, шаги. Также явно приходится добавлять в код обращения к процедурам, осуществляющим межпроцессорные обмены данными. При использовании модели общей памяти обнаруженный параллелизм описывается в коде программы директивами ОрепМР.

Результаты вычислений параллельной и последовательной версий программы должны совпадать в пределах некоторой допустимой погрешности, обусловленной ошибками округления. Поэтому в процессе распараллеливания необходимо проводить тщательный контроль выходных данных, анализируя возникающие в них отклонения.

Наконец, различные участки параллельных программ могут выполняться на многопроцессорных ЭВМ с различной эффективностью. Выявление трудно распараллеливаемых мест и их оптимизация может существенно ускорить выполнение всей программы.

Описанная выше технология была применена к моделям общей циркуляции атмосферы и океана ИВМ РАН.

В заключении диссертации сформулированы основные результаты работы.

ОСНОВНЫЕ РЕЗУЛЬТАТЫ

1. Разработана технология адаптации моделей климата к многопроцессорным системам кластерного типа. Разработана библиотека коммуникационных процедур, включающая в себя процедуры транспонирования данных и обмена граничными значениями.

2. Модель общей циркуляции атмосферы ИВМ РАН и модель океана ИВМ РАН были реализованы на многопроцессорных вычислительных системах с распределенной и общей памятью, соответственно.

3. Для модели общей циркуляции атмосферы ИВМ РАН 2° х 2,5° (21 уровень) было получено ускорение 31 на 128 процессорах вычислительной системы МВС1000М и 15 на 36 процессорах SCI-кластера НИВЦ МГУ. Для модели океана ИВМ РАН 2° х 2,5° (33 уровня) было получено ускорение 3 на 4 процессорах Intel Itanium II, 1000 MHz. Выявлены плохо распараллеливаемые места в моделях.

4. Разработаны тестовые программы для измерения масштабируемости спектрального метода, применяемого в глобальных атмосферных моделях, и конечно-разностного метода, используемого в модели общей циркуляции атмосферы ИВМ РАН.

Основные результаты диссертации опубликованы в следующих печатных работах:

1. Gloukhov V. Parallel implementation of the INM atmospheric general circulation model on distributed memory multiprocessors. Lecture Notes in Computer Science, V. 2329, 2002, pp. 752-762.

2. Толстых М.А., Глухов В.Н. Реализация моделей атмосферы на параллельных компьютерах. Сибирская школа-семинар по параллельным вычислениям С 34 / Под ред. проф. А.В.Старченко. - Томск: Изд-во Том. ун-та, 2002. С. 82-93.

3. Tolstykh M.A., Gloukhov V.N., Implementation of global atmospheric models on parallel computers. Вычислительные технологии. Т. 7, 2002. С. 101-109.

Изд. лицензия ИД № 03991 от 12.02.2001 Компьютерный набор. Усл. печ. л. 2.0. Тираж 60 Институт вычислительной математики РАН 119991 ГСП-1, Москва, ул. Губкина, 8.

t. 1 5 9 О

РНБ Русский фонд

2004-4 26795

Оглавление автор диссертации — кандидата физико-математических наук Глухов, Валерий Николаевич

Список иллюстраций

Список таблиц

Введение

1 Постановка задачи

1.1 Формулировка уравнений гидротермодинамики атмосферы

1.2 Численные методы решения уравнений гидротермодинамики атмосферы

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

2 Реализация атмосферных динамических блоков на многопроцессорных кластерах

2.1 Тест Хельда-Суареза.

2.2 Коммуникационное ядро.

2.3 Параллельная реализация конечно-разностного динамического блока.

2.4 Параллельная реализация спектрального динамического блока

3 Реализация моделей общей циркуляции атмосферы и океана ИВМ РАН на параллельных вычислительных системах

3.1 Реализация модели общей циркуляции атмосферы ИВМ РАН на многопроцессорных ЭВМ с распределенной памятью

3.2 Реализация модели общей циркуляции океана ИВМ РАН на многопроцессорных ЭВМ с общей памятью.

Введение 2004 год, диссертация по информатике, вычислительной технике и управлению, Глухов, Валерий Николаевич

Модели общей циркуляции атмосферы Земли и Мирового океана, являясь на сегодняшний день основным инструментом для изучения изменения климата нашей планеты, происходящего под воздействием естественных и антропогенных факторов, представляют собой достаточно сложные, как с алгоритмической, так и с программной точки зрения системы, предъявляющие серьезные требования к аппаратным ресурсам современных вычислительных комплексов.

Фактически, каждый новый виток в развитии вычислительной техники давал "повод" для совершенствования моделей. На первых порах, это развитие происходило за счет замены электронных ламп транзисторами, затем, микросхемами, наконец, появились микропроцессоры, тактовая частота которых непрерывно возрастала, увеличивался также размер оперативной памяти ЭВМ и скорость доступа к ней.

Как результат, увеличивалось пространственное разрешение моделей, происходили качественные изменения в формулировках их основных уравнений, в параметризациях физических процессов. Так, используемое на заре компьютерной эры, уравнение переноса вихря было заменено полными уравнениями гидротермодинамики атмосферы, а в настоящее время все чаще применяются негидростатические модели [4]. Одновременно эволюционировали языки программирования, на которых были написаны модели.

Однако, как было отмечено в [1], основа роста производительности ЭВМ на протяжении последних десятилетий заключалась, прежде всего, в развитии их архитектуры, нежели элементной базы, в котором основную роль играла идея одновременной обработки данных - несколькими арифметическими устройствами, процессорами, узлами - то есть, концепция параллельных вычислений, воплощением которой стали векторные, векторно-конвейерные, массивно-параллельные, кластерные вычислительные системы. Последние сейчас доминируют на рынке суперкомпьютеров, из-за их сравнительно низкой стоимости по отношению к производительности.

Как правило, кластеры состоят из вычислительных узлов, соединенных высокоскоростной сетью (Myrinet, SCI, Fast Ethernet). Каждый узел имеет несколько (обычно, от 2 до 16) процессоров, адресующих общую память. Процессоры, принадлежащие различным узлам, способны обмениваться сообщениями через сеть. Построенная таким образом многоуров-невость аппаратного параллелизма выражается на программном уровне в применении парадигм (моделей) общей и разделенной памяти.

Первая модель программирования, в основе которой лежит предположение о равнозначности процессоров по отношению к общей памяти, реализуется стандартом ОрепМР [5], состоящего из набора директив и функций, "указывающих" компилятору фрагменты в программе, допускающие параллельную обработку. Руководствуясь ими, основная программа создает нити (threads), адресующие общую память, выполнение которых может осуществляться несколькими процессорами одновременно.

Модель общей памяти расчитана, главным образом, на многопроцессорные машины SMP архитектуры, ее существенным недостатком при использовании на кластерах является то, что количество процессоров, ограничивается всего лишь одним узлом. Однако, стоит отметить, что существуют технологии (ccNUMA), позволяющие приложениям работать с разделенной памятью как с общей.

Вторая модель базируется на предположении о том, что каждый процессор обладает своей собственной разделенной памятью, процессоры способны обмениваться информацией посредством передачи сообщений. Наиболее распространенным стандартом, поддерживающим эту модель, на сегодняшний день является стандарт MPI [6]. При использовании MPI количество параллельных процессов не меняется в течении всего времени выполнения программы, каждый процесс работает в своем адресном пространстве, основной способ взаимодействия между ними - явная передача сообщений, которая физически осуществляется через сеть в случае, если процессоры принадлежат разным узлам, и - посредством копирования данных в специальный буфер в общей памяти в случае, если процессоры принадлежат одному узлу.

Общепризнано, что распараллеливание программ с помощью MPI требует более существенных модификаций их последовательного кода и, как следствие, больших трудозатрат по сравнению с ОрепМР [19].

Обобщением этих двух моделей программирования является гибридное распараллеливание, использующее ОрепМР на нижнем уровне, внутри узлов, a MPI - для обменов данными между узлами.

Данная работа посвящена прикладным аспектам применения параллельных вычислений в задачах моделирования климата и численного прогноза погоды, основные принципы которого были сформулированы еще Ричардсоном в 1922 г, задолго до создания первых ЭВМ. Описанная им в [3] "фабрика прогноза" (forecast factory) должна была состоять из 64 тысяч вычислителей, производящих расчет погоды для всего Земного шара.

Представьте себе зал, похожий на театр, но с рядами и ложами, идущими по кругу и проходящими через то место, где обычно находится сцена. Стены этого зала разукрашены как карта земного шара. Потолок представляет из себя северные полярные области, Англия - там, где ложи верхнего яруса, тропики -где ложи нижнего яруса, Австралия - где бельэтаж, а Антарктида - где партер. Громадное количество вычислителей заняты работой: каждый расчитывает погоду в той части земного шара, где он сидит, отвечая за расчет одного уравнения или даже части уравнения. Работа каждого региона координируется чиновником более высокого ранга. Многочисленные светящиеся цифирки показывают мгновенные значения так, что соседние вычислители могут их читать. Каждая цифра светиться в три стороны, передавая свое значение на север и на юг. Из пола партера на половину высоты зала возвышается высокий столб, на конце которого - кабина, в которой находится человек, отвечающий за весь зал целиком. Он окружен несколькими помощниками и курьерами. Одна из его обязанностей - поддерживать постоянную скорость вычислений в различных частях земного шара. В этом отношении, он похож на дирижера оркестром, в котором инструментами являются логарифмические линейки и вычислительные машины, но вместо того, чтобы размахивать палочкой, он светит розовым лучом на те области, которые считают быстрее остальных, а синим - на отстающие области.1

В контексте сегодняшних многопроцессорных ЭВМ эти принципы известны как распределение вычислений между процессорами, обмены данными между ними, их равномерная загрузка. Все они имели применение в рабо

1 переведено с англ. автором те по созданию параллельной версии модели общей циркуляции атмосферы (ОЦА) ИВМ РАН.

Модель ОЦА ИВМ РАН является инструментом для изучения современного климата Земли, его внутренней изменчивости и изменений под воздействием антропогенных внешних воздействий [12]. Модель решает систему уравнений гидротермодинамики атмосферы в форме Громеко-Лэмба в гидростатическом приближении. Прогностическими величинами являются скорость ветра, температура, приземное давление, относительная влажность; независимые переменные - широта, долгота, вертикальная сг-координата. Дискретизация прогностических величин выполнена на "смещенной" С-сетке Аракавы. Интегрирование по времени осуществляется по полунеявной схеме. Модель включает в себя параметризации коротковолновой и длинноволновой радиации, пограничного слоя Земли, конвекции, крупномасштабной конденсации, растительности, почвы и снежного покрова. Программная реализация модели выполнена на языке Фортран 77.

Модель участвовала в международной программе сравнения атмосферных моделей AMIP [13, 14] и во многих других экспериментах [15, 16, 17, 18]. При этом большая часть расчетов проводилась либо на персональных компьютерах, либо на рабочих станциях. Типичные разрешения пространственной сетки модели 4° х 5°, 2° х 2.5°, 1° х 1.25° по широте и долготе, соответственно, и 21 уровень - по вертикали. Данная работа посвящена результатам адаптации модели к параллельной вычислительной системе с распределенной памятью.

Первая попытка такой адаптации была предпринята автором совместно с Уртминцевым А.Г. в 1995-96 гг. Распараллеливание проводилось на многопроцессорном комплексе МВС100, установленном в Институте прикладной математики им. М.В. Келдыша. Комплекс состоял из модулей, оснащенных процессорами i860XP с тактовой частотой 40 MHz, используемыми для вычислений, и транспьютерами Т805 предназначенными для обмена данными. Пропускная способность каналов MBG100 составляла примерно 1 Мб в секунду, время латентности сообщений - 1 мс, а пиковая производительность всей системы - 100 Gflops. Тогда модель ОЦА имела пространственное разрешение 4° х 5° и 7 вертикальных уровней. Данные распределялись по процессорам равномерными полосами по широте, а для решения уравнения Гельмгольца, возникающего при применении полунеявной схемы для интегрирования динамических уравнений модели, - конвейер2. В результате, на МВС100 было достигнуто ускорение 4 на 9 процессорах и дальнейшее увеличение количества процессоров не давало дополнительного ускорения.

Полученный параллельный код модели, к сожалению, не был востребован практически, отчасти, по причине не высокого ускорения, и не модифицировался, в то время, как последовательный вариант претерпел существенные изменения, в основном, в физических процедурах. Кроме того, пространственное разрешение модели было увеличено до 2° х 2.5° по горизонтали и 21 уровня по вертикали. Новая последовательная версия модели в 2001 г. была опять адаптирована к многопроцессорной машине, но на этот раз, - к кластерной системе МВСЮООМ, пиковая производительность которой составляет 1 TFlops.

Суперкомпьютер МВСЮООМ состоит из 6 базовых блоков, каждый из которых включает в себя 64 двухпроцессорных модуля. Модули собраны на базе процессоров Alpha21264A, 667 MHz и объединены высокоскоростной сетью Myrinet (2 Gbit/s), используемой только для межпроцессорных коммуникаций во время параллельных вычислений.

Также параллельная версия модели была адаптирована к SCI-кластеру НИВЦ МГУ, собранному на базе процессоров Pentium III, 500-550 MHz и высокоскоростной сетевой технологии SCI.

Для распараллеливания модели было применено более общее двумерное распределение данных как по долготе так и по широте. Для Фурье фильтрации полей вблизи полюсов данные транспонировались, таким образом, что каждый процессор обладал частью широт, частью вертикальных уровней и всеми долготами. После завершения фильтрации восстанавливалось первоначальное распределение данных по широте и долготе. Для решения уравнения Гельмгольца использовалось двойное транспонирование данных - сначала, собирались все долготы, а затем все широты.

В 2001 г. параллельная версии атмосферной модели с разрешением 2° х 2.5° и 21 вертикальным уровнем показала ускорение 32 на 64 процессорах

2Идея построения конвейера была предложена А.В. Забродиным в личной беседе.

МВСЮООМ и 14 на 32 процессорах SCI-кластера НИВЦ МГУ.

Аналогичные работы, направленные на построение параллельных климатических моделей проводились зарубежом.

Так, программа СНАММР, предпринятая Отделом энергетики Соединенных Штатов (US Department of Energy) в 1990 г. и расчитанная на 10 лет, преследовала в качестве основной цели создание нового поколения моделей климата, способных эффективно использовать высокопроизводительные суперкомпьютеры. В первоначальном плане [7] приводилась цифра 10 Tflops - такой должна была стать производительность совместной климатической модели к 2000 г. В достижении этой цели основную ставку планировалось сделать на массивно:параллельные системы, состоящие из большого числа (100-1000) относительно недорогих скалярных процессоров.

Наряду с вычислительными системами эволюционировали и применяемые в моделях алгоритмы. До недавнего времени основными методами численного интегрирования полных атмосферных уравнений были конечно-разностный, спектральный и полулагранжев методы [21, 22]. Также представляется весьма перспективным метод спектральных элементов [20].

Построенная NCAR, модель атмосферы ССМ2 [11], использующая спектральный метод для дискретизации основных прогностических уравнений и полулагранжеву схему переноса влаги, при горизонтальном разрешении Т170 с 18 вертикальными уровнями достигла производительности 3.18 Gflops на 1024 процессорах Paragon, и 2.27 Gflops - на 128 процессорах IBM SP2, что сравнимо с 5.3 Gflops, полученными на Cray С90/16.

Модель среднесрочного прогноза погоды MRF, созданная в NCEP, также основана на спектральном методе. Она используется индийским Национальным центром среднесрочного прогноза погоды (NCMRWF) в качестве оперативной с 1994 г. Первоначально, модель была распараллелена на вычислительной системе PARAM10000 вдоль широты [23]. Однако, двумерное распараллеливание по широте и долготе позволило достичь в два раза большего ускорения [24].

Применение парадигмы распределенной памяти в работе по адаптации глобальных атмосферных моделей к многопроцессорным кластерам основывалась на методе декомпозиции расчетной области по независимым пространственным переменным. При этом устанавливалось взаимнооднозначное соответствие между процессорами и подобластями так, что каждый процессор обрабатывал соответствующую ему подобласть. Как показала практика, большая часть модификаций последовательного кода моделей заключается в изменении границ циклов по распределенным размерностям и организации межпроцессорных обменов данными; при чем, если изменение параметров циклов легко осуществимо в текстовом редакторе командой "Найти и заменить.", программирование обменов - гораздо более трудоемкая задача, решение которой определяется структурой данных в данном конкретном приложении.

Для решения этой задачи автором была разработана библиотека коммуникационных процедур ParLib, применение которой не ограничивается глобальными атмосферными моделями, но которая применима для большого набора задач математической физики, использующих прямоугольные сетки. В таких приложениях, как правило, данные хранятся в многомерных массивах, размерности которых соответствуют пространственным размерностям или различным физическим переменным. Коммуникационные процедуры, входящие в библиотеку, построены на основе универсального описания массивов данных и их распределения по процессорам. Библиотека реализует такие операции как обмены граничными значениями и транспонирование данных.

Цель данной работы заключается в разработке технологии адаптации климатических моделей к многопроцессорным вычислительным комплексам параллельной архитектуры, которая складывается из изучения параллелизма алгоритмов моделей, выбора методов их реализации на параллельных ЭВМ, выявления трудно распараллеливаемых блоков, их оптимизации, отладки и верификации параллельных версий моделей. Окончательным итогом адаптации является значительное уменьшении времени счета моделей за счет полученного ускорения.

Научная новизна работы состоит в применении метода двумерной декомпозиции расчетной области по широте и долготе для распараллеливания модели ОЦА ИВМ РАН. Было показано, его преимущество по сравнению с одномерным разбиением. Проведено сравнение ускорения, полученного при применении явной и полунеявной схем для решения уравнений гидротермодинамики атмосферы конечно-разностным методом. Для уравнения Гельмгольца, возникающего в полунеявной схеме, испытаны итерационные методы. Ускорение, полученное для конечно-разностного метода сопоставлено с ускорением для спектрального метода. Модель океана ИВМ РАН реализована на параллельных вычислительных системах с общей памятью.

Практическая ценность работы состоит в реализации модели общей циркуляции атмосферы ИВМ РАН на многопроцессорной вычислительной системе с распределенной памятью, а модели общей циркуляции океана ИВМ РАН на многопроцессорной системе с общей памятью. В процессе работы, было проведено сопоставление различных методов и создана библиотека коммуникационных процедур.

В первой главе приводятся уравнения, описывающие крупномасштабную динамику атмосферы и океана, методы их численного решения, кроме того описываются целевые архитектуры ЭВМ. В качестве методов решения атмосферных уравнений приводится метод конечных разностей и спектральный метод.

Во второй главе рассматриваются различные подходы к распараллеливанию динамических блоков атмосферных моделей, проводится их сравнение. Кроме того глава содержит в себе описание библиотеки коммуникационных процедур ParLib.

Третья глава содержит результаты адаптации моделей общей циркуляции атмосферы и океана ИВМ РАН к многопроцессорным ЭВМ с распределенной и общей памятью, соответственно.

В заключении кратко сформулированы основные результаты, полученные в диссертационной работе.

Результаты диссертации докладывались на научных семинарах ИВМ РАН, НИВЦ МГУ, а также на конференции The International Conference on Computational Science (ICCS 2002), проходившей в апреле 2002 г. в Амстердаме (Нидерланды).

Автор выражает глубокую признательность своему научному руководителю академику Воеводину В.В., члену-корреспонденту РАН Лыкосо-ву В.Н., д.ф-м.н Володину Е.М. к.ф-м.н Фролову А.В. за помощь при работе над диссертацией.

Заключение диссертация на тему "Реализация моделей климата на многопроцессорных вычислительных системах кластерного типа"

ОСНОВНЫЕ РЕЗУЛЬТАТЫ

1. Разработана тахнология адаптации моделей климата к многопроцес-соным вычислительным системам.

2. Модель общей циркуляции атмосферы ИВМ РАН была реализована на вычислительных системах с распределенной памятью с использованием MPI. Для ее распараллеливания был применен метод двумерной декомпозиции расчетной области по широте и долготе. Для решения дискретного уравнения Гельмгольца, возникающего при применении полунеявной схемы интегрирования по времени, прямым методом, включающим преобразование Фурье вдоль долготы и трех-диагональные прогонки вдоль широты, данные транспонировались два раза: сначала, в плоскости высота-дол гота, затем, - в плоскости широта-долгота. При вычислении производных методом конечных разностей и интерполяции значений горизонтальных компонент скорости в центральные точки ячеек смещенной С-сетки Аракавы процессы обменивались значениями полей в граничных точках подобластей.

Кроме того, была изменена численная схема, применявшаяся в процедурах вычисления вертикальной диффузии и переноса гравитационных волн. Сделанные модификации не повлекли за собой существенного ухудшения адекватности воспроизведения климата моделью.

Общее ускорение вычислительных процедур модели при разрешении пространственной сетки 2° х 2.5° по горизонтали и 21 уровень по вертикали на 128 процессорах вычислительной системы МВСЮООМ составило 31, а на 36 процессорах SCI-кластера НИВЦ МГУ - 15. Время расчета климата на один месяц модельного времени на вычислительной системе МВСЮООМ уменьшилось с 5 часов 14 минут на одном процессоре до 15 минут 20 секунд на 64 процессорах. Плохо распараллеливается процедура, осуществляющая фильтрацию полей вблизи полюсов.

3. Была разработана библиотека коммуникационных процедур для решения задач математической физики на регулярных сетках, включающая в себя процедуры транспонирования данных и обмена граничными значениями. Коммуникации могут осуществляться в асинхронном режиме, что позволяет проводить их одновременно с вычислениями.

4. Создан набор тестовых программ для измерения производительности многопроцессорных систем с распределенной памятью, в основе которого лежат динамические блоки глобальных атмосферных моделей. Набор включает в себя метод конечных разностей на смещенной С-сетке Аракавы и спектральный метод. Конечно-разностный тест может использоваться для сравнения эффективности явной и полунеявную схемы, а также прямого и итерационных методов решения дискретного уравнения Гельмгольца.

Оба теста используют двумерное распределение данных по процессорам. Метод распараллеливания конечно-разностного теста аналогичен методу, примененному в модели общей циркуляции атмосферы, в то время как спектральный тест использует транспонирование данных в плоскости высота-долгота для вычисления быстрого преобразования Фурье и глобальное суммирование для вычисления обратного преобразования Лежандра.

5. Модель океана ИВМ РАН была реализована на многопроцессорных вычислительных системах с общей памятью с применением ОрепМР. Ее ускорение при разрешении пространственной сетки 2° х 2.5° по горизонтали и 33 уровнях по вертикали на 4 процессорах вычислительной системы Initel Itanium II составило 2.6.

Было показано, что результаты расчетов параллельной версии модели совпадают с результатами расчетов последовательной с высокой степенью точности, а разница объяснима влиянием ошибок округления и переходом к красно-черному разбиению в процедурах решения уравнение для функции тока и переноса диффузии температуры и солености.

Заключение

В качестве основных результатов, выносимых на защиту диссертации "Реализация моделей климата на многопроцессорных вычислительных системах кластерного типа", предлагаются следующие:

Библиография Глухов, Валерий Николаевич, диссертация по теме Математическое моделирование, численные методы и комплексы программ

1. Воеводин В.В., Воеводин Вл.В. Параллельные вычисления.// СПб.: БХВ-Петербург, 2002.

2. Arakawa A., Lamb V.R. Computational design of the basic dynamical processes of the UCLA general circulation model// Methods in Computational Physycs, J. Chang edit., Academic Press 1977,17, pp 173-265

3. Richardson L.F. Weather prediction by numerical process// Cambridge University Press, 1922.

4. Аргучинцев В.К. Негидростатическая модель мезо- и микроклимата// Оптика атмосферы и океана, том 12, 1999, № 5, стр. 466-469.

5. Chandra R., Kohr D., Menon R., Dagum L., Maydan D. McDonald J. Parallel programming in OpenMP// Morgan Kaufmann, 2000.

6. Snir M., Otto S., Huss-Lederman S., Walker D., Dongarra J.: MPI: The Complete Reference// The MIT Press, Cambridge, MA, 1998

7. Program Plan for the CHAMMP Climate Modeling Program// US Department of Energy, 1990.

8. Foster I.T., Worley P.H. Parallel algorithms for the spectral transform method// Technical Report ORNL/TM-12507, Oak Ridge National Laboratoty, Oak Ridge, TN, April 1994.

9. Acker T.L., Buja L.E., Rosinski J.M., Truesdale J.E. User's guide to NCAR CCM3// NCAR Technical Note TN-421+IA, National Center for Atmospheric Research, Boulder, CO, May 1996.

10. Parallel ocean program (POP) user guide// Los Alamos National Laboratory, LACC 99-18, Feb. 2002.

11. Drake J., Foster I., Michalakes J., Toonen В., Wodley P. Design and performance of a scalable parallel community climate model// Parallel Computing 21, 1995, pp 1571-1591.

12. Алексеев В.А., Володин E.M., Галин В.Я., Дымников В.П., Лыко-сов В.Н. Моделирование современного климата с помощью атмосферной модели ИВМ РАН// Препринт ИВМ № 2086-В98, 1998, 180 с.

13. Galin V.Y. AMIP run by the DNM GCM. Abstracts of the First International AMIP Scientific Conference 1995, Monterey, California, p. 36.

14. Володин E.M., Галин В.Я. Чувствительность летнего индийского му-сона к Эль-Ниньо 1979-1998 гг: по данным модели общей циркуляции атмосферы ИВМ РАН. Метерология и гидрология. №. 10, 2000, стр. 1016.

15. Глазунов А.В., Дианский Н.А., Дымников В.П. Локальный и глобальный отклики атмосферной циркуляции на аномалии поверхностной температуры в средних широтах// Изв. РАН. ФаиО. 2001. Т. 37, 3.

16. Володин Е.М. Совместная численная модель общей циркуляции атмосферы и тропиков Тихого океана// Изв. РАН. ФаиО. 2001, № 6, стр. 1-16.

17. Lykossov V.N. Numerical modelling of interaction between the atmospheric boundary layer and the Antarctic ice shelf// Rus. J. of Num. Anal, and Math. Modelling. 2001. V. 16, p. 315-330.

18. Pan Y. Teaching parallel programming using both high-level and low-level languages// Lecture notes in cmoputer science, V. 2331, pp. 888-897.

19. Loft R.D., Thomas S.J., Dennis J.M. Terascale spectral element dynamical core for atmospheric general circulation models. SC2001, November 2001, Denver (c) 2001 ACM 1-58113-293-X/01/0011.

20. Numerical methods Used in Atmospheric Models. GARP Publication Series, № 17, September, 1979. World Meteorological Organization International Council of Scientific Unions.

21. Stanifotrh A., Cote J. Semi-Lagrangian integration schemes for atmospheric models A review. Mon. Weather Rev. 119, 1991, pp. 2206-2223.

22. Held I.M., Suarez M.J. A proposal for the intercomparison of the dynamical cores of atmospheric general circulation models. Bull. Amer. Met. Soc., 75, pp. 1825-1830.

23. Robert N.A., The integration of a low-order spectral form of the primitive meteorological equations. J. Meteor Soc. Japan, 44, pp. 237-245, 1966.

24. Бейтмен Г., Эрдейи А. Высшие трансцендентные функции в трех томах, СМБ, «Наука»: т.1. Гипергеометрическая функция и ее обобщения. Функции Лежандра.

25. Марчук Г.И., Агошков В.И. Введение в проекционно-сеточные методы. М.:Наука, 1981.

26. Krylov V.I. Approximate calculation of integrals, ACM Monograph Series, The MacMillan Company, New York, NY, 1962.

27. Kunha R., Hopkins T. PIM 2.0 the parallel iterative methods package for systems of linear equations user's guide (Fortran 77 version). Technicalreport 1-96, University of Kent, Computing Laboratory, University of Kent, Canterbury, UK, January, 1996.

28. Алексеев В.В., Залесный В.Б. Численная модель крупномасштабной динамики океана. Вычислительные процессы и системы. Под ред. Г.И. Марчука. Вып. 10 МгНаука, 1984. стр 232-252.

29. Багно А.В. Численное исследование климатической термохалинной циркуляции Северной Атлантики. Канд. диссер. на соиск. уч. степ, ф.-м.н 1993. Москва, ИВМ, 110 с.

30. Дианский Н.А., Багно А.В. Модель крупномасштабной динамики океана РОМ1. Руководство пользователя. Препринт ИВМ РАН, 1999.

31. Janakiraman S., Ratnam J.V., Kaginalkar A. Study of machine roundoff response on weather forecasting simulations using high performance computing systems. HPC Asia, Beijing, 2000.

32. Rusakov A.S., Diansky N.A. Parallel ocean general circulation model for distributed memory computer systems. Parallel CFD 2003. Book of abstracts. May 13-15, Moscow, Russia.

33. Diansky N.A.,Volodin E.M., Reproducing the present-day climate using a coupled atmosphere-ocean general circulation model. Izvestia, Atmospheric and Oceanic Physics, Vol. 38, No. 6, 2002.

34. Дианский H.A., Багно A.B., Залесный В.Б. Сигма-модель глобальной циркуляции океана и ее чувствительность к вариациям напряжения трения ветра // Изв. АН. Физика атмосферы и океана. 2002. Т. 38, № 4. С. 537-556.

35. Ортега Дж. Введение в параллельные и векторные метды решения линейных систем. Пер. с англ. М.: Мир, 1991.