DescriptionThe Roofline performance model offers an insightful and intuitive method for extracting the key execution characteristics of HPC applications and comparing them against the performance bounds of modern CPUs and GPUs. Its capability to abstract the complexity of memory hierarchies and identify the most profitable optimization techniques have made Roofline-based analysis increasingly popular in the HPC community. Although different flavors of the Roofline model have been developed to deal with various definitions of memory data movement, there remains a need for a systematic methodology when applying them to analyze the efficiency of applications running on multicore, manycore, and accelerated systems.
The tutorial aims to bridge this gap on both CPUs and GPUs by exposing the fundamental aspects behind different Roofline modeling principles and providing several practical use case scenarios to highlight their efficacy for application optimization. This tutorial presents a unique and solid combination of novel methodologies applied to optimize a representative set of open science use cases, while practice-oriented, hands-on topics and labs are given by the lead methodology researchers and the main designer of Intel’s Roofline automation tools. The tutorial presenters have a long history of working with the Roofline model and have presented several Roofline-based tutorials.