Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

Высокопроизводительный программный комплекс моделирования экстремальных гидрометеорологических явлений Ковальчук Сергей Валерьевич

Высокопроизводительный программный комплекс моделирования экстремальных гидрометеорологических явлений
<
Высокопроизводительный программный комплекс моделирования экстремальных гидрометеорологических явлений Высокопроизводительный программный комплекс моделирования экстремальных гидрометеорологических явлений Высокопроизводительный программный комплекс моделирования экстремальных гидрометеорологических явлений Высокопроизводительный программный комплекс моделирования экстремальных гидрометеорологических явлений Высокопроизводительный программный комплекс моделирования экстремальных гидрометеорологических явлений
>

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

Автореферат - бесплатно, доставка 10 минут, круглосуточно, без выходных и праздников

Ковальчук Сергей Валерьевич. Высокопроизводительный программный комплекс моделирования экстремальных гидрометеорологических явлений : диссертация ... кандидата технических наук : 05.13.18 / Ковальчук Сергей Валерьевич; [Место защиты: С.-Петерб. гос. ун-т информац. технологий, механики и оптики].- Санкт-Петербург, 2008.- 158 с.: ил. РГБ ОД, 61 09-5/561

Содержание к диссертации

Введение

Глава 1. Анализ и постановка задачи 8

1.1. Современная концепция получения информации об экстремальных гидрометеорологических явлениях 8

1.1.1. Эволюция подходов к расчету гидрометеорологических экстремумов .8

1.1.2. Современная концепция получения информации об экстремальных гидрометеорологических явлениях на базе модельного подхода 11

1.2. Основные расчетные модули: математические модели, численные методы и параллельные алгоритмы 15

1.2.1. Расчет скорости ветра по полям давления 16

1.2.2. Гидродинамическое моделирование полей течений и уровня моря 18

1.2.3. Гидродинамическое моделирование полей морского волнения 20

1.2.4. Параметризация климатических спектров морского волнения 23

1.2.5. Статистическая обработка расчетных данных и моделирование экстремальных гидрометеорологических явлений 25

1.2.6. Расчет экстремальных характеристик гидрометеорологических явлений и рисков их воздействий на морские объекты и сооружения 27

1.3. Современные подходы к разработке программного обеспечения 28

1.4. Выводы к главе 1 30

Глава 2. Построение архитектуры высокопроизводительного программного комплекса 32

2.1. Общая концепция построения архитектуры высокопроизводительного программного комплекса моделирования экстремальных гидрометеорологических явлений 32

2.1.1. Специфические требования к архитектуре высокопроизводительного программного комплекса 32

2.1.2. Концепция построения архитектуры программного комплекса на основе

интеллектуальной интеграции компонентов 33

2.1.3. Реализация концептуальной архитектуры на основе сервисно ориентированного подхода 37

2.1.4. Оценка концептуальной архитектуры 40

2.2. Общая структура программного комплекса 40

2.2.1. Общая классификация и структура сервисов 42

2.2.2. Организация вычислительной подсистемы 45

2.3. Архитектура базовых сервисов 48

2.З.1. Сервис управления вычислительным модулем 49

2.3.2. Сервис декомпозиции 51

2.3.3. Сервис удаленного запуска 55

2.3.4. Сервис управления вычислениями

2.4. Организация работы сданными 60

2.5. Выводы к главе 2 62

Глава 3. Организация интеллектуального управления процессом параллельных вычислений в программном комплексе 64

3.1. Моделирование производительности вычислительных модулей 64

3.1.1. Иерархическая структура параллельных вычислений 64

3.1.2. Принципиальная модель параллельной производительности приложений для систем с общей памятью 67

3.1.3. Система параметрических моделей параллельной производительности для алгоритмов гидродинамического и статистического моделирования полей ветра, волнения, течений и уровня моря 73

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

3.2. Общая структура интеллектуальной подсистемы 86

3.3. Этапы эффективного управления параллельными вычислениями в

многопроцессорной среде 88

3.3.1. Априорный анализ параллельной производительности вычислительных модулей 89 3.3.2. Управление параллельной производительностью в ходе функционирования программного комплекса 91

