INTRODUCTION TO DIFFERENTIAL ANALYSIS USING DECAN
by Professor William Jalby (Université de Versailles-Saint-Quentin-en-Yvelines), Exascale Computing Research Laboratory
Understanding low level interaction between hardware and software is very difficult task, correlating performance issues with application code constructs is even more challenging. We will show how Differential Analysis using DECAN can help to solve these issues and provide detailed views on hardware behavior and identify accurately performance bottlenecks. DECAN is a binary patcher/modifier tool which allows to generate different binary variants to explore hardware response under different conditions. We will show how DECAN helped identify key performance bottlenecks in HPC applications. In particular we will demonstrate how DECAN can provide detailed assessment of potential performance gains of important code optimizations and therefore provides code developer with key information for tuning his application.
BIO W. JALBY: W. Jalby started his career first at INRIA as a researcher then joined University of Illinois (CEDAR project), got appointed Associate Professor at University of RENNES I before joining University of Versailles as a Full Professor. His research interests are focusing on memory system analysis and optimization, compilers and parallelism. Most of his research has been carried out in close collaboration with hardware suppliers (Fujitsu, Bull and INTEL), tools developers (JSC, TUD, University of Oregon, CAPS Entreprise) and application developers both from research (CEA, EDF, CNRS) and Industry (ESI, MAGMAsoft, Dassault, GNS, RECOM, …). Since 2004, he is the director of a joined Lab (ITACA) between CEA DAM and UVSQ focusing on code optimization techniques. In 2010, he got appointed as CTO of the Exascale Computing Research Lab and he is leading ECR research activities.
Exascale Computing Research:
The Exascale Computing Research (around 20 researchers) is focusing on the software part of the Exascale challenge. Set up by CEA, GENCI, Intel and UVSQ, this lab has two main research directions:
– re architecting existing applications, coming from industry or academia, in view of Exascale. This is a fully collaborative work, between the application developer and the lab. The purpose is to combine their expertise together with the lab tools and vision of future Exascale machines, to ensure maximum scalability and performance of existing Exascale-capable applications. Cooperation is launched in fields such as Oil &Gas, Life science and Healthcare, on proprietary or open source codes, and will expand to further domains
– pure path finding on applications, looking at ways to implement application characterization, improve performance and enhance tools environment in particular runtime systems and performance evaluation tools, in view to hide the complexity of Exascale to developers and optimize performance of future Exascale applications.