{"title":"Software pipelining: an evaluation of enhanced pipelining","authors":"Reese B. Jones, V. Allan","doi":"10.1145/123465.123481","DOIUrl":null,"url":null,"abstract":"Software Pipelining is a fine-grain loop optimization technique for architectures that support synchronous parallel execution. We compare Lam’s software pipelining algorithm with Ebcio~lu and Nakatani’s technique. This research seems to indicate the Enhanced Pipeline Scheduling algorithm is a good general purpose software pipelining algorithm, due to the fact that it performs only slightly worse than Lam’s algorithm on single basic block loops and should perform better than Lam’s algorithm on multiple basic block loops. However, if pipelining single basic block loops is the goal, it appears that it would be better to use Lam’s algorithm. We s3so propose a technique for changing the resource constrained scheduling priority of operations to prevent operations from future iterations from being significantly delayed due to resource confllcts.","PeriodicalId":118572,"journal":{"name":"MICRO 24","volume":"47 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1991-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"25","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"MICRO 24","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/123465.123481","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 25
Abstract
Software Pipelining is a fine-grain loop optimization technique for architectures that support synchronous parallel execution. We compare Lam’s software pipelining algorithm with Ebcio~lu and Nakatani’s technique. This research seems to indicate the Enhanced Pipeline Scheduling algorithm is a good general purpose software pipelining algorithm, due to the fact that it performs only slightly worse than Lam’s algorithm on single basic block loops and should perform better than Lam’s algorithm on multiple basic block loops. However, if pipelining single basic block loops is the goal, it appears that it would be better to use Lam’s algorithm. We s3so propose a technique for changing the resource constrained scheduling priority of operations to prevent operations from future iterations from being significantly delayed due to resource confllcts.