Affiliation:
1. University of Michigan, Ann Arbor, MI, USA
Abstract
While multicore hardware has become ubiquitous, explicitly parallel programming models and compiler techniques for exploiting parallelism on these systems have noticeably lagged behind. Stream programming is one model that has wide applicability in the multimedia, graphics, and signal processing domains. Streaming models execute as a set of independent actors that explicitly communicate data through channels. This paper presents a compiler technique for planning and orchestrating the execution of streaming applications on multicore platforms. An integrated unfolding and partitioning step based on integer linear programming is presented that unfolds data parallel actors as needed and maximally packs actors onto cores. Next, the actors are assigned to pipeline stages in such a way that all communication is maximally overlapped with computation on the cores. To facilitate experimentation, a generalized code generation template for mapping the software pipeline onto the Cell architecture is presented. For a range of streaming applications, a geometric mean speedup of 14.7x is achieved on a 16-core Cell platform compared to a single core.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Cited by
47 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Phloem: Automatic Acceleration of Irregular Applications with Fine-Grain Pipeline Parallelism;2023 IEEE International Symposium on High-Performance Computer Architecture (HPCA);2023-02
2. Tiny but mighty;Proceedings of the 49th Annual International Symposium on Computer Architecture;2022-06-11
3. Optimizing Cache Accesses with Tensor Memory Format Search for Transformers in TVM;Lecture Notes in Computer Science;2022
4. Pipette: Improving Core Utilization on Irregular Applications through Intra-Core Pipeline Parallelism;2020 53rd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO);2020-10
5. A Fast Heuristic to Pipeline SDF Graphs;Lecture Notes in Computer Science;2020