Model-Driven Transformations for Multi- and Many-Core CPUs
Modern polyhedral compilers excel at aggressively optimizing codes with static control parts, but the state-of-practice to find high-performance polyhedral transformations especially for different hardware targets still largely involves auto-tuning. In this work we propose a novel customizable polyhedral scheduling technique, with the aim of delivering high performance for several hardware targets. We design constraints and objectives that model several crucial aspects of performance such as stride optimization or the trade-off between parallelism and reuse, while considering important architectural features of the target machine. We evaluate our work using the PolyBench/C benchmark suite and experimentally validate it against large optimization spaces generated with the Pluto compiler on 3 representative architectures: an IBM Power9, an Intel Xeon Phi and an Intel Core-i9. Our results show we can achieve comparable or superior performance to Pluto on the majority of benchmarks, without implementing tiling in the source code nor using experimental autotuning.
Tue 25 JunDisplayed time zone: Tijuana, Baja California change
08:30 - 09:30 | Parallelism and Super Computing IPLDI Research Papers at 228AB Chair(s): Veselin Raychev DeepCode AG | ||
08:30 20mTalk | Huron: Hybrid False Sharing Detection and Repair PLDI Research Papers Tanvir Ahmed Khan University of Michigan, USA, Yifan Zhao University of Michigan, USA, Gilles Pokam Intel Corporation, Barzan Mozafari University of Michigan, USA, Baris Kasikci University of Michigan, USA Media Attached | ||
08:50 20mTalk | Model-Driven Transformations for Multi- and Many-Core CPUs PLDI Research Papers Media Attached | ||
09:10 20mTalk | Parallelism-Centric What-If and Differential Analyses PLDI Research Papers Pre-print Media Attached |