Computational & Technology Resources
an online resource for computational,
engineering & technology publications
PROCEEDINGS OF THE FOURTH INTERNATIONAL CONFERENCE ON PARALLEL, DISTRIBUTED, GRID AND CLOUD COMPUTING FOR ENGINEERING
Edited by: P. Iványi and B.H.V. Topping
Parallel Sparse Matrix Vector Product with OpenMP for SMPs in Code_Saturne
V. Szeremi1, L. Anton1, C. Evangelinos2, C. Moulinec1 and Y. Fournier3
1STFC Daresbury Laboratories, Warrington, United Kingdom
V. Szeremi, L. Anton, C. Evangelinos, C. Moulinec, Y. Fournier, "Parallel Sparse Matrix Vector Product with OpenMP for SMPs in Code_Saturne", in P. Iványi, B.H.V. Topping, (Editors), "Proceedings of the Fourth International Conference on Parallel, Distributed, Grid and Cloud Computing for Engineering", Civil-Comp Press, Stirlingshire, UK, Paper 28, 2015. doi:10.4203/ccp.107.28
Keywords: computational fluid dynamics, Code_Saturne, OpenMP, sparse matrix vector product, parallel algorithms, load balancing.
In this paper a new blocked sparse matrix vector product parallel algorithm based on Code_ Saturne native matrix format is proposed in order to improve the OpenMP scalability. New sparse matrix storage options based on the native matrix format, and corresponding algorithms, are implemented in Code_Saturne. In addition, trace-guided optimisations for reduced synchronisation and better load balance are proposed and their efficiency is investigated on different processor architectures. Results are presented for a range of systems, including architectures of PRACE Tier-0 machines, IBM Blue Gene/Q and iDataPlex (Sandybridge, Ivybridge) and Cray XC30 (Ivybridge). Initial results indicate that the new algorithm has a significantly better parallel performance across the tested hardware with respect to the native OpenMP sparse matrix vector product algorithm.
purchase the full-text of this paper (price £20)