Tensor Optimization for High-Level Synthesis Design Flows

被引:5
|
作者
Siracusa, Marco [1 ]
Ferrandi, Fabrizio [1 ]
机构
[1] Politecn Milan, Elettron Informaz & Bioingn, I-20133 Milan, Italy
关键词
Design optimization; field programmable gate arrays; high-level synthesis; memory management; MODEL;
D O I
10.1109/TCAD.2020.3012318
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Improving data locality of tensor data structures is a crucial optimization for maximizing the performance of machine learning and intensive linear algebra applications. While CPUs and GPUs improve data locality by means of automated caching mechanisms, FPGAs let the developer specify data structure allocation. Although this feature enables a high degree of customizability, the increasing complexity and memory footprint of modern applications prevent considering any manual approach to find an optimal allocation. For this reason, we propose a compiler optimization to automatically improve the tensor allocation of high-level software descriptions. The optimization is controlled by a flexible cost model that can be tuned by means of simple yet expressive callback functions. In this way, the user can tailor the optimization strategy with respect to the optimization goal. We tested our methodology integrating our optimization in the Bambu open-source HLS framework. In this setting, we achieved a 14% speedup on the digit recognition version proposed by the Rosetta benchmark. Moreover, we tested our optimization on the CHStone benchmark suite, achieving an average of 6% speedup. Finally, we applied our methodology on two industrial examples from the aerospace domain obtaining a 15% speedup. As a final step, we tested the versatility of our methodology inserting our optimization in the Clang software optimization flow achieving a 12% speedup on the Rosetta benchmark when running on CPU.
引用
收藏
页码:4217 / 4228
页数:12
相关论文
共 50 条
  • [41] High-level system synthesis and optimization of dataflow programs for MPSoCs
    Bezati, E.
    Brunet, S. Casale
    Mattavelli, M.
    Janneck, J. W.
    2016 50TH ASILOMAR CONFERENCE ON SIGNALS, SYSTEMS AND COMPUTERS, 2016, : 417 - 421
  • [42] Parametrisable Digital Design of a Sphere Decoder with High-Level Synthesis
    Knoop, Benjamin
    Schwez, Liam
    Peters-Drolshagen, Dagmar
    Paul, Steffen
    2017 25TH EUROPEAN SIGNAL PROCESSING CONFERENCE (EUSIPCO), 2017, : 1349 - 1353
  • [43] SpecHLS: Speculative Accelerator Design Using High-Level Synthesis
    Gorius, Jean-Michel
    Rokicki, Simon
    Derrien, Steven
    IEEE MICRO, 2022, 42 (05) : 99 - 107
  • [44] HIGH-LEVEL SOFTWARE SYNTHESIS FOR THE DESIGN OF COMMUNICATION-SYSTEMS
    RITZ, S
    PANKERT, M
    ZIVOJNOVIC, V
    MEYR, H
    IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, 1993, 11 (03) : 348 - 358
  • [45] Divide and Conquer High-Level Synthesis Design Space Exploration
    Schafer, Benjamin Carrion
    Wakabayashi, Kazutoshi
    ACM TRANSACTIONS ON DESIGN AUTOMATION OF ELECTRONIC SYSTEMS, 2012, 17 (03)
  • [46] High-Level Synthesis Algorithm for the Design of Reconfigurable Constant Multiplier
    Chen, Jiajia
    Chang, Chip-Hong
    IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, 2009, 28 (12) : 1844 - 1856
  • [47] Review of Electronic Design Automation Tools for High-Level Synthesis
    Madariaga, Ander
    Jimenez, Jaime
    Luis Martin, Jose
    Bidarte, Unai
    Zuloaga, Aitzol
    2010 INTERNATIONAL CONFERENCE ON APPLIED ELECTRONICS, 2010, : 203 - 208
  • [48] THE FUTURE OF HIGH-LEVEL DESIGN
    DEGEUS, AJ
    ELECTRONIC DESIGN, 1992, 40 (24) : 122 - 122
  • [49] HIGH-LEVEL LANGUAGE DESIGN
    ALLWEISS, JA
    MCCLINTOCK, JH
    DATAMATION, 1981, 27 (04): : 186 - &
  • [50] System on Chip Design with Vivado High-Level Synthesis Tool
    Bilgili, Bans
    Yamaneren, Ceyhun
    Vatansever, Kubilav
    Coltu, Umut
    Ors, Berna
    2019 11TH INTERNATIONAL CONFERENCE ON ELECTRICAL AND ELECTRONICS ENGINEERING (ELECO 2019), 2019, : 1047 - 1050