3.4. Приобретение знаний о производительности вычислительных модулей 93

3.4.1. Данные и знания, необходимые для управления параллельными вычислительными процессами 93

3.4.2. Способы представления знаний о производительности вычислительных модулей 96

3.4.3. Приобретение экспертных знаний 100

3.4.4. Уточнение экспертных знаний путем идентификации моделей по результатам профилирования вычислительного модуля 104

3.4.5. Приобретение дополнительных знаний путем имитационного моделирования 106

3.5. Организация логического вывода 109

3.6. Выводы к главе 3 112

Глава 4. Тестирование программного комплекса моделирования экстремальных гидрометеорологических явлений 113

4.1. Исследования масштабируемости программного комплекса 113

4.1.1. Тестирование масштабируемости вычислительных модулей 113

4.1.2. Анализ логики интеллектуальной подсистемы управления масштабируемостью 122

4.2. Экспериментальные расчеты экстремальных гидрометеорологических характеристик и их воздействий на морские объекты и сооружения 124

4.2.1. Подготовка массивов исторических данных и их сравнение с экспериментальными расчетами 125

4.2.2. Проведение экспериментальных расчетов экстремальных характеристик для Северной части Каспийского моря 132

4.2.3. Проведение экспериментальных расчетов рисков воздействий на морские объекты и сооружения 139

4.3. Электронный атлас экстремальных гидрометеорологических явлений Каспийского моря 145

4.3.1. Общая структура атласа 145

4.3.2. Технологии реализации атласа 148

4.3.3. Справочный массив 149

4.3.4. Выводы к главе 4 150

Заключение 151

Список литературы

Введение к работе

Актуальность темы. Освоение пространства Мирового океана (прежде всего, шсльфовой зоны) требует информации о внешних нагрузках на морские объекты и сооружения, обусловленных совместным воздействием ветра, волнения и морских течений при определенном уровне моря. Их характеристики подразделяются на оперативные (определяющие режимы эксплуатации объектов и сооружений) и экстремальные (характеризующие режим выживания). В инженерной практике в качестве экстремальных обычно рассматриваются расчетные характеристики явлений, возможных 1 раз в Т лет, где Т соответствует классу сооружения1. В отличие от оперативных характеристик, традиционно получаемых посредством статистического анализа исторических массивов данных, экстремальные характеристики обычно не обеспечены данными наблюдений, и, как следствие, должны определяться с использованием компьютерного моделирования2. Полномасштабное решение этой задачи в настоящее время стало возможным в связи с созданием баз данных глобального реанализа атмосферных характеристик и развитием высокоточных гидродинамических моделей динамики атмосферы и океана. Однако ее практическая реализация является крайне ресурсоемкой и требует применения суперкомпьютеров терафлопной производительности и соответствующего математического обеспечения. В данной области основные результаты заложены работами В.В.Воеводина, Б.Н. Чстверушкина, J. Dongarra, I. Foster и др., и развиты в исследованиях Вл.В. Воеводина, С.М.Абрамова, В.П. Гсргеля, М.В.Якобовского, Б.Я. Штейнберга и др., посвященных методам решения больших задач и инструментарию их реализации на высокопроизводительных вычислительных системах.

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

' Обычно Т находится в диапазоне от 1 до 100 лет; однако, для некоторых объектов (например, защитные сооружения Санкт-Петербурга от наводнений) Т= 10000 лет. 2 Концепция определения экстремальных гидрометеорологических характеристик принята в рамках ФЦП «Мировой океан», раздел «Создание единой системы информации об обстановке в Мировом океане» (ЕСИМО)

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

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

Целью работы является решение задачи, имеющей существенное значение для проектирования и разработки высокопроизводительного прикладного программного обеспечения, а именно — поиск и обоснование путей разработки вычислительно эффективных программных комплексов компьютерного моделирования сложных систем для современных суперкомпьютеров терафлопной производительности на примере проблемы расчета экстремальных гидрометеорологических явлений, возможных 1 раз в Т лет.

Задачи исследования. Достижение поставленной цели подразумевает решение следующих задач:

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

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

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

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

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

