COMPROF and COMPLACE : shared-memory communication profiling and automated thread placement via dynamic binary instrumentation
View/ Open
Date
15/11/2022Funder
Grant ID
EP/V006290/1
Keywords
Metadata
Show full item recordAltmetrics Handle Statistics
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.
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 . conference
Publication
29th IEEE International Conference on High Performance Computing, Data, and Analytics
ISSN
1094-7256Type
Conference item
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/. 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/.
Description
Funding: This work was generously supported by UK EPSRC Energise, grant number EP/V006290/1.Collections
Items in the St Andrews Research Repository are protected by copyright, with all rights reserved, unless otherwise indicated.