|dc.description.abstract||In this thesis, we investigate the performance and scalability of two CFD proxy applications, based on the Lattice Boltzmann Method (LBM) and Smoothed Particle Hydrodynamics (SPH). Two variants of LBM, workshare and task, are tested on two problems, Moffatt vortices and Cylinder flow. Three variants of the neighbor finding routine (the bottleneck of the SPH application) are studied on one problem, Dambreak. All variants are analyzed on three platforms, Vilje, EPT and EPIC.
We develop performance models, for all variants, that recommend how to achieve good scalability from the applications, enabling them to run on thousands of cores. This is partly due to the fact that the cost of communication is very low in both applications, and because most of the computational steps in both applications can be executed independently.
We validate our results by running the proxy applications on a machine outside of our testing platforms: ARCHER. There, our models successfully predict that running 1 rank per socket would be the better alternative for LBM, and that running 1 rank per node would be the better alternative for the best performing variant of SPH.||