COMpilers for ExTreme Heterogeneity
▶Summary
Computing has become a key pillar of many areas in society and science. For decades, the ever-increasing complexity of computing systems has been hidden via incremental advances in programming abstractions, compilers and runtimes environments. Underlying these abstractions is the 8-decade old von Neumann Computing (vNC) model. The demise of scaling laws in electronics, however, has sparked disruption in devices and Hardware (HW) architectures, leading to novel Non-von Neumann Computing (NvNC) paradigms. This will bring an era of Extreme Heterogeneous Computing Systems (ExHCSs), combining fundamentally different paradigms, whose complexity can no longer be effectively hidden behind incremental advances in vNC-based programming. COMETH’s goal is to lay the foundation for a new generation of compilers for ExHCSs. With a bottom-up approach, COMETH proposes novel models that generalize over NvNC paradigms. These models will enable a disruptive re-design of HW and compiler abstractions in COMETH, allowing to seamlessly bridge high-level code (e.g., math expressions in Python) and low- level parameters of emerging architectures (e.g., device dimensioning for retention-energy trade-offs). COMETH is organized into three Work Packages (WPs): WP1 focuses on modeling emerging NvNCs systems (Compute-in-Memory (CIM) and quantum-like), WP2 devises a multi-level compiler infrastructure with extensible HW abstractions, and WP3 investigates transformations and code partitioning across computing paradigms. To cope with risks stemming from its speculative nature, COMETH will (1) target paradigms that do not depend on the success of a particular technology, (2) start with the better-understood CIM paradigm, and (3) focus on flexibility to accommodate for upcoming emerging paradigms. COMETH thus greatly contributes to diminishing the barriers that sheer complexity poses to future applications on future systems to democratize high-performance and efficient computing across disciplines.