IRIS: A Portable Task Runtime System for Extremely Heterogeneous Computing
A. Cabrera, S. Hitefield, J. Kim, S. Lee, N. R. Miniskar, and J. S. Vetter, Toward Performance Portable Programming for Heterogeneous System-on-Chips: Case Study with Qualcomm Snapdragon SoC, The IEEE High Performance Extreme Computing Conference (HPEC ‘21), 2021.
Scientific Achievement
Developed IRIS: a portable runtime system exploiting multiple heterogeneous programming systems. IRIS can discover available resources, manage multiple diverse programming systems (e.g., CUDA, Hexagon, HIP, Level Zero, OpenCL, OpenMP) simultaneously in the same execution with data dependencies.
Significance and Impact
Computer architectures are becoming more heterogeneous and complex, which causes a crisis in programming systems and performance portability. IRIS is a more agile and proactive runtime system that supports performance portability, including dynamic resource discovery, online adaptive scheduling, proactive data movement, and support for simultaneous execution of multiple native programming models.
Technical Approach
IRIS Architecture
OpenACC/OpenMP Mapping for Heterogeneous Architectures