Fussli: A Portable Framework for Exploiting Hybrid Task, Data and Pipeline Parallelism on Multi-cores
Parallelism is the most important mean to exploit the computation potential of multi-core processors. Real applications, particularly, commercial applications often have strong dependence that has to be respected. In order to achieve reasonably good performance, hybrid parallelism schemes usually need to be applied in these applications. Furthermore, parallel applications with task and pipeline parallelism are often developed in a target-orientated manner. Due to a parallel application is likely to run on different hardware platforms, a portable hybrid parallelism approach is attractive. This paper presents Fussli, a portable framework that allows the programmer to express hybrid parallelism with architecture-independent APIs and the framework the back-end takes advantage of hardware features. Along with parallelism expression provided by Fussli APIs, the profiling-driven parallelism mapper finds optimal parallelism configurations for different platforms. Experimental results on four typical applications and on two different multi-core platforms (an 8-core Intel Xeon a 9-core IBM Cell platforms) demonstrate the effectiveness of Fussli. We are able to obtain comparative or better performance for these applications compared to a recent proposed profiling-driven approach.
multi-core fussli hybrid parallelism APIs
Xiaoye Wang Ting Zhang
Zhanjiang Normal University School of Information Science & Technology Zhanjiang, Guangdong Province Lancaster University Lancaster LAI 4YW, United Kingdom
国际会议
太原
英文
88-95
2010-10-22(万方平台首次上网日期,不代表论文的发表时间)