Alistair P. Rendell Barbara M. Chapman Matthias S. Müller (Eds.) OpenMP in the Era 2 2 of Low Power Devices 1 8 S C and Accelerators N L 9th International Workshop on OpenMP, IWOMP 2013 Canberra, ACT, Australia, September 2013 Proceedings 123 Lecture Notes in Computer Science 8122 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 Alistair P. Rendell Barbara M. Chapman Matthias S. Müller (Eds.) OpenMP in the Era of Low Power Devices and Accelerators 9th International Workshop on OpenMP, IWOMP 2013 Canberra,ACT,Australia, September 16-18, 2013 Proceedings 1 3 VolumeEditors AlistairP.Rendell AustralianNationalUniversity ResearchSchoolofComputerScience Bldg108,NorthRoad,0200Canberra,ACT,Australia E-mail:[email protected] BarbaraM.Chapman UniversityofHouston DepartmentofComputerScience 4800CalhounRoad,Houston,TX77204,USA E-mail:[email protected] MatthiasS.Müller RWTHAachenUniversity LehrstuhlfürHochleistungsrechnenundRechen-undKommunikationszentrum SeffenterWeg23,52074Aachen,Germany E-mail:[email protected] ISSN0302-9743 e-ISSN1611-3349 ISBN978-3-642-40697-3 e-ISBN978-3-642-40698-0 DOI10.1007/978-3-642-40698-0 SpringerHeidelbergNewYorkDordrechtLondon LibraryofCongressControlNumber:2013946472 CRSubjectClassification(1998):C.1,D.1,F.2,D.4,C.3,C.4 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 OpenMPisawidelyaccepted,standardapplicationprogramminginterface(API) for high-level shared-memory parallel programming in Fortran, C, and C++. Since its introduction in 1997, OpenMP has gained support from most high- performancecompilerandhardwarevendors.UnderthedirectionoftheOpenMP Architecture Review Board (ARB), the OpenMP specification has evolved up to the upcoming release of version 4.0. This version will include several new features like accelerator support for heterogeneous hardware environments, an enhanced tasking model, user-defined reductions and thread affinity to support binding for performance improvements on non-uniform memory architectures. The evolution of the standard would be impossible without active research in OpenMP compilers, runtime systems, tools, and environments. OpenMP is both an important programming model for single multicore processors and as partofa hybridprogrammingmodel for massivelyparallel, distributed memory systemsbuiltfrommulticoreormanycoreprocessors.Infact,mostofthegrowth in parallelism of the upcoming Exascale systems is expected to be coming from an increased parallelism within a node. OpenMP offers important features that can improve the scalability of applications on such systems. The community of OpenMP researchers and developers in academia and industry is united under cOMPunity (www.compunity.org). This organization has held workshops on OpenMP around the world since 1999: the European WorkshoponOpenMP (EWOMP),the NorthAmericanWorkshoponOpenMP Applications and Tools (WOMPAT), and the Asian Workshop on OpenMP Experiences and Implementation (WOMPEI) attracted annual audiences from academia and industry. The International Workshop on OpenMP (IWOMP) consolidatedthese threeworkshopseriesintoasingleannualinternationalevent thatrotatesacrossAsia,Europe,andAmerica.ThefirstIWOMPworkshopwas organized under the auspices of cOMPunity. Since that workshop, the IWOMP Steering Committee has organized these events and guided the development of theseries.ThefirstIWOMPmeetingwasheldin2005,inEugene,Oregon,USA. Sincethen,meetingshavebeenheldeachyear,inReims,France,Beijing,China, West Lafayette, USA, Dresden, Germany, Tsukuba, Japan, Chicago, USA, and Rome, Italy. Eachworkshophas drawn participants from researchand industry throughoutthe world.IWOMP 2013continuedthe serieswith technical papers, tutorials, and OpenMP status reports. The IWOMP meetings have been suc- cessful in large part due to the generous support from numerous sponsors. The cOMPunity website (www.compunity.org) provides access to the talks given at the meetings and to photos of the activities. The IWOMP website VI Preface (www.iwomp.org) provides information on the latest event. This book contains proceedings of IWOMP 2013. The workshop program included 14 technical pa- pers, 2 keynote talks, a tutorial on OpenMP and a report of the OpenMP Lan- guage Committee about the latest developments of OpenMP. All technical pa- pers were peer reviewed by at least three different members of the Program Committee. September 2013 Alistair P. Rendell Barbara M. Chapman Matthias S. Mu¨ller Organization Program and Organizing Chair Alistair Rendell Australian National University, Australia Program Co-chairs Matthias Mu¨ller RWTH Aachen University, Germany Barbara Chapman University of Houston, USA Tutorials Chair Ruud van der Pas Oracle America, USA Local Organizing Committee Eric McCreath Australian National University, Australia Josh Milthorpe Australian National University, Australia Alistair Rendell Australian National University, Australia Program Committee Dieter an Mey RWTH Aachen University, Germany Eduard Ayguad´e Barcelona Supercomputing Center, Spain Mark Bull EPCC, UK Nawal Copty Oracle America, USA Rudi Eigenmann Purdue University, USA Larry Meadows Intel, USA Alistair Rendell Australian National University, Australia Bronis R. de Supinski NNSA ASC, LLNL, USA Mitsuhisa Sato University of Tsukuba, Japan Christian Terboven RWTH Aachen University, Germany Ruud van der Pas Oracle America, USA Michael Wong IBM, Canada Steering Committee Chair Matthias S. Mu¨ller RWTH Aachen University, Germany VIII Organization Steering Committee Dieter an Mey RWTH Aachen University, Germany Eduard Ayguad´e BSC/UPC, Spain Mark Bull EPCC, UK Barbara M. Chapman University of Houston, USA Rudolf Eigenmann Purdue University, USA Guang R. Gao University of Delaware, USA William Gropp University of Illinois, USA Ricky Kendall Oak Ridge National Laboratory, USA Michael Krajecki University of Reims, France Rick Kufrin NCSA/Univerity of Illinois, USA Kalyan Kumaran Argonne National Laboratory, USA Federico Massaioli CASPUR, Italy Larry Meadows Intel, USA Arnaud Renard University of Reims, France Mitsuhisa Sato University of Tsukuba, Japan Sanjiv Shah Intel, USA Bronis R. de Supinski NNSA ASC, LLNL, USA Ruud van der Pas Oracle America, USA Matthijs van Waveren Fujitsu, France Michael Wong IBM, Canada Weimin Zheng Tsinghua University, China Table of Contents Proposed Extensions to OpenMP A Proposal for Task-Generating Loops in OpenMP................... 1 Xavier Teruel, Michael Klemm, Kelvin Li, Xavier Martorell, Stephen L. Olivier, and Christian Terboven Using OpenMP under Android .................................... 15 Vikas, Travis Scott, Nasser Giacaman, and Oliver Sinnen Expressing DOACROSS Loop Dependences in OpenMP .............. 30 Jun Shirako, Priya Unnikrishnan, Sanjay Chatterjee, Kelvin Li, and Vivek Sarkar Applications Manycore Parallelism through OpenMP: High-Performance Scientific Computing with Xeon Phi ........................................ 45 James Barker and Josh Bowden Performance Characteristics of Large SMP Machines ................. 58 Dirk Schmidl, Dieter an Mey, and Matthias S. Mu¨ller Evaluating OpenMP Tasking at Scale for the Computation of Graph Hyperbolicity.................................................... 71 Aaron B. Adcock, Blair D. Sullivan, Oscar R. Hernandez, and Michael W. Mahoney Accelerators Early Experiences With the OpenMP Accelerator Model.............. 84 Chunhua Liao, Yonghong Yan, Bronis R. de Supinski, Daniel J. Quinlan, and Barbara Chapman An OpenMP* Barrier Using SIMD Instructions for Intel(cid:2)R Xeon PhiTM Coprocessor ..................................................... 99 Diego Caballero, Alejandro Duran, and Xavier Martorell OpenMP on the Low-Power TI Keystone II ARM/DSP System-on-Chip.................................................. 114 Eric Stotzer, Ajay Jayaraj, Murtaza Ali, Arnon Friedmann, Gaurav Mitra, Alistair P. Rendell, and Ian Lintault X Table of Contents Scheduling A Prototype Implementation of OpenMP Task Dependency Support ... 128 Priyanka Ghosh, Yonghong Yan, Deepak Eachempati, and Barbara Chapman An Efficient OpenMP Loop Scheduler for Irregular Applications on Large-Scale NUMA Machines...................................... 141 Marie Durand, Fran¸cois Broquedis, Thierry Gautier, and Bruno Raffin Locality-Aware Task Scheduling and Data Distribution on NUMA Systems ........................................................ 156 Ananya Muddukrishna, Peter A. Jonsson, Vladimir Vlassov, and Mats Brorsson Tools OMPT: An OpenMP Tools Application Programming Interface for Performance Analysis............................................. 171 Alexandre E. Eichenberger, John Mellor-Crummey, Martin Schulz, Michael Wong, Nawal Copty, Robert Dietrich, Xu Liu, Eugene Loh, Daniel Lorenz, and other members of the OpenMP Tools Working Group Open Source Task Profiling by Extending the OpenMP Runtime API... 186 Ahmad Qawasmeh, Abid Malik, Barbara Chapman, Kevin Huck, and Allen Malony Author Index.................................................. 201