Exploiting the Parallelism of Heterogeneous Systems using Dataflow Graphs on Top of OpenCL

被引:0
作者
Schor, Lars [1 ]
Tretter, Andreas [1 ]
Scherer, Tobias [1 ]
Thiele, Lothar [1 ]
机构
[1] ETH, Comp Engn & Networks Lab, CH-8092 Zurich, Switzerland
来源
2013 IEEE 11TH SYMPOSIUM ON EMBEDDED SYSTEMS FOR REAL-TIME MULTIMEDIA (ESTIMEDIA) | 2013年
关键词
Automatic synthesis; dataflow languages; heterogenous systems; OpenCL; SDF graphs; LANGUAGE;
D O I
暂无
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Programming heterogeneous systems has been greatly simplified by OpenCL, which provides a common low-level API for a large variety of compute devices. However, many low-level details, including data transfer, task scheduling, or synchronization, must still be managed by the application designer. Often, it is desirable to program heterogeneous systems in a higher-level language, making the developing process faster and less error-prone. In this paper, we introduce a framework to efficiently execute applications specified as synchronous dataflow graphs (SDF) on heterogeneous systems by means of OpenCL. In our approach, actors are embedded into OpenCL kernels and data channels are automatically instantiated to improve memory access latencies and end-to-end performance. The multi-level parallelism resulting from the hierarchical structure of heterogeneous systems is exploited by applying two techniques. Pipeline and task parallelism are used to distribute the application to the different compute devices and data-parallelism is used to concurrently process independent actor firings or even output tokens in a SIMD fashion. We demonstrate that the proposed framework can be used by application designers to efficiently exploit the parallelism of heterogeneous systems without writing low-level architecture dependent code.
引用
收藏
页码:41 / 50
页数:10
相关论文
共 20 条
  • [1] [Anonymous], 2008, CUDA Programming Guide, V1st
  • [2] [Anonymous], 2012, OPENCL SPECIFICATION
  • [3] Lime: a Java']Java-Compatible and Synthesizable Language for Heterogeneous Architectures
    Auerbach, Joshua
    Bacon, David F.
    Cheng, Perry
    Rabbah, Rodric
    [J]. ACM SIGPLAN NOTICES, 2010, 45 (10) : 89 - 108
  • [4] Balevic Ana, 2011, 2011 First Workshop on Data-Flow Execution Models for Extreme Scale Computing (DFM), P53, DOI 10.1109/DFM.2011.10
  • [5] Balevic Ana, 2011, Computer Architecture News, V39, P66, DOI 10.1145/2082156.2082173
  • [6] Benini L, 2012, DES AUT TEST EUROPE, P983
  • [7] Bezati E., 2013, J REAL-TIME IMAGE PR, P1
  • [8] Compiling a High-Level Language for GPUs (via Language Support for Architectures and Compilers)
    Dubach, Christophe
    Cheng, Perry
    Rabbah, Rodric
    Bacon, David F.
    Fink, Stephen J.
    [J]. ACM SIGPLAN NOTICES, 2012, 47 (06) : 1 - 11
  • [9] Efficient Execution of Kahn Process Networks on Multi-Processor Systems Using Protothreads and Windowed FIFOs
    Haid, Wolfgang
    Schor, Lars
    Huang, Kai
    Bacivarov, Iuliana
    Thiele, Lothar
    [J]. 2009 IEEE/ACM/IFIP 7TH WORKSHOP ON EMBEDDED SYSTEMS FOR REAL-TIME MULTIMEDIA, 2009, : 35 - 44
  • [10] Hormati A, 2011, ACM SIGPLAN NOTICES, V46, P381, DOI [10.1145/1961295.1950409, 10.1145/1961296.1950409]