Научную новизну результатов работы определяют:

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

3 Под математическим обеспечением в данной работе погашается совокупность математической модели, метода ее численной реализации, вычислительного алгоритма (и его представления в форме программного кода), рекомендаций по применению и демонстрационных приложений, наглядно иллюстрирующих его работоспособность и практическую значимость. SOA- Service Oriented Architecture, сервисно-ориентированная архитектура.

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

Новый вид информации об экстремальных гидрометеорологических явлени
ях в форме сочетаний скорости ветра, волнения, течений и уровня моря со
вместной повторяемостью 1 раз в Т лет, для всей акватории Каспийского мо
ря5, полученный посредством компьютерного моделирования на основе
предложенного подхода.

Практическую ценность работы составляют:

Набор сервисных элементов (как ядро программного комплекса ME2SIM), применимых при создании высокопроизводительных программных комплексов моделирования сложных систем.

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

Электронный атлас экстремальных гидрометеорологических явлений Каспийского моря.

На защиту выносятся следующие положения:

Применение сервисно-ориентированной архитектуры совместно с интеллектуальным механизмом управления производительностью позволяет повысить эффективность отображения высокопроизводительных приложений на сложную иерархическую параллельную архитектуру.

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

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

Внедрение результатов работы. Результаты работы нашли свое применение при выполнении проектов направления 1.4 «Генерация знаний» ФЦП «Исследования и разработки по приоритетным направлениям развития научно-технологического комплекса России на 2007-2012 годы»: «Высокопроизводительный программный комплекс моделирования и прогноза экстремальных гидрометеорологических явлений и расчета воздействий на морские объекты и сооружения» (НИР 2007-4-1.4-00-06-108), «Разработка инструментальной оболочки проектирования высокопроизводительных приложений для Грид-архитектур в целях создания прикладных сервисов компьютерного моделирова-

5 Аналогов таких данных в настоящее время в мире не существует

ния и обработки данных» (НИР 2007-4-1.4-20-01-025), «Инструментальная технологическая среда для создания массовых мобильных он-лайн сервисов нового поколения» (НИР 2008-4-1.4-18-01-022). Проводимые исследования поддержаны индивидуальными грантами комитета по науке и высшей школе Правительства Санкт-Петербурга в 2007 и 2008 гг. Разработанный высокопроизводительный программный комплекс опробован и внедрен в деятельность ГУ «Гидрометцентр России». В процессе работы получено два свидетельства о государственной регистрации программ для ЭВМ: «Ядро программного комплекса имитационного моделирования экстремальных гидрометеорологических явлений «ME2SIM» (свидетельство №2008614624), «Программная система оценивания климатических спектров морского волнения «ME2SPECTRA» (свидетельство №2008614609).

Апробация работы. Изложенные в диссертации результаты обсуждались на 10 международных и российских научных конференциях, семинарах и совещаниях, включая ежегодные международные научно-практические семинары «Высокопроизводительные параллельные вычисления на кластерных системах» (2005 г., Нижний Новгород; 2008 г., Казань), ежегодные Всероссийские научные конференции «Научный сервис в сети Интернет» (2007 и 2008 гг., Новороссийск), ежегодную международную научную конференцию «Параллельные вычислительные технологии» (2008 г., Санкт-Петербург), XV Всероссийскую научно-методическую конференцию «Телематика 2008», IV и V межвузовские научные конференции молодых ученых (2006 и 2007 гг., Санкт-Петербург), совещание по международному европейскому проекту ECO-NET «Meeting on ECO-NET program No 12599PJ on Wave and Current Interaction in Coastal Environment» (2007 г., Брест, Франция), международная конференция и выставка по освоению ресурсов нефти и газа Российской Арктики и континентального шельфа СНГ «RAO/CIS Offshore» (2008 г., Санкт-Петербург), конференцию-конкурс «Технологии Microsoft в теории и практике программирования» (2008 г., Нижний Новгород).

Публикации. По теме диссертации опубликовано 17 печатных работ (из них 6 — в изданиях из перечня ведущих рецензируемых научных журналов и изданий ВАК РФ).

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

