TY - JOUR
T1 - HPVM
T2 - Hardware-Agnostic Programming for Heterogeneous Parallel Systems
AU - Ejjeh, Adel
AU - Councilman, Aaron
AU - Kothari, Akash
AU - Kotsifakou, Maria
AU - Medvinsky, Leon
AU - Noor, Abdul Rafae
AU - Sharif, Hashim
AU - Zhao, Yifan
AU - Adve, Sarita
AU - Misailovic, Sasa
AU - Adve, Vikram
N1 - Publisher Copyright:
© 1981-2012 IEEE.
PY - 2022
Y1 - 2022
N2 - We present Heterogeneous Parallel Virtual Machine (HPVM), a compiler framework for hardware-agnostic programming on heterogeneous compute platforms. HPVM introduces a hardware-agnostic parallel intermediate representation with constructs for the hierarchical task, data, and pipeline parallelism, including dataflow parallelism, and supports multiple front-end languages. In addition, HPVM provides optimization passes that navigate performance, energy, and accuracy tradeoffs, and includes retargetable back ends for a wide range of diverse hardware targets, including central processing units, graphics processing units, domain-specific accelerators, and field-programmable gate arrays. Across diverse hardware platforms, HPVM optimizations provide significant performance and energy improvements, while preserving object-code portability. With these capabilities, HPVM facilitates developers, domain experts, and hardware vendors in programming modern heterogeneous systems.
AB - We present Heterogeneous Parallel Virtual Machine (HPVM), a compiler framework for hardware-agnostic programming on heterogeneous compute platforms. HPVM introduces a hardware-agnostic parallel intermediate representation with constructs for the hierarchical task, data, and pipeline parallelism, including dataflow parallelism, and supports multiple front-end languages. In addition, HPVM provides optimization passes that navigate performance, energy, and accuracy tradeoffs, and includes retargetable back ends for a wide range of diverse hardware targets, including central processing units, graphics processing units, domain-specific accelerators, and field-programmable gate arrays. Across diverse hardware platforms, HPVM optimizations provide significant performance and energy improvements, while preserving object-code portability. With these capabilities, HPVM facilitates developers, domain experts, and hardware vendors in programming modern heterogeneous systems.
UR - http://www.scopus.com/inward/record.url?scp=85133606772&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85133606772&partnerID=8YFLogxK
U2 - 10.1109/MM.2022.3186547
DO - 10.1109/MM.2022.3186547
M3 - Article
AN - SCOPUS:85133606772
SN - 0272-1732
VL - 42
SP - 108
EP - 117
JO - IEEE Micro
JF - IEEE Micro
IS - 5
ER -