Affiliation:
1. Rice University
2. University of California, Los Angeles
Abstract
In this paper we explore mapping of a high-level macro data-flow programming model called Concurrent Collections (CnC) onto heterogeneous platforms in order to achieve high performance and low energy consumption while preserving the ease of use of data-flow programming. Modern computing platforms are becoming increasingly heterogeneous in order to improve energy efficiency. This trend is clearly seen across a diverse spectrum of platforms, from small-scale embedded SOCs to large-scale super-computers. However, programming these heterogeneous platforms poses a serious challenge for application developers. We have designed a software flow for converting high-level CnC programs to the Habanero-C language. CnC programs have a clear separation between the application description, the implementation of each of the application components and the abstraction of hardware platform, making it an excellent programming model for domain experts. Domain experts can later employ the help of a tuning expert (either a compiler or a person) to tune their applications with minimal effort. We also extend the Habanero-C runtime system to support work-stealing across heterogeneous computing devices and introduce task affinity for these heterogeneous components to allow users to fine tune the runtime scheduling decisions. We demonstrate a working example that maps a pipeline of medical image-processing algorithms onto a prototype heterogeneous platform that includes CPUs, GPUs and FPGAs. For the medical imaging domain, where obtaining fast and accurate results is a critical step in diagnosis and treatment of patients, we show that our model offers up to 17.72X speedup and an estimated usage of 0.52X of the power used by CPUs alone, when using accelerators (GPUs and FPGAs) and CPUs.
Funder
Division of Computing and Communication Foundations
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Reference26 articles.
1. Convey HC-1ex http://www.conveycomputer.com/. Convey HC-1ex http://www.conveycomputer.com/.
2. https://wiki.rice.edu/confluence/display/HABANERO/Habanero-C. https://wiki.rice.edu/confluence/display/HABANERO/Habanero-C.
3. Mapping Linear Workflows with Computation/Communication Overlap
4. Lime
5. An Extension of the StarSs Programming Model for Platforms with Multiple GPUs
Cited by
5 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Dynamic SIMD Parallel Execution on GPU from High-Level Dataflow Synthesis;Journal of Low Power Electronics and Applications;2022-07-17
2. TaskStream: accelerating task-parallel workloads by recovering program structure;Proceedings of the 27th ACM International Conference on Architectural Support for Programming Languages and Operating Systems;2022-02-22
3. Performance Models for Heterogeneous Iterative Programs;International Journal of Networking and Computing;2022
4. SIMD Parallel Execution on GPU from High-Level Dataflow Synthesis;2021 IEEE 14th International Symposium on Embedded Multicore/Many-core Systems-on-Chip (MCSoC);2021-12
5. CnC;Proceedings of the Sixth Workshop on Data-Flow Execution Models for Extreme Scale Computing;2016-09-15