A lightweight streaming layer for multicore execution

Author:

Zhang David1,Li Qiuyuan J.1,Rabbah Rodric2,Amarasinghe Saman1

Affiliation:

1. MIT Computer Science and Artificial Intelligence Laboratory

2. IBM T. J. Watson Research Center

Abstract

As multicore architectures gain widespread use, it becomes increasingly important to be able to harness their additional processing power to achieve higher performance. However, exploiting parallel cores to improve single-program performance is difficult from a programmer's perspective because most existing programming languages dictate a sequential method of execution. Stream programming, which organizes programs by independent filters communicating over explicit data channels, exposes useful types of parallelism that can be exploited. However, there is still the burden of mapping high-level stream programs to specific multicore architectures. The complexities of each architecture's underlying details makes it difficult to schedule the execution of a stream program with high performance. In this paper, we present the specifications for an intermediate layer between the stream program and the target architecture. This multicore streaming layer (MSL) provides a common level of abstraction that facilitates efficient execution of stream programs by making it easier for compilers to manage computation, and by providing automatic orchestration and optimization of communication when appropriate. We implemented a framework for one such instance of the MSL targeted to the Cell processor and the StreamIt language and achieved greater than 88% utilization on all benchmarks with relatively small amounts of code. The framework can also be applied to other architectures and stream programming languages to enhance generality and portability.

Funder

National Science Foundation

Defense Advanced Research Projects Agency

Division of Computer and Network Systems

Publisher

Association for Computing Machinery (ACM)

Reference18 articles.

1. StreamIt homepage. http://cag.csail.mit.edu/streamit/. StreamIt homepage. http://cag.csail.mit.edu/streamit/.

2. Memory---CellSs

3. Brook for GPUs

Cited by 18 articles. 订阅此论文施引文献 订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献

1. High-Level and Productive Stream Parallelism for Dedup, Ferret, and Bzip2;International Journal of Parallel Programming;2018-02-01

2. Mapping stream programs onto multicore platforms by local search and genetic algorithm;Computer Languages, Systems & Structures;2016-11

3. River: an intermediate language for stream processing;Software: Practice and Experience;2015-06-05

4. Data-Parallel String-Manipulating Programs;ACM SIGPLAN Notices;2015-05-11

5. Data-Parallel String-Manipulating Programs;Proceedings of the 42nd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages;2015-01-14

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3