Skip to main navigation Skip to search Skip to main content

HPVM: Hardware-Agnostic Programming for Heterogeneous Parallel Systems

Research output: Contribution to journal › Article › peer-review

Abstract

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.

Original languageEnglish (US)
Pages (from-to)108-117
Number of pages10
JournalIEEE Micro
Volume42
Issue number5
DOIs
StatePublished - 2022

ASJC Scopus subject areas

  • Software
  • Hardware and Architecture
  • Electrical and Electronic Engineering

Fingerprint

Dive into the research topics of 'HPVM: Hardware-Agnostic Programming for Heterogeneous Parallel Systems'. Together they form a unique fingerprint.

Cite this