{"title":"Optimizing multicore performance with message driven execution: A case study","authors":"Pritish Jetley, L. Kalé","doi":"10.1109/HiPC.2011.6152744","DOIUrl":null,"url":null,"abstract":"With the growing amount of parallelism available on today's multicore processors, achieving good performance at scale is challenging. We approach this issue through an alternative to traditional thread-based paradigms for writing shared memory programs, namely message driven multicore programming. We study a number of optimizations that improve the efficiency of message driven programs on multicore architectures. In particular, we focus on the following runtime system-enabled optimizations: (i) grainsize control to effect a good concurrency-overhead tradeoff, (ii) dynamic balancing of processor load, (iii) low-overhead, asynchronous communication for lock-free and message-driven execution and (iv) communication-reduction through a novel chunked shared array abstraction. The practical impact of these optimizations is quantified through a parallel kd-tree construction program written in the message-driven paradigm. A comparison of the optimized code with a state-of-the-art parallel kd-tree construction program is also presented.","PeriodicalId":122468,"journal":{"name":"2011 18th International Conference on High Performance Computing","volume":"6 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2011-12-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2011 18th International Conference on High Performance Computing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/HiPC.2011.6152744","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1
Abstract
With the growing amount of parallelism available on today's multicore processors, achieving good performance at scale is challenging. We approach this issue through an alternative to traditional thread-based paradigms for writing shared memory programs, namely message driven multicore programming. We study a number of optimizations that improve the efficiency of message driven programs on multicore architectures. In particular, we focus on the following runtime system-enabled optimizations: (i) grainsize control to effect a good concurrency-overhead tradeoff, (ii) dynamic balancing of processor load, (iii) low-overhead, asynchronous communication for lock-free and message-driven execution and (iv) communication-reduction through a novel chunked shared array abstraction. The practical impact of these optimizations is quantified through a parallel kd-tree construction program written in the message-driven paradigm. A comparison of the optimized code with a state-of-the-art parallel kd-tree construction program is also presented.