=Paper= {{Paper |id=Vol-1576/051 |storemode=property |title=European model of climate change: architecture and features of deployement on Russian supercomputers |pdfUrl=https://ceur-ws.org/Vol-1576/051.pdf |volume=Vol-1576 |authors=Aleksey Salnikov,Natalya Tuchkova,Ingo Kirchner }} ==European model of climate change: architecture and features of deployement on Russian supercomputers== https://ceur-ws.org/Vol-1576/051.pdf
Параллельные вычислительные технологии (ПаВТ’2016) || Parallel computational technologies (PCT’2016)

                                                agora.guru.ru/pavt




   Архитектура европейской климатической модели:
                                                                                                   \ast 
            опыт установки на суперкомьютерах в России

                                               1,2                   1              3
                              А.Н. Сальников         , Н.П. Тучкова , И. Кирхнер

                          1                                              2
    ФИЦ ИУ РАН , ВМК МГУ имени М.В. Ломоносова , Институт Метеорологии
                                                                             3
                                   Свободного Университета Берлина



               Задача моделирования климата не теряет своей актуальности, что способствует
               активизации научного сообщества в области создания новых и развития имею-
               щихся численных моделей. Данные моделирования, например для арктического
               региона, позволяют уточнить детали масштабных строительных проектов на дан-
               ной территории. Изучаемая область знаний настолько велика, что разработчики
               и конечные пользователи заинтересованы в расширении коллективов исследо-
               вателей, для того, чтобы охватить более обширный круг задач, сравнить кли-
               матические прогнозы и оценить их достоверность. Для достижения прогресса в
               проблеме моделирования климата необходим обмен информацией, а также, рас-
               ширение доступа к вычислительным мощностям и моделям. В работе показаны
               особенности развертывания европейской климатической модели (MPI-ESM) на
               базе суперкомпьютеров «Ломоносов» и «К-100».

               Ключевые слова: совместная модель климата, MPI-ESM, построение климати-
               ческого прогноза, вычислительные кластеры, инструменты параллельного про-
               граммирования, развертывание кода.



1. Введение

    В современном мире задача моделирования климата становится чрезвычайно актуаль-
ной. Зная климатические характеристики на территорию определенного региона, можно
планировать строительство инфраструктурных объектов, таких как мосты, буровые уста-
новки и даже целые города. Задача построения прогноза решается путем взаимного учета
влияния таких факторов как температура поверхности океана, давление атмосферы, со-
леность мирового океана, степень оледенения определенного участка, облачность и влаж-
ность, а также многие другие факторы (в том числе палеонтологические данные). Модели
строятся не только с учетом физики процессов, но и истории метеорологических наблюде-
ний. [1].
    Все климатические модели работают с определенной сеткой значений параметров рас-
киданных по земному шару, однако необходимость изменения шага сетки весьма важна и
зависит от исследуемого региона и сценария моделирования. Кроме того, метеостанции на
суше и буи в океане, передающие данные наблюдений, покрывают не все участки земного
шара и это приводит к необходимости экстраполяции данных на неохваченные наблюдени-
ями районы и к решению задачи усвоения данных [2] (то есть учета данных физических
изменений так, чтобы они из-за возможных больших локальных скачков, не привели к рас-
хождению численной схемы модели в целом).
    В данной работе рассматриваются особенности адаптации новой версии совместной мо-
дели европейского метеорологического сообщества [3] MPI Earth System model (MPI-ESM)
на кластерных системах «Ломоносов» (МГУ имени М.В. Ломоносова) и «К-100» (ИПМ им.
М.В. Келдыша РАН) для огранизации численных ансамблевых экспериментов с усвоением
данных на основе расширенного фильтра Калмана [2].
  \ast 
          Работа проводится при частичной поддержке грантов РФФИ: 14-07-00037a, 14-05-00363а, 14-07-00654а.




                                                        678
Параллельные вычислительные технологии (ПаВТ’2016) || Parallel computational technologies (PCT’2016)

                                         agora.guru.ru/pavt



2. Структура кода европейской климатической модели

    Развитие методов прогнозирования, методов программирования и вычислительных плат-
форм неизбежно влечет появление новых модификаций исходных кодов, реализуемых уси-
лиями различных коллективов разработчиков. Все вышесказанное наложило серьезный от-
печаток на архитектуру европейской климатической модели [3]. MPI Earth System model
MPIESM(ECHAM6/MPIOM/JSBACH/HAMOCC) — современная крупномасштабная сов-
местная модель «океан-земля-атмосфера» европейского метеорологического сообщества.
Оригинальная версия авторами модели настроена на кластерную систему в DKRZ (German
Climate Computing Center, Германский центр климатических исследований), которая ис-
пользуется преимущественно в рамках исследований в области численного моделирования
климата. Основные блоки модели и их взаимосвязь показаны на рис. 1., где ECHAM6 –
модель динамики атмосферы, блок MPIOM – модель динамики океана, включающей дина-
мику льда, блок OASIS3-MCT – специальный интерфейс обмена «океан-земля-атмосфера»,
HAMOCC – блок газообмена, включающего динамику карбонных соединений и блок
JSBACH (включающий стоки крупнейших рек планеты).




                             Рис. 1. Компоненты модели MPI-ESM



   Сетка океанской части модели имеет следующую структуру:
   \bullet  биполярная (GR) с двумя полюсами, например, по Гренландии и Антарктиде,
   \bullet  трехполюсная (TP) с тремя полюсами, например, по Северной Америке, Сибири и
            Антарктиде.
    В океанской части совместной модели обычно используются конфигурации (CR, LR,
MR, STORM) с разрешением 3 град, 1.5 град, 0.4 град и 0.1 град, соответственно и 40 уров-
ней по вертикали. Для выделенной подобласти может использоваться заданное разрешение.
    В новой версии модели используется программное ядро ICON (разработка German
Weather Service и Max Planck Institute for Meteorology), которое позволяет решать системы
уравнений модели в пространстве двадцатигранной сетки с квази-изотропическим горизон-
тальным разрешением по сфере, и ограничениями на региональные области.
    Здесь:
   \bullet  CR (GR30L40) 3 град. – грубое разрешение для отладочных целей;
   \bullet  LR (GR15L40) 1.5 град. – разрешение по-умолчанию для численного моделирования,
            в соответствии с рекомендациями Международной рабочей группы по моделированию
            климата на основе совместных моделей (WGCM,CMIP5);
   \bullet  MR (TP04L40) 0.4 град. – высокое разрешение для учета вихревых потоков (по реко-
            мендации WGCM,CMIP5 для сравнения с другими совместными моделями);
   \bullet  STORM (TP6ML40/80) 0.1 град. – очень высокое разрешение для учета вихревых
            потоков.

                                               679
Параллельные вычислительные технологии (ПаВТ’2016) || Parallel computational technologies (PCT’2016)

                                         agora.guru.ru/pavt



Сетка для атмосферной части также реализуется в разных конфигурациях для 47 и 95
уровней по высоте:

   \bullet  CR (T031L47) – для отладочных целей;

   \bullet  LR (T063L47) – разрешение по умолчанию для океанской маски GR15 (указана выше);

   \bullet  MR (T063L95) – высокое разрешение для средних атмосфер для океанской маски
            TP04;

   \bullet  HR (T127L95) – высокое разрешение;

   \bullet  XR (T255L95) – экспериментальное очень высокое разрешение;

     Модель MPIESM представляет собой набор программ фортран-90, которые использу-
ют для параллельных вычислений стандарт MPI версии 2.1 и стандарт OpenMP версии
2. Каждая программа отвечает за свой компонент модели, например атмосфера, океан и
т.д. (см. рис. 1). Фортран-программы запускаются при помощи mpiexec и передают данные
друг другу средствами MPI. Есть выделенный компонент OASIS-MCT (написан на язы-
ке программирования С++), который отвечает за сопряжение данных между остальными
компонентами, а также дирижирует общим процессом расчета.
     Параметры запуска (моделируемый период, задание начальных данных, и т.д.) и кон-
кретная выборка из истории метеонаблюдений образуют понятие эксперимента (данное
управление реализовано при помощи текстовых файлов специального формата, так назы-
ваемых namelists ). Расчет производится по шагам, один шаг соответствует одному месяцу
(для нашей задачи [4]). Процесс счета устроен так, что производится несколько шагов ин-
теграции, затем в файловую систему кластера сохраняются промежуточные результаты,
после чего сама MPI-программа завершается и ее нужно еще раз запускать, с учетом полу-
ченных промежуточных результатов. Промежуточные результаты могут проходить стадию
постобработки и потенциально визуализироваться при помощи внешних по отношению к
MPI-приложению программных средств.
     Синхронизация вычислительных процессов в соответствии с выбранным сценарием чис-
ленного эксперимента поддерживается с помощью блока OASIS3-MCT. Блок OASIS3-MCT
осуществляет совмещение двумерных полей в процессе передачи полей переменных между
подмоделями. Совмещение неструктурированных сеток и 3D-сеток также поддерживается,
используя одномерное представление 2D или 3D структур. При запуске описание конфи-
гурации модели для блока OASIS3-MCT задается в специальном файле namcouple. Блок
OASIS3-MCT служит также для обеспечения масштабируемости модели на большое число
процессорных ядер и для работы с неструктурированными сетками. Схематически взаимо-
действие внутри модели на каждом шаге интеграции представлено на рис. 2.
     Из за того, что MPI-приложение постоянно завершается и запускается снова, а так же
вследствие наличия этапа постобработки в систему ведения очередей вычислительного кла-
стера, по сути, ставится довольно сложно устроенный shell-скрипт, который сам запускает
MPI-программы, когда необходимо, а также утилиты постобработки. Однако такой стиль
организации задачи, для вычислительного кластера не вполне традиционен и на практике
вызывает множество технических проблем.

3. Адаптация с суперкомпьютерам «Ломоносов» и «К-100»

    Климатическая модель в своем первом параллельном исполнении разрабатывалась для
вычислительного кластера в DKRZ. Это кластер IBM, работающий под управлением опе-
рационной системы AIX и системой ведения очередей LoadLeveler. Однако в России тако-
го рода систем немного, в частности на начальном этапе использовалась IBM pSeries 690
Regatta (ВМК в МГУ имени М.В. Ломоносова). Для большей части вычислительных систем

                                                 680
Параллельные вычислительные технологии (ПаВТ’2016) || Parallel computational technologies (PCT’2016)

                                          agora.guru.ru/pavt




Рис. 2. Сдадии выполнения кода; показаны стадия инициации и стадия вычисления; пропущены
стадии препроцессинга, поспроцессинга, визуализации




в России в настоящее время используется архитектура Intel под управлением операционной
системы Linux. Это обстоятельство определило стратегию реализации совместной клима-
тической модели: адаптировать исходный код под новую платформу, создать окружение,
частично переписывать скрипты запуска и компиляции.
    Авторами модели для облегчения этого процесса предложен скрипт написанный с ис-
пользованием korn Shell (ksh), python, perl, который должен облегчать настройку всех ком-
понент на конкретный вычислительный кластер и конкретную систему ведения очередей.
Однако на практике оказалось, что для суперкомпьютеров «Ломоносов» и «К-100», данные
скрипты нужно частично переписать. Также потребовалось устанавливить определенные
версии библиотеки MKL и компиляторов Intel. Оказалось необходимо создавать локальную
установку Python определенной версии, куда пришлось встраивать сторонний компонент,
который не входит в стандартную библиотеку языка Python. Нами были проделаны следу-
ющие действия:
  1. Поскольку раздел файловой системы на вычислительном узле где происходит запуск
     задачи часто не совпадает с каталогом пользователя на интерфейсной машине, нами
     был создан каталог _scratch/opt в который затем устанавливается все программное
     обеспечение и библиотеки, как в корневой каталог файловой системы UNIX. Этот
     каталог должен находится в части файловой системы доступной узлам кластера.

  2. Модифицировались переменные окружения в файлах .profile так, чтобы динамиче-
     ски подгружаемые библиотеки и программы искались из каталогов _scratch/opt/bin
     и _scratch/opt/lib. Также здесь производится настройка на опеределенные версии ком-
     пиляторов Intel, реализаций MPI и версии библиотеки MKL.

  3. В домашнем каталоге компилировались необходимые компоненты так, что установ-
     ка их производится в _scratch/opt. Пришлось отдельно скомпилировать следующий
     набор компонент: afterburner-4.5.1, cdo-1.6.5.2, grads-2.0.2, jinja2-2.8, nco-4.4.4, netcdf-
     4.3.1.1, pdksh-5.2.14, tiff-4.0.3, ed-1.9, hdf5-1.8.12, libgeotiff-1.4.0, nco-4.4.7, netcdf-fortran-
     4.2, Python-2.7.10, libsz, szip-2.1.

  4. Резвернут git репозиторй, в который помещается исходный код модели скачаный с
     сайта разработчиков. В дальнейшем в репозиторий вносятся измения необходимые
     для того, чтобы скомпилировать код модели c помощью Intel компилятора.

  5. Вносятся изменения в заголовочный скрипт configure (это вручную написанный скрипт,

                                                 681
Параллельные вычислительные технологии (ПаВТ’2016) || Parallel computational technologies (PCT’2016)

                                         agora.guru.ru/pavt



     а не созданный autoconf-ом). А так же в некоторые Makefile и файлы отвечающие за
     интерфейс языка C и языка Фортран-90. (Для C в этом месте требуется включение
     поддержки стандарта C99).

  6. Запускается настройка кода с параметрами указанными на рис. 3 и после нее компиля-
     ция. После компиляции весь каталог с моделью копируется в _scratch, в дальнейшем
     вся работа ведется именно там.

 CDIROOT = $HOME / _scratch / opt                                                   \
 OASIS3MCTROOT = " $HOME / _scratch / model_v1_1 "                                  \
 FORT_REAL_LEN =8                                                                   \
 CC = mpiicc FC = mpiifort F77 = mpiifort MPIFC = mpiifort MPIFC = " mpiifort " \
 FCFLAGS_ECHAM = " - mkl -no - ipo - cpp - O2 - I$HOME / _scratch / opt / include " \
 FCFLAGS_MPIOM = " - cpp - mkl -no - ipo - O2 - I$HOME / _scratch / opt / include " \
 FCFLAGS = " - cpp - mkl - I$HOME / _scratch / opt / include "                      \
 CFLAGS = " - std = c99 -no - ipo - mkl - I$HOME / _scratch / opt / include "       \
 prefix = " $HOME / _scratch / model_v1_1 "                                         \
 FCLIBS = " - mkl -no - ipo - L$HOME / _scratch / opt / lib - lnetcdff - lnetcdf " \
    ./ configure -- prefix = " $HOME / _scratch / model_v1_1 "                      \
    -- host = x86_64 - unknown - linux - gnu

              Рис. 3. Параметры для настройки и компиляции программного кода




  7. производится адаптация скриптов, под конкретную систему ведения очередей, для
     этого необходимо модифицировать файлы «функции» находящиеся в каталоге
     util/running/functions в частности файл function_submit.
  8. Запускается python код util/mkexp с файлом, описывающем параметры численного
     эксперимента. Он создает структуру каталогов для обеспечения жизненного цикла
     эксперимента. Там создается набор символических ссылок на данные и исполняемые
     файлы MPI-программ, а также набор скриптов, для запуска и взаимодействия с си-
     стемой ведения очередей.

  9. Если настройка на систему ведения очередей была произведена правильно, то в даль-
     нейшем, командой постановки в очередь (для «Ломоносов» sbatch) ставится скрипт
     имя_эксперимента.run_start.

4. Заключение

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

Литература

 1. Mueller W.A., Matei D., Bersch M., Jungclaus J. H., Haak H., Lohmann K., Lompo G.,
    Sardeshmak P., Marotzke J. A twentieth-century reanalysis forced ocean model to


                                               682
Параллельные вычислительные технологии (ПаВТ’2016) || Parallel computational technologies (PCT’2016)

                                         agora.guru.ru/pavt



   reconstruct the North Atlantic climate variation during the 1920s. Climate Dynamics,
   2015, V. 44, I. 7, pp. 1935–1955.

2. Беляев К.П., Тучкова Н.П. Предельные распределения для характеристик при
   усвоении данных наблюдений в стационарном режиме // Информатика и ее
   применения, 2015. Т. 9. Вып. 2. С. 19–24.

3. New Earth system model of Max Planck Institute for Meteorology (MPI-ESM). Model site
   URL: http://www.mpimet.mpg.de/en/science/models/mpi-esm (accessed: 20.01.2016).

4. Михайлов Г.М., Беляев К.П., Сальников А.Н., Тучкова Н.П., Кирхнер И. Учет
   данных наблюдений для анализа динамических процессов в океанской модели
   циркуляции // Научный сервис в сети Интернет: труды XVII Всероссийской научной
   конференции (21-26 сентября 2015 г., г. Новороссийск). М.: ИПМ им. М.В.Келдыша,
   2015. C. 240–243.




                                               683
Параллельные вычислительные технологии (ПаВТ’2016) || Parallel computational technologies (PCT’2016)

                                         agora.guru.ru/pavt




  European model of climate change: architecture and

  features of deployement on Russian supercomputers

                                       1,2                    1             3
                       A.N. Salnikov      , N.P. Tuchkova , I. Kirchner

                                                      1                                           2
Dorodnicyn Computing Centre, FRC CSC RAS , Lomonosov Moscow State University ,
                                                                      3
                             Institute of Meteorology FU Berlin



        The problem of climate modeling doesn’t lose its actuality and promotes activity
        of scientific community to create new models and to develop the existing numerical
        models. Numerical modeling, for example for the Arctic region, allows specifying
        the details of large-scale construction projects in this territory. The studied field
        of knowledge is so great that developers and end-users are interested in expansion
        of groups of researchers to capture more extensive tasks, to compare forecasts and
        to estimate their reliability. For achievement of progress in this problem of climate
        modeling it is necessary to exchange the information, and also, expand the access of
        computing capacities and models. This article shows some aspects of deploying code
        of modern European climate model (MPI-ESM) on supercomputers “Lomonosov” and
        “K-100”.

        Keywords: couple model, MPI-ESM, climatic forecast, computing clusters, instruments
        of parallel programming, code deployement.



References

1. Mueller W.A., Matei D., Bersch M., Jungclaus J. H., Haak H., Lohmann K., Lompo G.,
   Sardeshmak P., Marotzke J. A twentieth-century reanalysis forced ocean model to
   reconstruct the North Atlantic climate variation during the 1920s. Climate Dynamics,
   2015, V. 44, I. 7, pp. 1935–1955.

2. Belyaev K.P., Tuchkova N.P. On a limit distribution of characteristics in stationary regime
   for the linear assimilation problem. Informatics and Applications, 2015, V. 9, I. 2,
   pp. 19–24.(in Russian).

3. New Earth system model of Max Planck Institute for Meteorology (MPI-ESM). Model site
   URL: http://www.mpimet.mpg.de/en/science/models/mpi-esm (accessed: 20.01.2016).

4. Mickhailov G.V., Belyaev K.P., Salnikov A.N., Tuchkova N.P., Kirchner I. The observation
   data using for the analysis of dynamic processes in ocean model circulation // Scientific
   service in Internet: proceeding of XVII Russian sientific conference (21-26 Sept. 2015,
   Novorossiysk,Russia) (in Russian) Keldysh Institute of Applied Mathematics, Moscow.
   2015.pp. 240–243.




                                               684