Exploiting coarse-grained task, data, and pipeline parallelism in stream programs

Architectural Support for Programming Languages and Operating Systems(2006)

引用 763|浏览821
暂无评分
摘要
As multicore architectures enter the mainstream, there is a press- ing demand for high-level programming models that can effectively map to them. Stream programming offers an attractive way to ex- pose coarse-grained parallelism, as streaming applications (image, video, DSP, etc.) are naturally represented by independent filters that communicate over explicit data channels. In this paper, we demonstrate an end-to-end stream compiler that attains robust multicore performance in the face of varying ap- plication characteristics. As benchmarks exhibit different amounts of task, data, and pipeline parallelism, we exploit all types of par- allelism in a unified manner in order to achieve this generality. Our compiler, which maps from the StreamIt language to the 16-core Raw architecture, attains a 11.2x mean speedup over a single-core baseline, and a 1.84x speedup over our previous work.
更多
查看译文
关键词
high-level programming model,pipeline parallelism,explicit data channel,coarse-grained parallelism,16-core raw architecture,robust multicore performance,mean speedup,end-to-end stream compiler,multicore architecture,stream programming,coarse-grained task,software pipelining,multicore,streams,programming model
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要