@MastersThesis{Costa:2020:ExOpMe,
author = "Costa, Rhuan Edson Caldini",
title = "Explora{\c{c}}{\~a}o de oportunidades de melhoria de desempenho
em um modelo clim{\'a}tico",
school = "Instituto Nacional de Pesquisas Espaciais (INPE)",
year = "2020",
address = "S{\~a}o Jos{\'e} dos Campos",
month = "2020-02-17",
keywords = "modelos clim{\'a}ticos, otimiza{\c{c}}{\~a}o, processamento
corrente, desempenho de sistemas computacionais, climate models,
optimization, concurrent processing, cumputer systems
performance.rmance.",
abstract = "Modelos clim{\'a}ticos s{\~a}o programas complexos, que envolvem
a implementa{\c{c}}{\~a}o computacional de in{\'u}meros
c{\'a}lculos matem{\'a}ticos de forma a representar
fen{\^o}menos f{\'{\i}}sicos que interagem entre si. Tais
fen{\^o}menos geralmente s{\~a}o representados por m{\'o}dulos
espec{\'{\i}}ficos (atmosf{\'e}rico, oce{\^a}nico, solo, etc.)
que s{\~a}o executados de forma acoplada, isto {\'e}, realizam a
simula{\c{c}}{\~a}o dos respectivos fen{\^o}menos para um certo
intervalo de tempo, trocando informa{\c{c}}{\~o}es entre si
quando necess{\'a}rio. Desta complexidade, surge a necessidade de
paralelizar e otimizar sua execu{\c{c}}{\~a}o de modo a se obter
resultados em tempo vi{\'a}vel. Al{\'e}m da
paraleliza{\c{c}}{\~a}o do modelo, t{\'e}cnicas de
otimiza{\c{c}}{\~a}o voltadas {\`a} arquitetura de hardware
utilizada tamb{\'e}m podem ser aplicadas, tais como
vetoriza{\c{c}}{\~a}o e blocagem de loops. Este trabalho tem
como objetivo explorar oportunidades de otimiza{\c{c}}{\~a}o de
desempenho em modelos clim{\'a}ticos globais, utilizando como
estudo de caso o Brazilian Earth System Model (BESM), um modelo
desenvolvido pelo CPTEC/INPE com o principal objetivo de simular o
clima global de modo a entender as causas das mudan{\c{c}}as
clim{\'a}ticas. Inicialmente, foi avaliado o desempenho original
do BESM, verificando como o modelo estava sendo compilado, quais
eram as t{\'e}cnicas de paraleliza{\c{c}}{\~a}o utilizadas,
como seus m{\'o}dulos eram executados, e quais eram os pontos com
maior consumo de CPU. Em seguida, baseado nas
informa{\c{c}}{\~o}es encontradas na an{\'a}lise inicial, foram
exploradas poss{\'{\i}}veis otimiza{\c{c}}{\~o}es de
desempenho do modelo. Foram aplicadas melhorias no processo de
compila{\c{c}}{\~a}o e execu{\c{c}}{\~a}o do modelo, e
tamb{\'e}m foram realizadas as altera{\c{c}}{\~o}es
necess{\'a}rias para permitir a execu{\c{c}}{\~a}o dos
m{\'o}dulos atmosf{\'e}rico e oce{\^a}nico de forma
concorrente, com diferentes quantidades de CPUs alocados para cada
m{\'o}dulo. Ap{\'o}s todas as otimiza{\c{c}}{\~o}es aplicadas,
foi obtida redu{\c{c}}{\~a}o no tempo de execu{\c{c}}{\~a}o de
at{\'e} quatro vezes quando utilizados 24 processadores, e foi
reduzido pela metade o tempo m{\'{\i}}nimo de
execu{\c{c}}{\~a}o das simula{\c{c}}{\~o}es empregando
centenas de processadores. Apesar dos resultados
consider{\'a}veis alcan{\c{c}}ados, ainda h{\'a} espa{\c{c}}o
para melhorias no BESM em trabalhos futuros, voltadas ao
balanceamento de carga entre os processos MPI, especialmente no
m{\'o}dulo atmosf{\'e}rico. ABSTRACT: Climate models are complex
programs that involve the computational implementation of numerous
mathematical calculations in order to represent physical phenomena
that interact with each other. Such phenomena are usually
represented by specific modules (atmospheric, oceanic, land, etc.)
that operate in a coupled way, that is, they perform the
simulation of the respective phenomena for a certain interval of
time, exchanging information among them when necessary. Due to
this complexity, the need arises to parallelize its execution in
order to obtain results in a viable time. In addition to the model
parallelization, optimization techniques aiming the employed
hardware architecture can also be applied, such as vectorization
and loop blocking. This work aims to explore opportunities of
performance improvements in global climate models, using as case
study the Brazilian Earth System Model (BESM), a model developed
by CPTEC/INPE with the main goal of simulating the global climate
in order to understand the causes of climate changes. The work
started with an evaluation of the original BESMs performance,
verifying how the model was being compiled, which parallelization
techniques were applied, how its modules were executed, and which
were the points with the highest CPU consumption. Then, based on
the information found in the initial analysis, the models
performance was optimized. Improvements were made in the process
of compiling and executing the model, and the necessary changes
were also made to allow the execution of the atmospheric and
oceanic modules concurrently, with different amounts of CPUs
allocated for each module. After all the applied optimizations, a
reduction in the execution time of up to four times was obtained
when 24 processors were used, and the minimum time for executions
with hundreds of processors was reduced to half of the original
time. Despite the substantial results achieved, there is still
room for improvement in BESM in future works, aimed at load
balancing between the MPI processes, especially in the atmospheric
module.",
committee = "Stephany, Stephan (presidente) and Mendes, Celso Luiz (orientador)
and Andrade Neto, Pedro Ribeiro de and Fazenda, {\'A}lvaro Luiz",
englishtitle = "Exploring opportunities for performance improvement in a global
climate model",
language = "pt",
pages = "52",
ibi = "8JMKD3MGP3W34R/3UU6PU2",
url = "http://urlib.net/ibi/8JMKD3MGP3W34R/3UU6PU2",
targetfile = "publicacao.pdf",
urlaccessdate = "2024, Mar. 29"
}