Back to overview

Results: 1
17:35 conference time (CEST, Berlin)
Improving the Performance of Engineering Codes
26/10/2021 17:35 conference time (CEST, Berlin)
Room: C
F. Panichi, F. Hosseini (Numerical Algorithms Group Ltd, GBR)
F. Panichi, F. Hosseini (Numerical Algorithms Group Ltd, GBR)
Parallel computing is an essential tool for engineering simulation codes, whether they run on desktops with a few computing cores, use accelerator hardware such as GPUs, or require High Performance Computing (HPC) capabilities. Improving the efficiency of codes running on these facilities either speeds up time to solution, allows for larger, more challenging problems to be solved or reduces compute costs. However, the task of understanding the performance bottlenecks of parallel codes and making improvements often ends up being a daunting trial and error process. Our experience shows that there is often a lack of a quantitative understanding of the actual behaviour of HPC applications. The Performance Optimisation and Productivity (POP) Centre of Excellence, funded by the EU under the Horizon 2020 Research and Innovation Programme, fills this gap by promoting a set of hierarchical metrics which provide a standard, objective way to characterise different aspects of the performance of parallel codes. These metrics are quick to compute. They identify issues such as memory bottlenecks, communication inefficiencies and load imbalances and enable a better understanding of program efficiency and the identification of target kernels for code refactoring. We can work on these computational kernels and advise how to roll out improvements to your whole application. In this talk, we will describe how to apply the POP performance assessment methodology using open-source tools. We will also review examples of performance assessments for engineering codes and the improvements which were then made. POP has the tools and expertise to analyse all aspects of performance from single processor efficiency to the scalability of large parallel codes. We work with programs written in most languages and parallel paradigms, including MPI, OpenMP, CUDA, OpenCL and OpenACC. Funded by the EU, POP services are available to EU and UK organizations, whether academic or commercial, free of charge.
High Performance Computing, Parallel Code, Software Performance