DocumentCode :
669764
Title :
Exploiting the parallelism of heterogeneous systems using dataflow graphs on top of OpenCL
Author :
Schor, Lars ; Tretter, Andreas ; Scherer, Theo ; Thiele, Lothar
Author_Institution :
Comput. Eng. & Networks Lab., ETH Zurich, Zurich, Switzerland
fYear :
2013
fDate :
3-4 Oct. 2013
Firstpage :
41
Lastpage :
50
Abstract :
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.
Keywords :
application program interfaces; data flow graphs; parallel programming; pipeline processing; OpenCL; SDF; SIMD; common low-level API; data transfer; heterogeneous system programming; memory access latency; multilevel parallelism; pipeline parallelism; synchronization; synchronous dataflow graph; task parallelism; task scheduling; Graphics processing units; Hardware; Kernel; Parallel processing; Ports (Computers); Programming; Random access memory; Automatic synthesis; OpenCL; SDF graphs; dataflow languages; heterogenous systems;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Embedded Systems for Real-time Multimedia (ESTIMedia), 2013 IEEE 11th Symposium on
Conference_Location :
Montreal, QC
Type :
conf
DOI :
10.1109/ESTIMedia.2013.6704502
Filename :
6704502
Link To Document :
بازگشت