Files in this item
COMPROF and COMPLACE : shared-memory communication profiling and automated thread placement via dynamic binary instrumentation
Item metadata
dc.contributor.author | Kirkpatrick, Ryan | |
dc.contributor.author | Brown, Christopher Mark | |
dc.contributor.author | Janjic, Vladimir | |
dc.date.accessioned | 2022-11-21T15:30:01Z | |
dc.date.available | 2022-11-21T15:30:01Z | |
dc.date.issued | 2022-11-15 | |
dc.identifier.citation | Kirkpatrick , R , Brown , C M & Janjic , V 2022 , COMPROF and COMPLACE : shared-memory communication profiling and automated thread placement via dynamic binary instrumentation . in 29th IEEE International Conference on High Performance Computing, Data, and Analytics . IEEE International Conference on High Performance Computing, Data, and Analytics , 29th IEEE International Conference on High Performance Computing, Data, and Analytics (HIPC) , Bangalore , India , 18/12/22 . | en |
dc.identifier.citation | conference | en |
dc.identifier.issn | 1094-7256 | |
dc.identifier.other | PURE: 282241053 | |
dc.identifier.other | PURE UUID: 4f7f0c6f-d3d1-4655-9887-0a55e75aa7be | |
dc.identifier.uri | http://hdl.handle.net/10023/26458 | |
dc.description | Funding: This work was generously supported by UK EPSRC Energise, grant number EP/V006290/1. | en |
dc.description.abstract | This paper presents COMPROF and COMPLACE, a novel profiling tool and thread placement technique for shared-memory architectures that requires no recompilation or user intervention. We use dynamic binary instrumentation to intercept memory operations and estimate inter-thread communication overhead, deriving (and possibly visualising) a communication graph of data-sharing between threads. We then use this graph to map threads to cores in order to optimise memory traffic through the memory system. Different paths through a system's memory hierarchy have different latency, throughput and energy properties, COMPLACE exploits this heterogeneity to provide automatic performance and energy improvements for multi-threaded programs. We demonstrate COMPLACE on the NAS Parallel Benchmark (NPB) suite where, using our technique, we are able to achieve improvements of up to 12% in the execution time and up to 10% in the energy consumption (compared to default Linux scheduling) while not requiring any modification or recompilation of the application code. | |
dc.language.iso | eng | |
dc.relation.ispartof | 29th IEEE International Conference on High Performance Computing, Data, and Analytics | en |
dc.relation.ispartofseries | IEEE International Conference on High Performance Computing, Data, and Analytics | en |
dc.rights | Copyright © 2022 IEEE. This work has been made available online in accordance with publisher policies or with permission. Permission for further reuse of this content should be sought from the publisher or the rights holder. This is the author created accepted manuscript following peer review and may differ slightly from the final published version. The final published version of this work is available at https://ieeexplore.ieee.org/. | en |
dc.rights | Copyright © 2022 IEEE. This work has been made available online in accordance with publisher policies or with permission. Permission for further reuse of this content should be sought from the publisher or the rights holder. This is the author created accepted manuscript following peer review and may differ slightly from the final published version. The final published version of this work is available at https://ieeexplore.ieee.org/. | en |
dc.subject | NUMA | en |
dc.subject | Thread Placement | en |
dc.subject | Data Placement | en |
dc.subject | Cache Optimisation | en |
dc.subject | Energy Optimization | en |
dc.subject | Refactoring | en |
dc.subject | QA75 Electronic computers. Computer science | en |
dc.subject | NDAS | en |
dc.subject | SDG 7 - Affordable and Clean Energy | en |
dc.subject.lcc | QA75 | en |
dc.title | COMPROF and COMPLACE : shared-memory communication profiling and automated thread placement via dynamic binary instrumentation | en |
dc.type | Conference item | en |
dc.contributor.sponsor | EPSRC | en |
dc.description.version | Postprint | en |
dc.description.version | Postprint | en |
dc.contributor.institution | University of St Andrews. School of Computer Science | en |
dc.identifier.url | https://ieeexplore.ieee.org/ | en |
dc.identifier.grantnumber | EP/V006290/1 | en |
This item appears in the following Collection(s)
Items in the St Andrews Research Repository are protected by copyright, with all rights reserved, unless otherwise indicated.