August 2019

Conference Paper

Optimization of Condensed Matter Physics Application with OpenMP Tasking Model

By:
Criado, Joel; Garcia, Marta; Labarta, Jesus; Chatterjee, Arghya ; Hernandez Mendoza, Oscar R; Sirvent, Raul; Alvarez, Gonzalo
Page Number:
291-305
Book Title:
Springer's Lecture Notes in Computer Science Series
Publication Date:
August 2019
Conference Name:
15th International Workshop on OpenMP (IWOMP 2019)
Conference Location:
AUCKLAND, New Zealand
Conference Sponsor:
OpenMP
View DOI Listing:
https://doi.org/10.1007/978-3-030-28596-8_20

Abstract

The Density Matrix Renormalization Group (DMRG++) is a condensed matter physics application used to study superconductivity properties of materials. It’s main computations consist of calculating hamiltonian matrix which requires sparse matrix-vector multiplications. This paper presents task-based parallelization and optimization strategies of the Hamiltonian algorithm. The algorithm is implemented as a mini-application in C++ and parallelized with OpenMP. The optimization leverages tasking features, such as dependencies or priorities included in the OpenMP standard 4.5. The code refactoring targets performance as much as programmability. The optimized version achieves a speedup of 8.0× with 8 threads and 20.5× with 40 threads on a Power9 computing node while reducing the memory consumption to 90 MB with respect to the original code, by adding less than ten OpenMP directives.