Patterns for multiscale computing
| Authors | |
|---|---|
| Supervisors | |
| Award date | 11-12-2018 |
| ISBN |
|
| Number of pages | 120 |
| Organisations |
|
| Abstract |
Multiscale computing involves the modelling, characterisation and simulation of complex phenomena on several interacting space and/or time scales. We simulate multiscale models by executing multiple coupled pieces of code, each representing a single scale model. In this thesis, we specifically aimed at multiscale simulations on Tier-0 high performance computing systems. Based on the Multiscale Modelling and Simulation Framework, we first grouped and analysed various multiscale applications to identify a set of generic multiscale computing patterns. At a high level, we can visualise multiscale computing patterns as generic task graphs comprising call sequences for single scale models, each of which represents a component of a multiscale model. By identifying a particular multiscale computing pattern and using generic algorithms at the level of the pattern, it should be easier to realise load-balanced, fault-tolerant and energy-aware multiscale applications on high performance computers. A proof of concept is presented in this thesis. We implemented multiscale computing pattern software to minimise developer-related computational complications and to optimise performance based on the pattern of the multiscale application and the chosen criteria. Although optimising a multiscale application itself is important, we first need to optimise the single scale elements. For the purposes of this study, we analysed the loss in parallel efficiency caused by load imbalance in single scale parallel cell-based blood flow simulations, for which we used the HemoCell framework for blood flow. We then quantified this loss in terms of the fractional load-imbalance and communication overheads.
|
| Document type | PhD thesis |
| Language | English |
| Downloads | |
| Permalink to this page | |
