Workshop: PEHC: Programming Environments for Heterogeneous Computing
Parallel Programming Languages and Models
Parallel Programming Systems
System Software and Runtime Systems
TimeFriday, 19 November 20218:30am - 12pm CST
DescriptionUbiquitous heterogeneous computing is increasingly becoming the norm in computing systems. In addition to hardware innovation, the community needs to shift the software environment to enable heterogeneity in an equitable, secure and sustainable manner. With increasing innovation in the accelerator space, there is a growing diversity in the systems built around them, and their software and management stacks. As a result, end users are encountering increasing difficulty in reusing applications across different, and potentially multiple, accelerators.
To address these problems, the inaugural “Programming Environments for Heterogeneous Computing” workshop aimed to gather users, researchers, hardware and software developers to address the opportunities and challenges of heterogeneity. Of particular interest were practical solutions that address reuse, functional and performance portability, DevOps, low-code and no-code development, and functional and non-functional characteristics of run times, programming languages, compilers and tools. Of interest were traditional HPC, cloud and edge, and convergence of HPC and AI.
For the first workshop, we have primarily focused on paper and discussion sessions. We have organized two sessions, one on tools and the other on systems. Both sessions will end with a discussion slot to encourage cross-fertilization of ideas.
The tools session, features ML-driven auto-tuner for heterogeneous platforms; automatically parallelizing compiler and API for heterogeneous multicores; and a Python-based high-level programming flow for CPU-FPGA heterogeneous systems.
The systems session features a holistic systems approach to leveraging heterogeneity; survival of the fittest amidst the Cambrian explosion of processor architectures for artificial intelligence; and designing heterogeneous systems: large scale architectural exploration via simulation.