Diss. ETH No. 19575 Multiresolution flow simulations on multi/many-core architectures A dissertation submitted to ETH ZURICH for the degree of DOCTOR OF SCIENCES presented by DIEGO ROSSINELLI Dipl. Infk. Ing., ETH Zürich born December 14, 1982 citizen of Origlio TI - Schweiz accepted on the recommendation of Prof. Dr. P. Koumoutsakos, examiner Dr. M. Bergdorf, co-examiner Prof. Dr. M. Püschel, co-examiner 2011 Abstract One of the key challenges in Computational Science is closing the gap between the available computer power and its effective utilization for the simulation of complex physical systems and engineering applications. In order to achieve this goal we must minimize the time-to-solution and the related energy requirements of simulations by developing scalable software and methods that achieve a prescribed accuracy with a minimum number of computational elements. These two objectives are in conflict as adaptive methods do not readily translate into scalable software with high computational efficiency. In this thesis we address both objectives by integrating the development of multiresolution discretization methods for non-linear partial differential equations and their implementation on multicore CPU and GPU architectures. These algorithms are in turn applied to the simulation of challenging fluid dynamics phenomena which are exemplary in their computational complexity for the broader field of Computational Science. What makes the simulation of fluid flows so challenging? Fluid flows evolve by the interaction of vortical structures with multiple spatial and temporal scales. The economy of accurately simulating vortex dynamics dictates multiresolution computational methods, since the small size of elements devoted to either the near-wall region of bluff body flows or around shocks is not necessary for tracking smoother vortical structures in the flow field. We develop grid- and particle-based methods to effectively resolve these flows that rely on wavelet-based multiresolution representations. The development of adaptive, multiresolution discretization methods entails complex data structures that do not readily render themselves to parallelization on multicore CPUs and GPUs. This thesis presents highly competitive techniques to effectively map wavelet-based multiresolution numerical methods onto multicore and heterogeneous multi-GPU/CPU systems. We develop scalable software and present simulations of bluff body and multiphase compressible flows at unprecedented resolution and minimum time-to-solution, enabling previously unattainable physical insight and fast engineering calculations. iii Sommario Una questione tuttora irrisolta nell’ambito delle scienze computazionali riguarda il design di algoritmi che portano a una significativa riduzione delle operazioni di calcolo e al tempo stesso impiegano in maniera ottimale le risorse computazionali offerte dall’hardware moderno, quali GPU e multicore CPU. Un esempio in cui emerge questa difficoltà riguarda la simulazione delle dinamiche dei flussi attorno ad ostacoli e dei flussi multifase, che è considerata di grande interesse scientifico. La sfida computazionale è lo sviluppo di software che combina l’impiego di schemi numerici avanzati con tecnologie di calcolo parallelo odierne in modo da ridurre sensibilmente i tempi di simulazione. Un primo obbiettivo di questa tesi è lo sviluppo di tali algoritmi, combinando delle tecniche di discretizzazione all’avanguardia e delle tecniche mirate a sfruttare la potenza di calcolo moderno dei computer multicore e GPU. Sebbene la capacità di calcolo delle CPU e delle GPU siano in costante crescita, al momento appare inverosimile che queste tecnologie, da sole, siano in grado di risolvere problemi di ingegneria su vasta scala. L’adattività spazio-temporale è un requisito fondamentale nelle simulazioni numeriche d’avanguardia. Un secondo tema affrontato in questa tesi riguarda lo sviluppo di metodi che uniscano tale adattività ad un utilizzo efficace di sistemi multicore e multiGPU. In seguito mostriamo le elevate prestazioni di questi metodi nel contesto di varie applicazioni scientifiche, quali lo studio di flussi attorno ad ostacoli e lo studio di flussi comprimibili bifase. Scopo di questa tesi è anche lo sviluppo di tecniche di software integrative che mirano a colmare il crescente divario tra le prestazioni dell’hardware moderno e quelle delle simulazioni scientifiche nell’ambito dei fluidi. v