1 research outputs found
DisPar Methods and Their Implementation on a Heterogeneous PC Cluster
Esta dissertação avalia duas áreas cruciais da simulação de advecção-
difusão.
A primeira parte é dedicada a estudos numéricos. Foi comprovado que
existe uma relação directa entre os momentos de deslocamento de uma partícula
de poluente e os erros de truncatura. Esta relação criou os fundamentos teóricos
para criar uma nova família de métodos numéricos, DisPar.
Foram introduzidos e avaliados três métodos. O primeiro é um método
semi-Lagrangeano 2D baseado nos momentos de deslocamento de uma partícula
para malhas regulares, DisPar-k. Com este método é possível controlar
explicitamente o erro de truncatura desejado. O segundo método também se
baseia nos momentos de deslocamento de uma partícula, sendo, contudo,
desenvolvido para malhas uniformes não regulares, DisParV. Este método
também apresentou uma forte robustez numérica. Ao contrário dos métodos
DisPar-K e DisParV, o terceiro segue uma aproximação Eulereana com três
regiões de destino da partícula. O método foi desenvolvido de forma a manter um
perfil de concentração inicial homogéneo independentemente dos parâmetros
usados. A comparação com o método DisPar-k em situações não lineares realçou
as fortes limitações associadas aos métodos de advecção-difusão em cenários
reais.
A segunda parte da tese é dedicada à implementação destes métodos num
Cluster de PCs heterogéneo. Para o fazer, foi desenvolvido um novo esquema de
partição, AORDA. A aplicação, Scalable DisPar, foi implementada com a
plataforma da Microsoft .Net, tendo sido totalmente escrita em C#. A aplicação foi
testada no estuário do Tejo que se localiza perto de Lisboa, Portugal.
Para superar os problemas de balanceamento de cargas provocados pelas
marés, foram implementados diversos esquemas de partição: “Scatter
Partitioning”, balanceamento dinâmico de cargas e uma mistura de ambos. Pelos
testes elaborados, foi possível verificar que o número de máquinas vizinhas se
apresentou como o mais limitativo em termos de escalabilidade, mesmo utilizando
comunicações assíncronas. As ferramentas utilizadas para as comunicações
foram a principal causa deste fenómeno. Aparentemente, o Microsoft .Net remoting 1.0 não funciona de forma apropriada nos ambientes de concorrência
criados pelas comunicações assíncronas. Este facto não permitiu a obtenção de
conclusões acerca dos níveis relativos de escalabilidade das diferentes
estratégias de partição utilizadas. No entanto, é fortemente sugerido que a melhor
estratégia irá ser “Scatter Partitioning” associada a balanceamento dinâmico de
cargas e a comunicações assíncronas. A técnica de “Scatter Partitioning” mitiga
os problemas de desbalanceamentos de cargas provocados pelas marés. Por
outro lado, o balanceamento dinâmico será essencialmente activado no inicio da
simulação para corrigir possíveis problemas nas previsões dos poderes de cada
processador.This thesis assesses two main areas of the advection-diffusion simulation.
The first part is dedicated to the numerical studies. It has been proved that
there is a direct relation between pollutant particle displacement moments and
truncation errors. This relation raised the theoretical foundations to create a new
family of numerical methods, DisPar.
Three methods have been introduced and appraised. The first is a 2D semi-
Lagrangian method based on particle displacement moments for regular grids,
DisPar-k. With this method one can explicitly control the desired truncation error.
The second method is also based on particle displacement moments but it is
targeted to regular/non-uniform grids, DisParV. The method has also shown a
strong numerical capacity. Unlike DisPar-k and DisParV, the third method is a
Eulerian approximation for three particle destination units. The method was
developed so that an initial concentration profile will be kept homogeneous
independently of the used parameters. The comparison with DisPar-k in non-linear
situations has emphasized the strong shortcomings associated with numerical
methods for advection-diffusion in real scenarios.
The second part of the dissertation is dedicated to the implementation of
these methods in a heterogeneous PC Cluster. To do so, a new partitioning
method has been developed, AORDA. The application, Scalable DisPar, was
implemented with the Microsoft .Net framework and was totally written in C#. The
application was tested on the Tagus Estuary, near Lisbon (Portugal).
To overcome the load imbalances caused by tides scatter partitioning was
implemented, dynamic load balancing and a mix of both. By the tests made, it was
possible to verify that the number of neighboring machines was the main factor
affecting the application scalability, even with asynchronous communications. The
tools used for communications mainly caused this. Microsoft .Net remoting 1.0
does not seem to properly work in environments with concurrency associated with
the asynchronous communications. This did not allow taking conclusions about the
relative efficiency between the partitioning strategies used. However, it is strongly
suggested that the best approach will be to scatter partitioning with dynamic load
balancing and with asynchronous communications. Scatter partitioning mitigates
load imbalances caused by tides and dynamic load balancing is basically trigged
at the begging of the simulation to correct possible problems in processor power
predictions