Структура и объем работы. Диссертация состоит из введения, четырех глав, заключения, списка литературы (57 наименований) и 1 приложения. Содержит 158 с. текста (из них 156 — основного текста и 2 — приложений), включая 63 рис. и 11 табл.

Основные расчетные модули: математические модели, численные методы и параллельные алгоритмы

Для каждого квадранта можно построить волновую схему параллельной прогонки узлов пространственной сетки. В процессе работы зависимость между узлами сетки учитывается естественным образом при прогонке в положительном направлении вдоль оси X (на примере направления 1) и программным способом при проверке зависимостей вдоль оси Y (рис. 1.3 б). Таким образом, рассмотренный подход позволяет осуществить распределение точек между потоками вычислений и добиться достаточно высокой (70-90%) эффективности распараллеливания на системах с общей памятью [13].

В качестве альтернативы волновым схемам, приведенным на рис. 1.3, используется естественное, или физическое распараллеливание, которое осуществляется по времени (или по входным данным - полям скорости ветра, уровня, течений и пр.). Такой подход представляет наибольший интерес для систем с разделенной памятью. При этом в силу большой инерционности процесса основную проблему представляет необходимость разгона гидродинамической модели, что требует передачи дополнительных данных, являющихся, по сути, перекрытиями между последовательными интервалами времени, на которых осуществляется моделирование волнения. Априорные знания о специфике ветрового волнения и результаты численных экспериментов показывают, что длина этих интервалов в среднем составляет 5-7 суток, что (по сравнению с климатическими масштабами) является весьма небольшой величиной. Это обеспечивает эффективность распараллеливания по времени до 95-98% (в зависимости от длительности расчета).

Следует отметить, что для определения оптимального способа распараллеливания (или даже их комбинации) с учетом особенностей конкретной вычислительной архитектуры, необходимо построение и анализ количественных моделей производительности с привлечением знаний экспертов-разработчиков вычислительных модулей (см. раздел 3.4.).

