Dependence Graph Preprocessing for Faster Exact Modulo Scheduling in High-Level Synthesis

Modulo scheduling is a key throughput optimisation when compiling for VLIW architectures, which has been applied successfully to high-level synthesis (HLS) of hardware accelerators in the past. However, problem instances in the HLS context usually have larger and denser dependence graphs and may con...

Full description

Saved in:
Bibliographic Details
Published in2018 28th International Conference on Field Programmable Logic and Applications (FPL) pp. 280 - 2806
Main Authors Oppermann, Julian, Reuter-Oppermann, Melanie, Sommer, Lukas, Sinnen, Oliver, Koch, Andreas
Format Conference Proceeding
LanguageEnglish
Published IEEE 01.08.2018
Subjects
Online AccessGet full text
ISSN1946-1488
DOI10.1109/FPL.2018.00055

Cover

Abstract Modulo scheduling is a key throughput optimisation when compiling for VLIW architectures, which has been applied successfully to high-level synthesis (HLS) of hardware accelerators in the past. However, problem instances in the HLS context usually have larger and denser dependence graphs and may contain many simple operations that are not subject to resource constraints, causing long runtimes with VLIW-centric modulo schedulers. We propose a complexity-reduction approach for existing exact modulo schedulers that retains their ability to compute provably optimal schedules, but shortens their runtime on typical HLS instances. The basic idea is to simplify a problem instance's dependence graph by abstracting entire subgraphs of non-critical operations with a single edge, then schedule this reduced problem comprising only the critical operations. A solution obtained for the reduced problem can be easily completed to a solution for the original problem. Applied to the well-known, originally VLIW-centric, and exact ILP formulation by Eichenberger and Davidson, we show a mean speedup of 4.37x for 21 large instances, which makes it competitive again with the recently proposed, HLS-tailored Moovac formulation. As both formulations show different problem-dependent strengths and weaknesses, these insights are a first step towards an oracle that selects the most promising scheduler for a given problem instance.
AbstractList Modulo scheduling is a key throughput optimisation when compiling for VLIW architectures, which has been applied successfully to high-level synthesis (HLS) of hardware accelerators in the past. However, problem instances in the HLS context usually have larger and denser dependence graphs and may contain many simple operations that are not subject to resource constraints, causing long runtimes with VLIW-centric modulo schedulers. We propose a complexity-reduction approach for existing exact modulo schedulers that retains their ability to compute provably optimal schedules, but shortens their runtime on typical HLS instances. The basic idea is to simplify a problem instance's dependence graph by abstracting entire subgraphs of non-critical operations with a single edge, then schedule this reduced problem comprising only the critical operations. A solution obtained for the reduced problem can be easily completed to a solution for the original problem. Applied to the well-known, originally VLIW-centric, and exact ILP formulation by Eichenberger and Davidson, we show a mean speedup of 4.37x for 21 large instances, which makes it competitive again with the recently proposed, HLS-tailored Moovac formulation. As both formulations show different problem-dependent strengths and weaknesses, these insights are a first step towards an oracle that selects the most promising scheduler for a given problem instance.
Author Sommer, Lukas
Oppermann, Julian
Sinnen, Oliver
Koch, Andreas
Reuter-Oppermann, Melanie
Author_xml – sequence: 1
  givenname: Julian
  surname: Oppermann
  fullname: Oppermann, Julian
– sequence: 2
  givenname: Melanie
  surname: Reuter-Oppermann
  fullname: Reuter-Oppermann, Melanie
– sequence: 3
  givenname: Lukas
  surname: Sommer
  fullname: Sommer, Lukas
– sequence: 4
  givenname: Oliver
  surname: Sinnen
  fullname: Sinnen, Oliver
– sequence: 5
  givenname: Andreas
  surname: Koch
  fullname: Koch, Andreas
BookMark eNotzE9PwjAcxvFqNBGRqxcvfQPDdv1_NMjAZEYS9OCJlPY3VoPd0k4j716Inp7v4ZPnGl3ELgJCt5RMKSXmvlrV05JQPSWECHGGJkZpKpiWWlDFz9GIGi4LyrW-QpOcP8jJcaWFHKH3R-gheogO8CLZvsWrBH3qHOQc4g43XcKVzQMkPP-xbsDPnf_ad3jtWjjGiYSIl2HXFjV8wx6vD3FoIYd8gy4bu88w-d8xeqvmr7NlUb8snmYPdRGoEkPRMGe0LSX3lnvNhfOylMaUdOuN2irHVeO5JEw6T7xjTCglGg8WLGPGWcXG6O7vNwDApk_h06bDRosjJYb9AqAcVJU
CODEN IEEPAD
ContentType Conference Proceeding
DBID 6IE
6IL
CBEJK
RIE
RIL
DOI 10.1109/FPL.2018.00055
DatabaseName IEEE Electronic Library (IEL) Conference Proceedings
IEEE Proceedings Order Plan All Online (POP All Online) 1998-present by volume
IEEE Xplore All Conference Proceedings
IEEE Xplore
IEEE Proceedings Order Plans (POP All) 1998-Present
DatabaseTitleList
Database_xml – sequence: 1
  dbid: RIE
  name: IEEE Electronic Library (IEL)
  url: https://proxy.k.utb.cz/login?url=https://ieeexplore.ieee.org/
  sourceTypes: Publisher
