DASS: combining dynamic and static scheduling in high-level synthesis
File(s)
Author(s)
Cheng, Jianyi
Josipovic, Lana
Constantinides, George A
Ienne, Paolo
Wickerson, John
Type
Journal Article
Abstract
A central task in high-level synthesis is scheduling: the allocation of operations to clock cycles. The classic approach to scheduling is static, in which each operation is mapped to a clock cycle at compile-time, but recent years have seen the emergence of dynamic scheduling, in which an operation’s clock cycle is only determined at run-time. Both approaches have their merits: static scheduling can lead to simpler circuitry and more resource sharing, while dynamic scheduling can lead to faster hardware when the computation has non-trivial control flow. In this work, we seek a scheduling approach that combines the best of both worlds. Our idea is to identify the parts of the input program where dynamic scheduling does not bring any performance advantage and to use static scheduling on those parts. These statically-scheduled parts are then treated as black boxes when creating a dataflow circuit for the remainder of the program which can benefit from the flexibility of dynamic scheduling. An empirical evaluation on a range of applications suggests that by using this approach, we can obtain 74% of the area savings that would be made by switching from dynamic to static scheduling, and 135% of the performance benefits that would be made by switching from static to dynamic scheduling.
Date Issued
2022-03-01
Date Acceptance
2021-02-24
Citation
IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 2022, 41 (3), pp.628-641
ISSN
0278-0070
Publisher
Institute of Electrical and Electronics Engineers (IEEE)
Start Page
628
End Page
641
Journal / Book Title
IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
Volume
41
Issue
3
Copyright Statement
© 2021 The Author(s). This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 License. For more information, see https://creativecommons.org/licenses/by-nc-nd/4.0/
Sponsor
Engineering & Physical Science Research Council (EPSRC)
Identifier
https://ieeexplore.ieee.org/document/9378784
Grant Number
EP/P010040/1
Subjects
Computer Hardware & Architecture
0906 Electrical and Electronic Engineering
1006 Computer Hardware
Publication Status
Published
Date Publish Online
2021-03-15