str2rts: refactored streamit benchmarks into statically...
TRANSCRIPT
![Page 1: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/1.jpg)
Institut de Recherche en Informatique et Systèmes Aléatoires
Benjamin Rouxel Isabelle Puaut [email protected] [email protected]
STR2RTS: Refactored StreamIT benchmarks into statically analyzable parallel benchmarks for WCET estimation & real-time scheduling
![Page 2: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/2.jpg)
2/20
Context
Mul$-coreembeddedreal-$mesystems
Scheduling/mappingapplica$onsontargetarchitecture
Needtoevaluatenewscheduling/mappingtechniques
![Page 3: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/3.jpg)
3/20
Scheduling algorithms evaluation
Ø SchedulabilityanalysisUsemathema$calformulastoproveschedulability
Ø Implementa$on-based• Virtual:Simulatetheschedule’sresultfromalgorithm• Real:ImplementtheschedulingalgorithmonaplaDorm
Task-setrequiredatanyevalua$onlevel
![Page 4: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/4.jpg)
4/20
High-levelrequirements
Ø Unbiasedtask-setØ Representa$vecaseØ Mustbereproducible/reusablebyothersØ Independentfrompar$cularrun$me/architecture
![Page 5: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/5.jpg)
5/20
Taskmodelproper$es
Ø Dependentand/orIndependentØ Periodicand/orSporadicØ Single-/Mul$-graphØ Mixed-cri$cality
![Page 6: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/6.jpg)
6/20
Task-levelproper$es
Ø Worst-CaseExecu$onTime(WCET)(sourcecode,loopbounds,...)
Ø MemorydemandØ PeriodicityØ DeadlineØ Precedencerela$onshipØ ...
![Page 7: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/7.jpg)
7/20
UsableExis$ngSolu$onsSummarySynthetic Real application
Independent Uunifast [1] Task-set generator from TACleBench [3]
Periodic
Uunifast [1] Mälardalen [4] combination
Sporadic
Dependent TGFF [2] Debie [5], Papabench [6], Rosace [7]
Single-graph
TGFF [2] Multi-graph
![Page 8: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/8.jpg)
8/20
Otherexis$ngbenchmarkssuites
Ø Nodesignformul$-coreØ NostructuredCsourcecodeØ Noiden$fiedTasksanddependencyØ Underlicence
TACleBenchsuite:notenoughparallelbenchmarks
SPECCPU2006,PolyBench,ParMiBench,JemBench,ParaSuite,StreamIT,Parsec,UTDSP,...
![Page 9: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/9.jpg)
STR2RTS:STReamittoRealTimeSystem
![Page 10: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/10.jpg)
10/20
StreamITbackground
Programminglanguage&compila$oninfrastructureBenchmarksuite
Sta$cstructureofstreamingapplica$ons graphoffilters(fork-joingraph)
Fixeddata-rateknownatcompile$meMul$-levelexploitableparallelism
data,task,itera$onparallelism(pipelining)
![Page 11: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/11.jpg)
11/20
ExampleofStreamItbenchmark:radix-2caseofaFastFourierTransform
![Page 12: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/12.jpg)
12/20
Whatwepropose
Dependenttasksrepresentedbyasingle-graph adescrip$onofthetask’sdependency(XMLfile)
Everyinforma$ontocomputeasta$cWCETisavailablestructuredCsourcecode,loopbounds(Csourcefile)
![Page 13: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/13.jpg)
13/20
ExampleofSTR2RTSbenchmark:radix-2caseofaFastFourierTransform
![Page 14: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/14.jpg)
14/20
ExampleofSTR2RTSbenchmark:radix-2caseofaFastFourierTransform
![Page 15: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/15.jpg)
15/20
ExampleofSTR2RTSbenchmark:radix-2caseofaFastFourierTransform
![Page 16: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/16.jpg)
16/20
Exploi$ngtheStreamITinfrastructure
![Page 17: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/17.jpg)
17/20
Availablebenchmarks11benchmarks
![Page 18: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/18.jpg)
18/20
Proper$esofavailablebenchmarks
![Page 19: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/19.jpg)
19/20
Howtoh`ps://gitlab.inria.fr/brouxel/STR2RTS
![Page 20: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/20.jpg)
20/20
Conclusion
DependenttasksSta$callyanalyzableXMLdescrip$on+structuredCsourceInspiredbyStreamIT
h`ps://gitlab.inria.fr/brouxel/STR2RTS
![Page 21: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/21.jpg)
[1]EnricoBiniandGiorgioCBu`azzo.Measuringtheperformanceofschedulabilitytests.Real-TimeSystems,2005.[2]RobertPDick,DavidLRhodes,andWayneWolf.Tgff:taskgraphsforfree.In6thworkshoponHardware/sohwarecodesign,1998.[3]YorickDeBock,Sebas$anAltmeyer,JanBroeckhove,andPeterHellinckx.Task-setgeneratorforschedulabilityanalysisusingthetaclebenchbenchmarksuite.Workshop:EWiLi2016.[4]JanGustafsson,AdamBe`s,AndreasErmedahl,andBjörnLisper.TheMälardalenWCETbenchmarks–past,presentandfuture.OCG2010.[5]Debie1.URL:h`ps://www.irit.fr/wiki/doku.php?id=wtc:benchmarks:debie1.[6]FadiaNemer,HuguesCassé,PascalSainrat,Jean-PaulBahsoun,andMarianneDeMichiel.Papabench:afreereal-$mebenchmark.InOASIcs-OpenAccessSeriesinInforma$cs,volume4,2006.[7]ClairePageu,DavidSaussié,RomainGra$a,EricNoulard,andPierreSiron.TheROSACECaseStudy:FromSimulinkSpecifica$ontoMul$/Many-CoreExecu$on.In20thIEEERTAS2014.
![Page 22: STR2RTS: Refactored StreamIT benchmarks into statically …embedded.cs.uni-saarland.de/wcet-presentations/STR2RTS.pdf · 2017-06-28 · [1] Enrico Bini and Giorgio C Bu‘azzo. Measuring](https://reader034.vdocument.in/reader034/viewer/2022050206/5f5937703d361d1396626c53/html5/thumbnails/22.jpg)
22/20
Anecessaryhandmadestep
Ø Hardtransforma$onpassesØ Loopboundiden$fica$onØ HardtodebugcompilerØ Nomajorcommitinappsfolderongithubfor6years