Efficient heterogeneous execution on large multicore and accelerator platforms: Case study using a block tridiagonal solver

Abstract

The algorithmic and implementation principles are explored in gainfully exploiting GPU accelerators in conjunction with multicore processors on high-end systems with large numbers of compute nodes, and evaluated in an implementation of a scalable block tridiagonal solver. The accelerator of each compute node is exploited in combination with multicore processors of that node in performing block-level linear algebra operations in the overall, distributed solver algorithm. Optimizations incorporated include: (1) an efficient memory mapping and synchronization interface to minimize data movement, (2) multi-process sharing of the accelerator within a node to obtain balanced load with multicore processors, and (3) an automatic memory management system to efficiently utilize accelerator memory when sub-matrices spill over the limits of device memory. Results are reported from our novel implementation that uses MAGMA and CUBLAS accelerator software systems simultaneously with ACML [5] for multithreaded execution on processors. Overall, using 940 nVidia Tesla X2090 accelerators and 15,040 cores, the best heterogeneous execution delivers a 10.9-fold reduction in run time relative to an already efficient parallel multicore-only baseline implementation that is highly optimized with intra-node and inter-node concurrency and computation-communication overlap. Detailed quantitative results are presented to explain all critical runtime components contributing to hybrid performance.

DOI: 10.1016/j.jpdc.2013.07.012

Extracted Key Phrases

23 Figures and Tables

Cite this paper

@article{Park2013EfficientHE, title={Efficient heterogeneous execution on large multicore and accelerator platforms: Case study using a block tridiagonal solver}, author={Alfred Park and Kalyan S. Perumalla}, journal={J. Parallel Distrib. Comput.}, year={2013}, volume={73}, pages={1578-1591} }