PolyTOPS: Reconfigurable and Flexible Polyhedral Scheduler

Gianpietro Consolaro,Zhen Zhang,Harenome Razanajato,Nelson Lossing,Nassim Tchoulak,Adilla Susungi,Artur Cesar Araujo Alves,Renwei Zhang,Denis Barthou,Corinne Ancourt,Cedric Bastoul
2024-01-13
Abstract:Polyhedral techniques have been widely used for automatic code optimization in low-level compilers and higher-level processes. Loop optimization is central to this technique, and several polyhedral schedulers like Feautrier, Pluto, isl and Tensor Scheduler have been proposed, each of them targeting a different architecture, parallelism model, or application scenario. The need for scenario-specific optimization is growing due to the heterogeneity of architectures. One of the most critical cases is represented by NPUs (Neural Processing Units) used for AI, which may require loop optimization with different objectives. Another factor to be considered is the framework or compiler in which polyhedral optimization takes place. Different scenarios, depending on the target architecture, compilation environment, and application domain, may require different kinds of optimization to best exploit the architecture feature set.
Distributed, Parallel, and Cluster Computing,Computation and Language,Performance
What problem does this paper attempt to address?