Performance Tuning of Matrix Triple Products Based on Matrix Structure
Sparse matrix computations arise in many scientific and engineering applications, but their performance is limited by the growing gap between processor and memory speed. In this paper, we present a case study of an important sparse matrix triple product problem that commonly arises in primal-dual optimization method.
Instead of a generic two-phase algorithm, we devise and implement a single pass algorithm that exploits the block diagonal structure of the matrix. Our algorithm uses fewer floating point operations and roughly half the memory of the two-phase algorithm. The speed-up of the one-phase scheme over the two-phase scheme is 2.04 on a 900 MHz Intel Itanium-2, 1.63 on an 1 GHz Power-4, and 1.99 on a 900 MHz Sun Ultra-3.
Unable to display preview. Download preview PDF.
- 1.Goemans, M.X., Williamson, D.P.: The primal-dual method for approximation algorithms and its application to network design problems. In: Approximation Algorithms for NP-hard Problems, pp. 144–191. PWS Publishing Co., Boston (1996)Google Scholar
- 5.Vuduc, R., Gyulassy, A., Demmel, J.W., Yelick, K.A.: Memory Hierarchy Optimizations and Bounds for Sparse A TAx. In: Proceedings of the ICCS Workshop on Parallel Linear Algebra, Melbourne, Australia, June 2003. LNCS, vol. 2660, pp. 705–714. Springer, Heidelberg (2003)Google Scholar