Improving Communication Patterns in Polyhedral Process Networks
Christophe Alias

TL;DR
This paper introduces an algorithm to optimize communication patterns in FPGA-based embedded systems, significantly improving FIFO channel detection after loop tiling, which enhances performance and can reduce storage needs.
Contribution
The paper presents a novel algorithm for partitioning communications in polyhedral process networks, enabling better FIFO channel recovery post-loop tiling.
Findings
Drastic improvement in FIFO detection for regular kernels
Additional storage is required but can be reduced in some cases
Enhanced communication optimization leads to performance gains
Abstract
Embedded system performances are bounded by power consumption. The trend is to offload greedy computations on hardware accelerators as GPU, Xeon Phi or FPGA. FPGA chips combine both flexibility of programmable chips and energy-efficiency of specialized hardware and appear as a natural solution. Hardware compilers from high-level languages (High-level synthesis, HLS) are required to exploit all the capabilities of FPGA while satisfying tight time-to-market constraints. Compiler optimizations for parallelism and data locality restructure deeply the execution order of the processes, hence the read/write patterns in communication channels. This breaks most FIFO channels, which have to be implemented with addressable buffers. Expensive hardware is required to enforce synchronizations, which often results in dramatic performance loss. In this paper, we present an algorithm to partition the…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsEmbedded Systems Design Techniques · Parallel Computing and Optimization Techniques · Big Data and Digital Economy