DeliveryMethod fulltext_linktorsrc
Discipline Engineering
EISBN 9781538685174
1538685175
EISSN 1946-1488
EndPage 2806
ExternalDocumentID 8533509
Genre orig-research
GroupedDBID 6IE
6IF
6IL
6IN
AAJGR
AAWTH
ABLEC
ALMA_UNASSIGNED_HOLDINGS
BEFXN
BFFAM
BGNUA
BKEBE
BPEOZ
CBEJK
IEGSK
OCL
RIB
RIC
RIE
RIL
ID FETCH-LOGICAL-i175t-f3c98a264da4d845cd6269921bd97b7c47fd46036cd0dc335775fdeaea339ca73
IEDL.DBID RIE
IngestDate Wed Aug 27 02:49:53 EDT 2025
IsPeerReviewed false
IsScholarly false
Language English
LinkModel DirectLink
MergedId FETCHMERGED-LOGICAL-i175t-f3c98a264da4d845cd6269921bd97b7c47fd46036cd0dc335775fdeaea339ca73
PageCount 2527
ParticipantIDs ieee_primary_8533509
PublicationCentury 2000
PublicationDate 2018-Aug
PublicationDateYYYYMMDD 2018-08-01
PublicationDate_xml – month: 08
  year: 2018
  text: 2018-Aug
PublicationDecade 2010
PublicationTitle 2018 28th International Conference on Field Programmable Logic and Applications (FPL)
PublicationTitleAbbrev FPL
PublicationYear 2018
Publisher IEEE
Publisher_xml – name: IEEE
SSID ssj0000547856
ssj0002683745
Score 1.6860543
Snippet Modulo scheduling is a key throughput optimisation when compiling for VLIW architectures, which has been applied successfully to high-level synthesis (HLS) of...
SourceID ieee
SourceType Publisher
StartPage 280
SubjectTerms complexity reduction
Delays
high level synthesis
modulo scheduling
Optimal scheduling
Processor scheduling
Runtime
Schedules
Throughput
VLIW
Title Dependence Graph Preprocessing for Faster Exact Modulo Scheduling in High-Level Synthesis
URI https://ieeexplore.ieee.org/document/8533509
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
link http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwjV1NS8NAEF1qT3rxoxW_2YNH0ybdbJI9a6NIK4VaqKeyn1KUpNgU1F_vTBJrEQ_ekrALm50k83bz3htCLiPB48AkzJNSGA_wrQ_vHHwMLRMujKRSvCzaN3yI7ibh_ZRPG-RqrYWx1pbkM9vBw_Jfvsn1CrfKupBaGEe13hY8ZpVWa72f4qMxVe0Lg-e9CJZeIa99GgNfdNPRAKlcyJ30Udm3UU2lTCbpLhl-D6PikLx0VoXq6M9fDo3_Heceaf_I9uhonZD2ScNmB2Rnw3GwRZ5u6qK30PQWvaqhg11UYgFoQAHC0lSieQLtv0td0GFuVq85HUNsDZLWn-k8o0gO8QZIN6Ljjwwg5HK-bJNJ2n-8vvPq6greHCBD4TmmRSIBDxkZmiTk2sDaRoheoIyIVazD2JkwggSnjW803FAcc2estJIxoWXMDkkzyzN7RCjAHOjrEoM61Qh6B045ptCdzriA8WPSwkmaLSoDjVk9Pyd_Xz4l2ximimV3RprF28qeQ-Yv1EUZ8i8A4KyM
linkProvider IEEE
linkToHtml http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwjV3PT4MwFG4WPagXf2zG3_bgUTZYKdCzDqfCsmRbMk9LaYtZNGxxLFH_et8DnIvx4A1Im5S-wPvaft_3CLnyBPcdHTBLSqEtwLc2fHPwMzRMpK4nk4QXRfvintcduQ9jPq6R65UWxhhTkM9MEy-Ls3w9U0vcKmtBamEc1XqbkPddXqq1VjsqNlpTVc4weN_2YPHl8sqp0bFFK-xHSOZC9qSN2r61eipFOgl3Sfw9kJJF8tJc5klTff7yaPzvSPdI40e4R_urlLRPaiY7IDtrnoN18nRblb2FpnfoVg0dzLyUC0ADCiCWhhLtE2jnXaqcxjO9fJ3RAURXI239mU4zivQQK0LCER18ZAAiF9NFg4zCzvCma1X1FawpgIbcSpkSgQREpKWrA5crDasbIdpOooWf-Mr1U-16kOKUtrWCF_J9nmojjWRMKOmzQ7KRzTJzRCgAHeibBhqVqh70dtIkZQn60-nUYfyY1HGSJvPSQmNSzc_J348vyVZ3GEeT6L73eEq2MWQl5-6MbORvS3MOOCBPLorwfwE5Ta_Z
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=proceeding&rft.title=2018+28th+International+Conference+on+Field+Programmable+Logic+and+Applications+%28FPL%29&rft.atitle=Dependence+Graph+Preprocessing+for+Faster+Exact+Modulo+Scheduling+in+High-Level+Synthesis&rft.au=Oppermann%2C+Julian&rft.au=Reuter-Oppermann%2C+Melanie&rft.au=Sommer%2C+Lukas&rft.au=Sinnen%2C+Oliver&rft.date=2018-08-01&rft.pub=IEEE&rft.eissn=1946-1488&rft.spage=280&rft.epage=2806&rft_id=info:doi/10.1109%2FFPL.2018.00055&rft.externalDocID=8533509