Proceedings of the 23rd ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming 2018
DOI: 10.1145/3178487.3178493
|View full text |Cite
|
Sign up to set email alerts
|

HPVM

Abstract: We propose a parallel program representation for heterogeneous systems, designed to enable performance portability across a wide range of popular parallel hardware, including GPUs, vector instruction sets, multicore CPUs and potentially FPGAs. Our representation, which we call HPVM, is a hierarchical dataflow graph with shared memory and vector instructions. HPVM supports three important capabilities for programming heterogeneous systems: a compiler intermediate representation (IR), a virtual instruction set (… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
6
0

Year Published

2019
2019
2024
2024

Publication Types

Select...
3
3
2

Relationship

0
8

Authors

Journals

citations
Cited by 35 publications
(6 citation statements)
references
References 22 publications
0
6
0
Order By: Relevance
“…HPVM (Heterogeneous Parallel Virtual Machine) [28] is a compiler infrastructure targeting heterogeneous hardware. It introduces HPVM-C, a programming language for defining data flow graphs (DFGs), directed graphs in which nodes represent a computation task and edges represent inputs and outputs of a computation task.…”
Section: Mobiprox Builds Upon the Existing Work On Heterogeneous And ...mentioning
confidence: 99%
“…HPVM (Heterogeneous Parallel Virtual Machine) [28] is a compiler infrastructure targeting heterogeneous hardware. It introduces HPVM-C, a programming language for defining data flow graphs (DFGs), directed graphs in which nodes represent a computation task and edges represent inputs and outputs of a computation task.…”
Section: Mobiprox Builds Upon the Existing Work On Heterogeneous And ...mentioning
confidence: 99%
“…HPVM (Heterogeneous Parallel Virtual Machine) [22] is a compiler infrastructure targeting heterogeneous hardware. The project introduces HPVM-C, a programming language for defining data flow graphs (DFGs), directed graphs in which nodes represent a computation task and edges represent inputs and outputs of a computation task.…”
Section: Preliminariesmentioning
confidence: 99%
“…For example, Google recently proposed LLVM Multi-Level Intermediate Representation (MLIR) [53] to create a customizable compilation framework that provides information at different levels. Similarly, Heterogeneous Parallel Virtual Machine (HPVM) [54] is a representation for a parallel compiler that aims at simplifying the code implementation of parallel hardware. These representations are often combined with domain-specific languages where the designer can abstract specific hardware details.…”
Section: Input Specification and Intermediate Representationmentioning
confidence: 99%