Dynamic load-balancing : a new strategy for weather forecast models
Weather forecasting models are computationally intensive applications and traditionally they are executed in parallel machines. However, some issues prevent these models from fully exploiting the available computing power. One of such issues is load imbalance, i.e., the uneven distribution of load a...
Main Author: | |
---|---|
Other Authors: | |
Format: | Others |
Language: | English |
Published: |
2011
|
Subjects: | |
Online Access: | http://hdl.handle.net/10183/34776 |
id |
ndltd-IBICT-oai-www.lume.ufrgs.br-10183-34776 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-IBICT-oai-www.lume.ufrgs.br-10183-347762019-01-22T01:41:21Z Dynamic load-balancing : a new strategy for weather forecast models Rodrigues, Eduardo Rocha Navaux, Philippe Olivier Alexandre Panetta, Jairo Kale, Laxmikant V. Processamento paralelo Metereologia Processamento : Alto desempenho High performance computing Dynamic load balancing Weather forecast models Processor virtualization Weather forecasting models are computationally intensive applications and traditionally they are executed in parallel machines. However, some issues prevent these models from fully exploiting the available computing power. One of such issues is load imbalance, i.e., the uneven distribution of load across the processors of the parallel machine. Since weather models are typically synchronous applications, that is, all tasks synchronize at every time-step, the execution time is determined by the slowest task. The causes of such imbalance are either static (e.g. topography) or dynamic (e.g. shortwave radiation, moving thunderstorms). Various techniques, often embedded in the application’s source code, have been used to address both sources. However, these techniques are inflexible and hard to use in legacy codes. In this thesis, we explore the concept of processor virtualization for dynamically balancing the load in weather models. This means that the domain is over-decomposed in more tasks than the available processors. Assuming that many tasks can be safely executed in a single processor, each processor is put in charge of a set of tasks. In addition, the system can migrate some of them from overloaded processors to underloaded ones when it detects load imbalance. This approach has the advantage of decoupling the application from the load balancing strategy. Our objective is to show that processor virtualization can be applied to weather models as long as an appropriate strategy for migrations is used. Our proposal takes into account the communication pattern of the application in addition to the load of each processor. In this text, we present the techniques used to minimize the amount of change needed in order to apply processor virtualization to a real-world application. Furthermore, we analyze the effects caused by the frequency at which the load balancer is invoked and a threshold that activates rebalancing. We propose an automatic strategy to find an optimal threshold to trigger load balancing. These strategies are centralized and work well for moderately large machines. For larger machines, we present a fully distributed algorithm and analyze its performance. As a study case, we demonstrate the effectiveness of our approach for dynamically balancing the load in Brams, a mesoscale weather forecasting model based on MPI parallelization. We choose this model because it presents a considerable load imbalance caused by localized thunderstorms. In addition, we analyze how other effects of processor virtualization can improve performance. 2011-11-23T01:20:12Z 2011 info:eu-repo/semantics/publishedVersion info:eu-repo/semantics/doctoralThesis http://hdl.handle.net/10183/34776 000792718 eng info:eu-repo/semantics/openAccess application/pdf reponame:Biblioteca Digital de Teses e Dissertações da UFRGS instname:Universidade Federal do Rio Grande do Sul instacron:UFRGS |
collection |
NDLTD |
language |
English |
format |
Others
|
sources |
NDLTD |
topic |
Processamento paralelo Metereologia Processamento : Alto desempenho High performance computing Dynamic load balancing Weather forecast models Processor virtualization |
spellingShingle |
Processamento paralelo Metereologia Processamento : Alto desempenho High performance computing Dynamic load balancing Weather forecast models Processor virtualization Rodrigues, Eduardo Rocha Dynamic load-balancing : a new strategy for weather forecast models |
description |
Weather forecasting models are computationally intensive applications and traditionally they are executed in parallel machines. However, some issues prevent these models from fully exploiting the available computing power. One of such issues is load imbalance, i.e., the uneven distribution of load across the processors of the parallel machine. Since weather models are typically synchronous applications, that is, all tasks synchronize at every time-step, the execution time is determined by the slowest task. The causes of such imbalance are either static (e.g. topography) or dynamic (e.g. shortwave radiation, moving thunderstorms). Various techniques, often embedded in the application’s source code, have been used to address both sources. However, these techniques are inflexible and hard to use in legacy codes. In this thesis, we explore the concept of processor virtualization for dynamically balancing the load in weather models. This means that the domain is over-decomposed in more tasks than the available processors. Assuming that many tasks can be safely executed in a single processor, each processor is put in charge of a set of tasks. In addition, the system can migrate some of them from overloaded processors to underloaded ones when it detects load imbalance. This approach has the advantage of decoupling the application from the load balancing strategy. Our objective is to show that processor virtualization can be applied to weather models as long as an appropriate strategy for migrations is used. Our proposal takes into account the communication pattern of the application in addition to the load of each processor. In this text, we present the techniques used to minimize the amount of change needed in order to apply processor virtualization to a real-world application. Furthermore, we analyze the effects caused by the frequency at which the load balancer is invoked and a threshold that activates rebalancing. We propose an automatic strategy to find an optimal threshold to trigger load balancing. These strategies are centralized and work well for moderately large machines. For larger machines, we present a fully distributed algorithm and analyze its performance. As a study case, we demonstrate the effectiveness of our approach for dynamically balancing the load in Brams, a mesoscale weather forecasting model based on MPI parallelization. We choose this model because it presents a considerable load imbalance caused by localized thunderstorms. In addition, we analyze how other effects of processor virtualization can improve performance. |
author2 |
Navaux, Philippe Olivier Alexandre |
author_facet |
Navaux, Philippe Olivier Alexandre Rodrigues, Eduardo Rocha |
author |
Rodrigues, Eduardo Rocha |
author_sort |
Rodrigues, Eduardo Rocha |
title |
Dynamic load-balancing : a new strategy for weather forecast models |
title_short |
Dynamic load-balancing : a new strategy for weather forecast models |
title_full |
Dynamic load-balancing : a new strategy for weather forecast models |
title_fullStr |
Dynamic load-balancing : a new strategy for weather forecast models |
title_full_unstemmed |
Dynamic load-balancing : a new strategy for weather forecast models |
title_sort |
dynamic load-balancing : a new strategy for weather forecast models |
publishDate |
2011 |
url |
http://hdl.handle.net/10183/34776 |
work_keys_str_mv |
AT rodrigueseduardorocha dynamicloadbalancinganewstrategyforweatherforecastmodels |
_version_ |
1718940328527921152 |