В данном разделе рассмотрен алгоритм параметрической аппроксимации расчетных полей спектров морского волнения. Согласно уравнению (1.9), в каждой точке поля (х,у,І) задана функция S(f,6) (в виде табличной функции на сетке из 25 частот / и 24 направлений в ). Целью параметрической аппроксимации является снижение мерности рассматриваемых полей - сведение S{f,6,x,y,t) к набору параметров Б.(х,у,() существенно меньшей мерности, чем исходные данные, что упрощает дальнейший статистический анализ и моделирование.

При анализе частотно-направленного спектра S(f,0) традиционно выделяют компоненты, описывающие отдельные пики спектральной функции. Каждый из пиков в отдельности описывает особое состояние морской поверхности (ветровое волнение, собственная зыбь, зыбь от другого шторма и пр.). Для описания каждого из таких пиков используется функция, определяемая рядом параметров, характеризующих форму пика. Данная функция представляет собой произведение двух компонентов, описывающих распределение энергии в спектре по частоте и направлению: S(f,d) = Sr(f)Q(e). (1.12) В соответствии с рекомендациями [14] для аппроксимации этих компонентов используются следующие соотношения: Sr(f,m0 fP,n) = m0 — J Р ( rV" exp ґ , ч/ ,ул и-1 \J р J (1.13) Q(6,0. ,s) = Cscos2\e-9p). (1.14) При этом следует учитывать, что ряд параметров в (1.13, 1.14), выполняют норма-лизующую функцию. Так, параметр Cs определяется из условия J Q{e,6p,s)d9 = 1, а параметр тй фиксируется следующим равенством \ Sr(f,fp,n)df = т0. Для описания полного спектра смешанного волнения используется сумма спектров волновых систем (нелинейное взаимодействие между ветровым волнением и зыбью не учитывается): S(fte) = fiS,(fje ,). (1.15) /=0 В итоге, вид результирующей функции, описывающей спектр, определяется набором векторов параметров Н, = (т ,/j;0,ep\nt,s,) -энергии каждой из волновых систем, частоты пика спектра, направления, соответствующего пику спектра, а также параметров формы. Задача аппроксимации спектра морского волнения (1.15), таким образом, сводится к определению указанных параметров.

Для определения параметров S посредством метода случайного поиска решается задача локальной оптимизации.

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

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

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

Статистическая обработка расчетной информационной базы гидрометеорологических характеристик выполняется средствами многомерного статистического анализа (МСА) пространственно-временных полей. Аппарат МСА предназначен для решения трех задач: снижения мерности, выявления неоднородности и установления зависимости данных. Для решения первой и второй задач использован общий подход на основе преобразования выборочных данных путем их проецирования на гиперповерхности, определяемые спецификой задачи. Он не только обобщает процедуры МСА, связанные с использованием канонических базисов (анализ главных компонент, канонический корреляционный анализ, канонический дискриминантный анализ), на модель нескалярного пространственно-временного поля, но и упрощает решение задачи установления зависимости. Для описания совокупной изменчивости системы гидрометеорологических полей под влиянием случайных управляющих факторов применен формализм линейных динамических систем, который позволяет с минимальной модификацией перенести технологии классического корреляционного, регрессионного и дисперсионного анализа на модель системы нескалярных пространственно-временных полей (скорости ветра, ветрового волнения, уровня и течений) [16].

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

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

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

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

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

Декомпозиция рядов. В случае декомпозиции данных по времени данная операция аналогична декомпозиции по времени массивов полей. В случае, когда обрабатываемые величины содержатся в отдельных файлах, а временные ряды описывают результат моделирования какой-либо величины в различных точках расчетной сетки, возможен вариант распараллеливания, когда файлы последовательно отправляются на обработку удаленным узлам, а сервис контроля удаленного запуска обеспечивает балансировку вычислительной нагрузки. По следний вариант распараллеливания применяется к моделям обработки спектров и статистики. Процесс декомпозиции массивов полей и временных рядов весьма схож для всех используемых вычислительных моделей. Для унификации процесса декомпозиции был разработан класс, позволяющий гибко разделять данные между заданным числом вычислительных узлов с учетом возможного перекрытия в данных и спецификой формата записи для конкретных моделей. Для выполнения декомпозиции отдельного файла требуется следующий набор данных: имя файла, число вычислительных узлов, число строк в заголовке файла (служебная информация), число строк в заголовке поля, число строк в поле, число полей в файле, перекрытие (измеряется в полях). Если перекрытие задать нулевым, то сервис разобьет все множество полей на непересекающиеся подмножества. Декомпозиция производится при следующих допущениях: число строк в заголовке поля и число строк в поле являются постоянными величинами, перекрытие должно быть меньше числа полей, получаемых при разделении общего числа полей на число вычислительных узлов, заголовки полей имеют единый формат записи. В общем случае задача определения и передачи в класс корректных параметров декомпозиции ложится на пользователя. Единственный параметр, который точно не требуется передавать пользователю - число полей в файле, так как это значение однозначно вычисляется через число строк. Для уменьшения вероятности передачи некорректных данных в экземпляр класса предложен альтернативный подход, основанный на анализе входного файла с использованием регулярных выражений. При таком подходе экземпляру класса помимо обязательных параметров (имя файла, число разбиений и перекрытие) достаточно передать информацию о структуре заголовка поля — шаблон регулярного выражения первой строки заголовка (подразумевается, что заголовок поля может быть многострочным) и число строк в заголовке. Данных параметров достаточно для определения остальных необходимых для декомпозиции параметров. Число строк в заголовке файла рассчитывается как число строк от начала файла до первой строки, соответствующей шаблону регулярного выражения. Число строк в поле рассчитывается как разность числа строк между первым и вторым соответствием шаблону считанных строк за исключением размера заголовка поля. В процессе декомпозиции создаются временные каталоги по числу вычислительных узлов, в которых файлы с подмас-сивами данных сохраняются в том же формате и с теми же именами, что и исходный файл. Опционально можно отключить запись в файл заголовков файла и полей. Такой формат записи данных используется моделью расчета уровня и течений, а также может использоваться моделью волн. По завершении процедуры декомпозиции пользователь по лучает раздельный доступ к заголовку файла, списку заголовков всех полей в файле и индексам полей (начальный, конечный и индекс поля, на котором заканчивается перекрытие) исходного массива данных. Эта информация может быть использована при дальнейшем формировании конфигурационных файлов, индивидуальных для каждого вычислительного узла. Общая схема декомпозиции входного файла приведена на рис. 2.10.

Принципиальная модель параллельной производительности приложений для систем с общей памятью

Эффекты, которые были отмечены при анализе параллельного ускорения модели волнения, еще ярче проявляются при анализе аналогичных данных для модели уровня и течений. Например, большие перекрытия в данных с одной стороны и относительно невысокая эффективность распараллеливания для общей памяти с другой приводят к различной эффективности распараллеливания при переходе от одной гибридной архитектуры к другой. При небольшом числе используемых процессоров невысокая эффективность распараллеливания при помощи ОрепМР даже при наличии двухмесячных перекрытий в данных приводит к существенному выигрышу архитектуры, основанной на однопроцессорных вычислительных узлах. С другой стороны, большие перекрытия способствуют более раннему закату кривой производительности для однопроцессорных вычислительных узлов. В целом, ускорение для модели уровня и течений относительно высокое (эффективность не меньше 25-30%), хотя и заметно меньше, чем для модели волнения.

Алгоритм параметризации расчетных полей предназначен для параметрической аппроксимации таблично заданных функций (спектров) с целью снижения их мерности и упрощения последующей обработки. Для параллельной реализации алгоритма используется метод распараллеливания по данным, позволяющий добиться достаточно высокой эффективности ввиду наличия большого массива входных данных, а также отсутствия необходимости передавать эти данные по сети. Независимые массивы спектров естественным образом формируются на предыдущем этапе работы программного комплекса как результат работы модели волнения. Очевидно, что время работы алгоритма, обрабатывающего массив спектров, определяется, в первую очередь, размерами этого массива, который, в свою очередь, зависит от размера расчетной сетки (L) и количества шагов по времени (т ). Применив описанную выше процедуру подбора параметров, можно определить следующее выражение, определяющее время обработки спектров в рамках общей модели производительности: где - доля точек, для которых спектры сохраняются для дальнейшей обработки (например, для Каспийского моря значение этого параметра задается, исходя из инженерных требований, и составляет 0.01, т.е. 1 точка из квадрата 10 х 10 ).

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

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

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

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

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

Стратегия распараллеливания вычислительных алгоритмов для разделенной памяти вытекает естественным образом из способа распараллеливания процедуры расчета приводного ветра по полям давления (см. раздел 1.2.1. ), в котором исходный временной интервал делится на равные части. В такой ситуации получить высокую эффективность, казалось бы, несложно, однако, необходимость пересылки значительных объемов данных, а также необходимость делать перекрытия между соседними блоками данных с целью разгона гидродинамических моделей могут обеспечить существенные накладные расходы. Потому для исследования эффектов, возникающих при взаимодействии различных уровней распараллеливания вычислительных процедур, построим общую модель ускорения для программного комплекса, время работы которого складывается из времени параллельной работы каждой из процедур и времени на обмен данными между вычислительными узлами. Среди коммуникационных расходов наибольшую долю занимают операции по начальной рассылке данных. В результате общее время работы системы принимает форму ЦП,р) = Tmnd (П,р) + Twaves (П,р) + T evel (П,р) + Грес (П,р) + Г"" (П,р). (3.25) Коммуникационные операции по рассылке данных представляют собой сумму аналогичных операций для моделей ветра, уровня и течений: rptn rpwind , rpwaves . rplevel у-о о/Г\ Для описания времени на сбор данных зафиксируем еще два дополнительных параметра 77 = 50 и v = 12 , определяющих число основных и дополнительных статистик, собираемых на узле ввода/вывода. В итоге время на сбор данных с удаленных узлов будет выглядеть так: ТГ = [ + у( )2](П-1), (3.27) а модель ускорения

Экспериментальные расчеты экстремальных гидрометеорологических характеристик и их воздействий на морские объекты и сооружения

Следует отметить, что, в то время как некоторые характеристики являются величинами скалярными, другие (например, ветер и течение) представляют собой вектор. Существует несколько вариантов представления полей векторных величин. Одним из них является представление модуля величины по аналогии со скалярными характеристиками, а направление - в качестве дополнительной характеристики на отдельной карте или в интерактивном режиме для выбранной точки. Другой вариант - отображение векторов непосредственно на карте. Тем не менее, такой вариант является сложным для восприятия. Наиболее интересными для построения атласа экстремальных гидрометеорологических явлений являются карты, отражающие экстремальные значения статистик исследуемых характеристик, то есть максимальные значения за определенный промежуток времени (1, 5, 10, 50, 100, 1000 лет). Таким образом, существует два режима работы с картами:

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

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

С учетом перечисленных требований в разрабатываемом справочнике предоставляется возможность навигации между картами по следующим измерениям: 1. Выбор режима работы с картами (экстремальная или климатическая статистика). 2. Переход между отдельными характеристиками. 3. Перемещение по хронологической оси (переход к карте следующего или предыдущего временного интервала). 4. Определение параметров измерения рассматриваемой величины (время определения максимума). 5. Масштабируемость карт (возможность более детального изучения определенного пространственного региона). Главной особенностью в данном случае является необходимость изменения шага изолиний при переходе от одного масштаба к другому. Следует отметить, что карты в реализуемом справочнике генерируются на основании сохраненных результатов моделирования и могут быть перестроены динамически (в том числе, по запросу пользователя). Динамическое построение карты преследует следующие цели: 1. Динамическое перестроение карт при обновлении исходных данных, что позволяет поддерживать карты в актуальном состоянии. 2. Построение карт по запросу пользователя (с нужным числом изолиний, цветовой градацией заливки и т.п.). 3. Автоматическая поддержка масштабируемости карт с изменением масштаба, характеризующимся меньшей дискретностью, нежели при использовании, например, статического набора карт разного масштаба.

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

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

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

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

Реализация интерактивного атласа в виде Web-сайта позволяет добиться достаточно высокого уровня доступности справочника за счет стандартизации протоколов и, как следствие, возможности работы со справочником при помощи практически любого браузера. Кроме того, следует отметить, что доступ к справочнику возможен в двух режимах: непосредственная работа пользователя при помощи браузера с интерактивной версией справочника и автоматическое взаимодействие приложений пользователя со справочником посредством технологии Web-сервисов. На основании описанной в п. 4.3.1 структуры атласа можно выделить следующие объекты, передаваемые пользователю в процессе работы со справочником:

1. Карты. Изображения, передаваемые пользователю по запросу, содержащему параметры требуемой карты. Изображения либо просматриваются пользователем непосредственно в окне браузера при помощи реализованного Web-интерфейса, либо получаются клиентским приложением пользователя. Во втором случае возможна передача пользователю изображений в различных форматах (JPG, BMP, PNG и пр.), в зависимости от желаний пользователя.

2. Данные по точкам. Наборы данных, классификация которых приведена в п. 4.1.1, передаются пользователю в виде XML-документа, содержащего сами данные, ссылки на внешние ресурсы или файлы и другую информацию. Требуемую информацию при работе с сервисом клиентское приложение передает в запросе. Минимальный вариант запроса, например, может содержать только требование выдать информацию о географических координатах заданной точки на карте. Доступ к Web-сервисам осуществляется посредством стандартного протокола SOAP, что делает их универсальным средством организации взаимодействия с пользовательскими приложениями. При этом получаемые данные представляют собой сообщения, оформленные с использованием языка XML.

Для реализации интерактивного варианта справочника (работающего непосредственно в браузере клиента) использована технология Flash (см. рис. 4.3), позволяющая добиться большей гибкости, чем стандартные компоненты языка HTML, с меньшими трудозатратами. Использование данной технологии позволяет использовать богатый набор элементов управления и способов представления информации клиенту, организовать гибкий пользовательский интерфейс, отвечающий всем необходимым требованиям по работе с интерактивными картами.

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