HSTREAM: A directive-based language extension for heterogeneous stream computing
Suejb Memeti, Sabri Pllana

TL;DR
HSTREAM is a directive-based language extension that simplifies programming heterogeneous stream computing systems and automatically optimizes workload distribution across CPUs and accelerators, achieving high performance.
Contribution
HSTREAM introduces a source-to-source compiler and runtime system that ease programming and improve performance for heterogeneous stream computing applications.
Findings
HSTREAM maintains OpenMP-like simplicity.
Generated code outperforms CPU-only and GPU-only executions.
Effective workload distribution across heterogeneous devices.
Abstract
Big data streaming applications require utilization of heterogeneous parallel computing systems, which may comprise multiple multi-core CPUs and many-core accelerating devices such as NVIDIA GPUs and Intel Xeon Phis. Programming such systems require advanced knowledge of several hardware architectures and device-specific programming models, including OpenMP and CUDA. In this paper, we present HSTREAM, a compiler directive-based language extension to support programming stream computing applications for heterogeneous parallel computing systems. HSTREAM source-to-source compiler aims to increase the programming productivity by enabling programmers to annotate the parallel regions for heterogeneous execution and generate target specific code. The HSTREAM runtime automatically distributes the workload across CPUs and accelerating devices. We demonstrate the usefulness of HSTREAM language…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsCloud Computing and Resource Management · Distributed and Parallel Computing Systems · Parallel Computing and Optimization Techniques
