skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: MiniApp for Density Matrix Renormalization Group Hamiltonian Application Kernel

Abstract

We present two miniapps that implement the core computational kernel of the DMRG++ application, a generic C++ code that implements the Density Matrix Renormalization Group (DMRG) algorithm. The DMRG++ core Kronecker multiplication kernel is formulated using a batched BLAS approach, with implementation that targets both multi-core CPUs using OpenMP and GPGPU using the MAGMA library. The kernel evaluates the matrix-vector multiplication of the target Hamiltonian matrix used in Lanczos algorithm for computing the lowest eigenvalue and eigenvector. The Hamiltonian matrix is expressed compactly as sums of Kronecker products of small dense matrices. We demonstrate improved performance of the miniapp on synthetic problem, and show the performance of the DMRG++ application using a plugin based on the miniapp. We also present an OpenMP miniapp that explores the use of nested parallel constructs to implement the Kronecker multiplication kernel, exploring the use of nested OpenMP worksharing and tasking abstractions to implement the multi-level parallel multiplication algorithm. The miniapp has been used as a co-design vehicle for evaluating features in the OpenMP-4.5 and upcoming OpenMP-5.0 standards.

Authors:
ORCiD logo [1]; ORCiD logo [1]; ORCiD logo [1]; ORCiD logo [1]; ORCiD logo [1];  [2]
  1. ORNL
  2. Georgia Institute of Technology, Atlanta
Publication Date:
Research Org.:
Oak Ridge National Lab. (ORNL), Oak Ridge, TN (United States)
Sponsoring Org.:
USDOE
OSTI Identifier:
1484995
DOE Contract Number:  
AC05-00OR22725
Resource Type:
Conference
Resource Relation:
Conference: IEEE International Conference on Cluster Computing (CLUSTER 2018) - Belfast, , United Kingdom - 9/10/2018 8:00:00 AM-9/13/2018 8:00:00 AM
Country of Publication:
United States
Language:
English

Citation Formats

Elwasif, Wael R., D'azevedo, Ed, Chatterjee, Arghya, Alvarez, Gonzalo, Hernandez, Oscar R., and Sarkar, Vivek. MiniApp for Density Matrix Renormalization Group Hamiltonian Application Kernel. United States: N. p., 2018. Web. doi:10.1109/CLUSTER.2018.00075.
Elwasif, Wael R., D'azevedo, Ed, Chatterjee, Arghya, Alvarez, Gonzalo, Hernandez, Oscar R., & Sarkar, Vivek. MiniApp for Density Matrix Renormalization Group Hamiltonian Application Kernel. United States. https://doi.org/10.1109/CLUSTER.2018.00075
Elwasif, Wael R., D'azevedo, Ed, Chatterjee, Arghya, Alvarez, Gonzalo, Hernandez, Oscar R., and Sarkar, Vivek. Sat . "MiniApp for Density Matrix Renormalization Group Hamiltonian Application Kernel". United States. https://doi.org/10.1109/CLUSTER.2018.00075. https://www.osti.gov/servlets/purl/1484995.
@article{osti_1484995,
title = {MiniApp for Density Matrix Renormalization Group Hamiltonian Application Kernel},
author = {Elwasif, Wael R. and D'azevedo, Ed and Chatterjee, Arghya and Alvarez, Gonzalo and Hernandez, Oscar R. and Sarkar, Vivek},
abstractNote = {We present two miniapps that implement the core computational kernel of the DMRG++ application, a generic C++ code that implements the Density Matrix Renormalization Group (DMRG) algorithm. The DMRG++ core Kronecker multiplication kernel is formulated using a batched BLAS approach, with implementation that targets both multi-core CPUs using OpenMP and GPGPU using the MAGMA library. The kernel evaluates the matrix-vector multiplication of the target Hamiltonian matrix used in Lanczos algorithm for computing the lowest eigenvalue and eigenvector. The Hamiltonian matrix is expressed compactly as sums of Kronecker products of small dense matrices. We demonstrate improved performance of the miniapp on synthetic problem, and show the performance of the DMRG++ application using a plugin based on the miniapp. We also present an OpenMP miniapp that explores the use of nested parallel constructs to implement the Kronecker multiplication kernel, exploring the use of nested OpenMP worksharing and tasking abstractions to implement the multi-level parallel multiplication algorithm. The miniapp has been used as a co-design vehicle for evaluating features in the OpenMP-4.5 and upcoming OpenMP-5.0 standards.},
doi = {10.1109/CLUSTER.2018.00075},
url = {https://www.osti.gov/biblio/1484995}, journal = {},
number = ,
volume = ,
place = {United States},
year = {2018},
month = {9}
}

Conference:
Other availability
Please see Document Availability for additional information on obtaining the full-text document. Library patrons may search WorldCat to identify libraries that hold this conference proceeding.

Save / Share: