Temporal vectorization: a compiler approach to automatic multi-pumping

Carl-Johannes Johnsen, Tiziano De Matteis, Tal Ben-Nun, Johannes De Fine Licht, Torsten Hoefler

Research output: Chapter in Book / Report / Conference proceedingConference contributionAcademicpeer-review

Abstract

The multi-pumping resource sharing technique can overcome the limitations commonly found in single-clocked FPGA designs by allowing hardware components to operate at a higher clock frequency than the surrounding system. However, this optimization cannot be expressed in high levels of abstraction, such as HLS, requiring the use of hand-optimized RTL. In this paper we show how to leverage multiple clock domains for computational subdomains on reconfigurable devices through data movement analysis on high-level programs.We offer a novel view on multi-pumping as a compiler optimization - a superclass of traditional vectorization. As multiple data elements are fed and consumed, the computations are packed temporally rather than spatially. The optimization is applied automatically using an intermediate representation that maps high-level code to HLS. Internally, the optimization injects modules into the generated designs, incorporating RTL for finegrained control over the clock domains. We obtain a reduction of resource consumption by up to 50% on critical components and 23% on average. For scalable designs, this can enable further parallelism, increasing overall performance.
Original languageEnglish
Title of host publicationProceedings of the 41st IEEE/ACM International Conference on Computer-Aided Design, ICCAD 2022
PublisherInstitute of Electrical and Electronics Engineers Inc.
ISBN (Electronic)9781450392174
DOIs
Publication statusPublished - 30 Oct 2022
Externally publishedYes
Event41st IEEE/ACM International Conference on Computer-Aided Design, ICCAD 2022 - San Diego, United States
Duration: 30 Oct 20224 Nov 2022

Publication series

NameIEEE/ACM International Conference on Computer-Aided Design, Digest of Technical Papers, ICCAD
ISSN (Print)1092-3152

Conference

Conference41st IEEE/ACM International Conference on Computer-Aided Design, ICCAD 2022
Country/TerritoryUnited States
CitySan Diego
Period30/10/224/11/22

Funding

This project received funding from the European Research Council (ERC) grant PSAP, grant agreement No. 101002047, and the European Union s Horizon Europe programme DEEP-SEA, grant agreement No. 955606 This project received funding from the European Research Council (ERC) grant PSAP, grant agreement No. 101002047, and the European Union’s Horizon Europe programme DEEP-SEA, grant agreement No. 955606. C.J. was funded by the Innovation Fund Denmark (IFD) under File No. 8057-00012B, the IFD Grand Solutions project “Adaptive X-ray InSpection”. T.B.N. is supported by the Swiss National Science Foundation (Am-bizione Project #185778). We acknowledge the Xilinx University Program for providing access to the AMD Xilinx Heterogeneous Accelerated Compute Cluster (HACC) at ETH Zurich.

FundersFunder number
European Union s Horizon Europe programme DEEP-SEA
European Union’s Horizon Europe programme DEEP-SEA955606
Innovationsfonden8057-00012B
European Research Council101002047
Schweizerischer Nationalfonds zur Förderung der Wissenschaftlichen Forschung185778

    Fingerprint

    Dive into the research topics of 'Temporal vectorization: a compiler approach to automatic multi-pumping'. Together they form a unique fingerprint.

    Cite this