Skip to main content

Optimization of Condensed Matter Physics Application with OpenMP Tasking Model...

Publication Type
Conference Paper
Book Title
Springer's Lecture Notes in Computer Science Series
Publication Date
Page Numbers
291 to 305
Conference Name
15th International Workshop on OpenMP (IWOMP 2019)
Conference Location
AUCKLAND, New Zealand
Conference Sponsor
Conference Date

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.