Asymptotically Optimal Load Balancing for Hierarchical Multi-Core Systems - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Conference Papers Year : 2012

Asymptotically Optimal Load Balancing for Hierarchical Multi-Core Systems


Current multi-core machines feature a complex and hierarchical core topology, multiple levels of cache and memory subsystem with NUMA design. Although this design provides high processing power to parallel machines, it comes with the cost of asymmetric memory access latencies. Depending on the parallel application communication patterns, this asymmetry may reduce the overall performance of the system. Therefore, to achieve scalable performance in this environment, it becomes crucial to exploit the machine architecture while taking into account the application communication patterns. In this paper, we introduce a topology-aware load balancing algorithm named HwTopoLB. It combines the machine topology characteristics with the communication patterns of the application to equalize the application load on the available cores while reducing latencies. We also present the proof that the algorithm is asymptotically optimal (Theorem 1). We have implemented our load balancing algorithm using the Charm++ Parallel System and analyzed its performance using three different benchmarks. Our experimental results show that the HwTopoLB can achieve average performance improvements of 24% when compared to existing load balancing strategies on three different multi-core machines.
No file

Dates and versions

hal-00788008 , version 1 (13-02-2013)



Laércio Pilla, Christiane Pousa Ribeiro, Philippe Navaux, Pierre Coucheney, Francois Broquedis, et al.. Asymptotically Optimal Load Balancing for Hierarchical Multi-Core Systems. Proceedings of the 18th IEEE International Conference on Parallel and Distributed Systems, ICPADS, 2012, Singapore, Singapore. pp.236 - 243, ⟨10.1109/ICPADS.2012.41⟩. ⟨hal-00788008⟩
233 View
0 Download



Gmail Facebook X LinkedIn More