Pipelined execution of data-parallel algorithms
Maksim Gorev, Raimund Ubar · 2014
A combination of pipelining and data-parallel execution on multiprocessor systems is proposed. The use of pipelining in coarse-grained data-parallel applications can be more advantageous, than the classical data-parallel approach. It is used in order to reduce redundant data transfers for all cores, involved in processing. Class of simulation applications is taken as an example to illustrate principles of the method. It is shown, that overall execution time could be reduced by significant amount of time required to transfer the model data. Set of experiments was carried out using a desktop multicore processor and OpenCL framework for parallel execution. Experimental results show that speedup is achievable even on general-purpose MPSoC platforms.