João M. Lourenço Eitan Farchi (Eds.) 3 6 0 8 Multicore Software Engineering, S C Performance, and Tools N L International Conference, MUSEPAT 2013 St. Petersburg, Russia, August 2013 Proceedings 123 Lecture Notes in Computer Science 8063 CommencedPublicationin1973 FoundingandFormerSeriesEditors: GerhardGoos,JurisHartmanis,andJanvanLeeuwen EditorialBoard DavidHutchison LancasterUniversity,UK TakeoKanade CarnegieMellonUniversity,Pittsburgh,PA,USA JosefKittler UniversityofSurrey,Guildford,UK JonM.Kleinberg CornellUniversity,Ithaca,NY,USA AlfredKobsa UniversityofCalifornia,Irvine,CA,USA FriedemannMattern ETHZurich,Switzerland JohnC.Mitchell StanfordUniversity,CA,USA MoniNaor WeizmannInstituteofScience,Rehovot,Israel OscarNierstrasz UniversityofBern,Switzerland C.PanduRangan IndianInstituteofTechnology,Madras,India BernhardSteffen TUDortmundUniversity,Germany MadhuSudan MicrosoftResearch,Cambridge,MA,USA DemetriTerzopoulos UniversityofCalifornia,LosAngeles,CA,USA DougTygar UniversityofCalifornia,Berkeley,CA,USA GerhardWeikum MaxPlanckInstituteforInformatics,Saarbruecken,Germany João M. Lourenço Eitan Farchi (Eds.) Multicore Software Engineering, Performance, and Tools International Conference, MUSEPAT 2013 St. Petersburg, Russia, August 19-20, 2013 Proceedings 1 3 VolumeEditors JoãoM.Lourenço UniversidadeNovadeLisboa,DepartamentodeInformáticaFCT-UNL 2829-516Caparica,Portugal E-mail:[email protected] EitanFarchi HaifaUniversity,IBMHaifaResearchLaboratory 3190501Haifa,Israel E-mail:[email protected] ISSN0302-9743 e-ISSN1611-3349 ISBN978-3-642-39954-1 e-ISBN978-3-642-39955-8 DOI10.1007/978-3-642-39955-8 SpringerHeidelbergDordrechtLondonNewYork LibraryofCongressControlNumber:2013943830 CRSubjectClassification(1998):D.3.3-4,D.2.11,D.1.3,C.1.4,D.2.2,C.3-4 D.2,D.1.5,D.4.1 LNCSSublibrary:SL2–ProgrammingandSoftwareEngineering ©Springer-VerlagBerlinHeidelberg2013 Thisworkissubjecttocopyright.AllrightsarereservedbythePublisher,whetherthewholeorpartof thematerialisconcerned,specificallytherightsoftranslation,reprinting,reuseofillustrations,recitation, broadcasting,reproductiononmicrofilmsorinanyotherphysicalway,andtransmissionorinformation storageandretrieval,electronicadaptation,computersoftware,orbysimilarordissimilarmethodology nowknownorhereafterdeveloped.Exemptedfromthislegalreservationarebriefexcerptsinconnection withreviewsorscholarlyanalysisormaterialsuppliedspecificallyforthepurposeofbeingenteredand executedonacomputersystem,forexclusiveusebythepurchaserofthework.Duplicationofthispublication orpartsthereofispermittedonlyundertheprovisionsoftheCopyrightLawofthePublisher’slocation, initscurrentversion,andpermissionforusemustalwaysbeobtainedfromSpringer.Permissionsforuse maybeobtainedthroughRightsLinkattheCopyrightClearanceCenter.Violationsareliabletoprosecution undertherespectiveCopyrightLaw. Theuseofgeneraldescriptivenames,registerednames,trademarks,servicemarks,etc.inthispublication doesnotimply,evenintheabsenceofaspecificstatement,thatsuchnamesareexemptfromtherelevant protectivelawsandregulationsandthereforefreeforgeneraluse. Whiletheadviceandinformationinthisbookarebelievedtobetrueandaccurateatthedateofpublication, neithertheauthorsnortheeditorsnorthepublishercanacceptanylegalresponsibilityforanyerrorsor omissionsthatmaybemade.Thepublishermakesnowarranty,expressorimplied,withrespecttothe materialcontainedherein. Typesetting:Camera-readybyauthor,dataconversionbyScientificPublishingServices,Chennai,India Printedonacid-freepaper SpringerispartofSpringerScience+BusinessMedia(www.springer.com) Preface It is our pleasure to welcome you to the proceedings of the International Con- ferenceonMulticoreSoftwareEngineering,Performance,andTools(MUSEPAT 2013)! MUSEPAT merges andbringstogether the communities ofthe International Workshops on Multicore Software Engineering (IWMSE) and on Parallel and Distributed Systems: Testing, Analysis and Debugging (PADTAD). MUSEPAT strives to provide a venue where researchers from academia and industry inter- ested in the challenges of multicore systems can present their latest scientific contributions and participate in open discussions. MUSEPAT 2013 continued this tradition and included two keynote addresses, one from the industry and the other from academia, three technical sessions, and a brainstorming session. Thisyear’skeynotespeakerswereDr.ZakharA.Matveev,fromIntel,Russia, andProf.NunoPreguic¸a,fromUniversidadeNovadeLisboa,Portugal.Thecall for papers attracted 25 submissions by 76 authors from all over the world. All papers were rigorouslypeer reviewedby at least three members of the Program Committee. Nine high-quality paperswere acceptedto the conference andorga- nizedintothree mainsessions:PerformanceAnalysisandAlgorithms,Program- mingModelsandOptimization,andTestingandDebugging.Thebrainstorming session is an open time for small group discussions and informal presentations thatallowconferenceparticipantstodiscussandsharenew ideasandchallenges in software engineering for multicore systems. We would like to thank our keynote speakers and all authors for sharing their research contributions with us and with the larger research community. We wouldalsolike tothank the members ofthe ProgramCommittee andexter- nal reviewers for their help in evaluating and selecting high-quality papers, as well as Springer for their support with publishing the proceedings in the LNCS series.WearethankfultotheMUSEPATSteeringCommitteemembersfortheir guidance and support during the planning and organization of this conference. Special thanks also go to Bertrand Meyer, General Chair of the 9th joint meet- ing of the European Software Engineering Conference and the ACM SIGSOFT SymposiumontheFoundationsofSoftwareEngineering(ESEC/FSE2013),and the rest of the ESEC/FSE Organizing Committee for hosting MUESPAT as a co-located conference. Our final thanks go to our corporate sponsors, Intel and IBM Research, who generously support MUSEPAT 2013. VI Preface On behalf of the MSUEPAT 2013 Program Committee, we hope that you find this year’s proceedings interesting and insightful. August 2013 Jo˜ao M. Louren¸co Eitan Farchi Organization Organizing Committee Conference Chair Joa˜o M. Louren¸co Program Chair Eitan Farchi Program Committee Jeremy Bradbury University of Ontario, Institute of Technology, Canada Eitan Farchi IBM Haifa Research Laboratory, Israel Klaus Havelund NASA’s Jet Propulsion Laboratory, USA Michael Hind IBMThomasJ. WatsonResearchCenter,USA Akash Lal Microsoft Research, India Jo˜ao Lourenc¸o Universidade Nova de Lisboa, Portugal Shiva Nejati University of Luxembourg, Luxembourg John Owens University of California-Davis, USA Victor Pankratius MIT, USA Paul Petersen Intel, USA Michael Philippsen University of Erlangen-Nuremberg, Germany Christian Prehofer LMU Mu¨nchen, Germany Scott D. Stoller Stony Brook University, USA Tomas Vojnar BrnoUniversityofTechnology,CzechRepublic Shmuel Ur University of Bristol, UK Steering Committee Jeremy Bradbury University of Ontario, Institute of Technology, Canada Eitan Farchi IBM Haifa Research Laboratory, Israel Jo˜ao Lourenc¸o Universidade Nova de Lisboa, Portugal Victor Pankratius MIT, USA Michael Philippsen University of Erlangen-Nuremberg, Germany Christian Prehofer LMU Mu¨nchen, Germany Shmuel Ur University of Bristol, UK VIII Organization External Reviewers Vitor Duarte Universidade Nova de Lisboa, Portugal Jan Fiedor BrnoUniversityofTechnology,CzechRepublic Vendula Hruba BrnoUniversityofTechnology,CzechRepublic Bohuslav Krena BrnoUniversityofTechnology,CzechRepublic Joa˜o Leit˜ao Universidade Nova de Lisboa, Portugal Zdenek Letko BrnoUniversityofTechnology,CzechRepublic Pedro Medeiros Universidade Nova de Lisboa, Portugal Yu Qi Mesh Capital LLC, USA Shmuel Ur University of Bristol, UK Tiago M. Vale Universidade Nova de Lisboa, Portugal Table of Contents Performance Analysis and Algorithms Self-timed Scheduling and Execution of Nonlinear Pipelines with Parallel Stages................................................... 1 Lars Lucas, Tobias Schuele, and Wolfgang Schwitzer MVA-Based Probabilistic Model of Shared Memory with a Round Robin Arbiter for Predicting Performance with Heterogeneous Workload ....................................................... 13 Ryo Kawahara, Kouichi Ono, and Takeo Nakada MHS2: A Map-Reduce Heuristic-Driven Minimal Hitting Set Search Algorithm....................................................... 25 Nuno Cardoso and Rui Abreu Programming Models and Optimization Handling Parallelism in a Concurrency Model ....................... 37 Mischael Schill, Sebastian Nanz, and Bertrand Meyer On the Relevance of Total-Order Broadcast Implementations in Replicated Software Transactional Memories ........................ 49 Tiago M. Vale, Ricardo J. Dias, and Jo˜ao M. Louren¸co How to Cancel a Task ............................................ 61 Alexey Kolesnichenko, Sebastian Nanz, and Bertrand Meyer Testing and Debugging Automatically Repairing Concurrency Bugs with ARC................ 73 David Kelk, Kevin Jalbert, and Jeremy S. Bradbury A Modular Approach to Model-Based Testing of Concurrent Programs ....................................................... 85 Richard Carver and Yu Lei A Dynamic Approach to Isolating Erroneous Event Patterns in Concurrent ProgramExecutions ................................... 97 Jing Xu, Yu Lei, Richard Carver, and David Kung Author Index.................................................. 111 Self-timed Scheduling and Execution of Nonlinear Pipelines with Parallel Stages LarsLucas1,TobiasSchuele2,andWolfgangSchwitzer1 1 TechnischeUniversitätMünchen,FakultätfürInformatik Boltzmannstr.3,85748Garching,Germany {lucas,schwitze}@in.tum.de 2 SiemensAG,CorporateTechnology Otto-Hahn-Ring6,81739München,Germany [email protected] Abstract. Applicationsthatprocesscontinuousstreamsofdata,e.g.,sensorsig- nals,videoimages,networkpackets,etc.arewell-suitedforpipelinedexecution onmulticoreprocessors.Inmanycases,however,theapplicationsaresubjectto real-timeconstraints, especiallyinembedded systems.Besides maximizingthe throughput, it is therefore important to minimize deviations in the timing. To solvethisproblem,weproposeamethodforself-timedschedulingandparallel execution of stream-based applications in soft real-timeenvironments. Our ex- perimentalresultsshowsignificantlylowerlatenciescomparedtostate-of-the-art approaches,whileachievinghighthroughput. 1 Introduction Multicoreprocessors,whichare prevalentin laptops,desktopcomputers,andservers, increasinglyfindtheirwayintoembeddedsystems[1].Forinstance,manysmartphones already contain processorswith two or more cores. Unlike personalcomputers,how- ever,embeddedsystemsareoftensubjecttoreal-timeconstraints.Typicalexamplesare vehicle controllers, medical devices, and machines for industrial automation. In such systems,predictabilityofthetimingplaysanimportantroleto ensurecorrectinterac- tionwiththeenvironment.Ingeneral,onedistinguishesbetweensoftandhardreal-time systems. For the former it must be guaranteed that the given deadlines are met in all cases.Hardreal-timesystemsaretypicallyfoundinsafety-criticalareaslikeaviation, wherehighdemandsareputonreliability.Insoftreal-timesystems,adeadlinemaybe missedwithoutcausingharm.However,tomaintainthequalityofservice,amajorgoal inthedesignofsuchsystemsistoreducedeviationsfromthedesiredtiming. Consider,forexample,asortingmachinethatdiscardsbrokenobjects(Fig.1).The machineconsistsofaconveyorbelt,whichtransportstheobjectstobesortedatafixed speed, a camera, which producesa video stream of the objects on the conveyorbelt, anda pusher,whichpushesbrokenobjectsintoabox.Thecameraandthepusherare connected to a computer,which analyzes the incoming video stream and triggers the pusherwhenabrokenobjectisdetectedortheconsideredobjectcouldnotbeclassified withinthegiventimespan.Inordertoruntheconveyorbeltatahighspeed,theimage processingapplicationmusthaveahighthroughput.Additionally,thelatencyshouldbe J.M.LourençoandE.Farchi(Eds.):MUSEPAT2013,LNCS8063,pp.1–12,2013. (cid:2)c Springer-VerlagBerlinHeidelberg2013