dataflow:pdp:12 (In proceedings)
|
Author(s) | Marco Aldinucci, Marco Danelutto, Lorenzo Anardu, Massimo Torquati and Peter Kilpatrick |
Title | « Parallel patterns + Macro Data Flow for multi-core programming » |
In | Proc. of Intl. Euromicro PDP 2012: Parallel Distributed and network-based Processing |
Page(s) | 27-36 |
Year | 2012 |
Publisher | IEEE |
Address | Garching, Germany |
URL | http://calvados.di.unipi.it/storage/paper_files/2012_mdf_PDP.pdf |
Abstract & Keywords |
Data flow techniques have been around since the early '70s when they were used in compilers for sequential languages. Shortly after their introduction they were also considered as a possible model for parallel computing, although the impact here was limited. Recently, however, data flow has been identified as a candidate for efficient implementation of various programming models on multi-core architectures. In most cases, however, the burden of determining data flow ``macro'' instructions is left to the programmer, while the compiler/run time system manages only the efficient scheduling of these instructions. We discuss a structured parallel programming approach supporting automatic compilation of programs to macro data flow and we show experimental results demonstrating the feasibility of the approach and the efficiency of the resulting ``object'' code on different classes of state-of-the-art multi-core architectures. The experimental results use different base mechanisms to implement the macro data flow run time support, from plain pthreads with condition variables to more modern and effective lock- and fence-free parallel frameworks. Experimental results comparing efficiency of the proposed approach with those achieved using other, more classical, parallel frameworks are also presented.
Keywords: fastflow
|
@inproceedings{dataflow:pdp:12,
month = feb,
author = {Marco Aldinucci and Marco Danelutto and Lorenzo Anardu and Massimo
Torquati and Peter Kilpatrick},
keywords = {fastflow},
booktitle = {Proc. of Intl. Euromicro PDP 2012: Parallel Distributed and
network-based Processing},
url = {http://calvados.di.unipi.it/storage/paper_files/2012_mdf_PDP.pdf},
abstract = {Data flow techniques have been around since the early '70s when
they were used in compilers for sequential languages. Shortly
after their introduction they were also considered as a possible
model for parallel computing, although the impact here was
limited. Recently, however, data flow has been identified as a
candidate for efficient implementation of various programming
models on multi-core architectures. In most cases, however, the
burden of determining data flow ``macro'' instructions is left to
the programmer, while the compiler/run time system manages only
the efficient scheduling of these instructions. We discuss a
structured parallel programming approach supporting automatic
compilation of programs to macro data flow and we show
experimental results demonstrating the feasibility of the approach
and the efficiency of the resulting ``object'' code on different
classes of state-of-the-art multi-core architectures. The
experimental results use different base mechanisms to implement
the macro data flow run time support, from plain pthreads with
condition variables to more modern and effective lock- and
fence-free parallel frameworks. Experimental results comparing
efficiency of the proposed approach with those achieved using
other, more classical, parallel frameworks are also presented.},
address = {Garching, Germany},
title = {Parallel patterns + Macro Data Flow for multi-core programming},
publisher = {IEEE},
year = {2012},
pages = {27-36},
}
This document was generated by bib2html 3.3.
(Modified by Luca Paolini, under the GNU General Public License)