-
Towards Faster Matrix Diagonalization with Graph Isomorphism Networks and the AlphaZero Framework
Authors:
Geigh Zollicoffer,
Kshitij Bhatta,
Manish Bhattarai,
Phil Romero,
Christian F. A. Negre,
Anders M. N. Niklasson,
Adetokunbo Adedoyin
Abstract:
In this paper, we introduce innovative approaches for accelerating the Jacobi method for matrix diagonalization, specifically through the formulation of large matrix diagonalization as a Semi-Markov Decision Process and small matrix diagonalization as a Markov Decision Process. Furthermore, we examine the potential of utilizing scalable architecture between different-sized matrices. During a short…
▽ More
In this paper, we introduce innovative approaches for accelerating the Jacobi method for matrix diagonalization, specifically through the formulation of large matrix diagonalization as a Semi-Markov Decision Process and small matrix diagonalization as a Markov Decision Process. Furthermore, we examine the potential of utilizing scalable architecture between different-sized matrices. During a short training period, our method discovered a significant reduction in the number of steps required for diagonalization and exhibited efficient inference capabilities. Importantly, this approach demonstrated possible scalability to large-sized matrices, indicating its potential for wide-ranging applicability. Upon training completion, we obtain action-state probabilities and transition graphs, which depict transitions between different states. These outputs not only provide insights into the diagonalization process but also pave the way for cost savings pertinent to large-scale matrices. The advancements made in this research enhance the efficacy and scalability of matrix diagonalization, pushing for new possibilities for deployment in practical applications in scientific and engineering domains.
△ Less
Submitted 30 June, 2024;
originally announced July 2024.
-
Accelerating Matrix Diagonalization through Decision Transformers with Epsilon-Greedy Optimization
Authors:
Kshitij Bhatta,
Geigh Zollicoffer,
Manish Bhattarai,
Phil Romero,
Christian F. A. Negre,
Anders M. N. Niklasson,
Adetokunbo Adedoyin
Abstract:
This paper introduces a novel framework for matrix diagonalization, recasting it as a sequential decision-making problem and applying the power of Decision Transformers (DTs). Our approach determines optimal pivot selection during diagonalization with the Jacobi algorithm, leading to significant speedups compared to the traditional max-element Jacobi method. To bolster robustness, we integrate an…
▽ More
This paper introduces a novel framework for matrix diagonalization, recasting it as a sequential decision-making problem and applying the power of Decision Transformers (DTs). Our approach determines optimal pivot selection during diagonalization with the Jacobi algorithm, leading to significant speedups compared to the traditional max-element Jacobi method. To bolster robustness, we integrate an epsilon-greedy strategy, enabling success in scenarios where deterministic approaches fail. This work demonstrates the effectiveness of DTs in complex computational tasks and highlights the potential of reimagining mathematical operations through a machine learning lens. Furthermore, we establish the generalizability of our method by using transfer learning to diagonalize matrices of smaller sizes than those trained.
△ Less
Submitted 23 June, 2024;
originally announced June 2024.
-
Matrix Diagonalization as a Board Game: Teaching an Eigensolver the Fastest Path to Solution
Authors:
Phil Romero,
Manish Bhattarai,
Christian F. A. Negre,
Anders M. N. Niklasson,
Adetokunbo Adedoyin
Abstract:
Matrix diagonalization is at the cornerstone of numerous fields of scientific computing. Diagonalizing a matrix to solve an eigenvalue problem requires a sequential path of iterations that eventually reaches a sufficiently converged and accurate solution for all the eigenvalues and eigenvectors. This typically translates into a high computational cost. Here we demonstrate how reinforcement learnin…
▽ More
Matrix diagonalization is at the cornerstone of numerous fields of scientific computing. Diagonalizing a matrix to solve an eigenvalue problem requires a sequential path of iterations that eventually reaches a sufficiently converged and accurate solution for all the eigenvalues and eigenvectors. This typically translates into a high computational cost. Here we demonstrate how reinforcement learning, using the AlphaZero framework, can accelerate Jacobi matrix diagonalizations by viewing the selection of the fastest path to solution as a board game. To demonstrate the viability of our approach we apply the Jacobi diagonalization algorithm to symmetric Hamiltonian matrices that appear in quantum chemistry calculations. We find that a significant acceleration can often be achieved. Our findings highlight the opportunity to use machine learning as a promising tool to improve the performance of numerical linear algebra.
△ Less
Submitted 21 June, 2023; v1 submitted 15 June, 2023;
originally announced June 2023.
-
Enabling particle applications for exascale computing platforms
Authors:
Susan M Mniszewski,
James Belak,
Jean-Luc Fattebert,
Christian FA Negre,
Stuart R Slattery,
Adetokunbo A Adedoyin,
Robert F Bird,
Choongseok Chang,
Guangye Chen,
Stephane Ethier,
Shane Fogerty,
Salman Habib,
Christoph Junghans,
Damien Lebrun-Grandie,
Jamaludin Mohd-Yusof,
Stan G Moore,
Daniel Osei-Kuffuor,
Steven J Plimpton,
Adrian Pope,
Samuel Temple Reeve,
Lee Ricketson,
Aaron Scheinberg,
Amil Y Sharma,
Michael E Wall
Abstract:
The Exascale Computing Project (ECP) is invested in co-design to assure that key applications are ready for exascale computing. Within ECP, the Co-design Center for Particle Applications (CoPA) is addressing challenges faced by particle-based applications across four sub-motifs: short-range particle-particle interactions (e.g., those which often dominate molecular dynamics (MD) and smoothed partic…
▽ More
The Exascale Computing Project (ECP) is invested in co-design to assure that key applications are ready for exascale computing. Within ECP, the Co-design Center for Particle Applications (CoPA) is addressing challenges faced by particle-based applications across four sub-motifs: short-range particle-particle interactions (e.g., those which often dominate molecular dynamics (MD) and smoothed particle hydrodynamics (SPH) methods), long-range particle-particle interactions (e.g., electrostatic MD and gravitational N-body), particle-in-cell (PIC) methods, and linear-scaling electronic structure and quantum molecular dynamics (QMD) algorithms. Our crosscutting co-designed technologies fall into two categories: proxy applications (or apps) and libraries. Proxy apps are vehicles used to evaluate the viability of incorporating various types of algorithms, data structures, and architecture-specific optimizations and the associated trade-offs; examples include ExaMiniMD, CabanaMD, CabanaPIC, and ExaSP2. Libraries are modular instantiations that multiple applications can utilize or be built upon; CoPA has developed the Cabana particle library, PROGRESS/BML libraries for QMD, and the SWFFT and fftMPI parallel FFT libraries. Success is measured by identifiable lessons learned that are translated either directly into parent production application codes or into libraries, with demonstrated performance and/or productivity improvement. The libraries and their use in CoPA's ECP application partner codes are also addressed.
△ Less
Submitted 19 September, 2021;
originally announced September 2021.
-
Performance Optimizations of Recursive Electronic Structure Solvers targeting Multi-Core Architectures (LA-UR-20-26665)
Authors:
Adetokunbo A. Adedoyin,
Christian F. A. Negre,
Jamaludin Mohd-Yusof,
Nicolas Bock,
Daniel Osei-Kuffuor,
Jean-Luc Fattebert,
Michael E. Wall,
Anders M. N. Niklasson,
Susan M. Mniszewski
Abstract:
As we rapidly approach the frontiers of ultra large computing resources, software optimization is becoming of paramount interest to scientific application developers interested in efficiently leveraging all available on-Node computing capabilities and thereby improving a requisite science per watt metric. The scientific application of interest here is the Basic Math Library (BML) that provides a s…
▽ More
As we rapidly approach the frontiers of ultra large computing resources, software optimization is becoming of paramount interest to scientific application developers interested in efficiently leveraging all available on-Node computing capabilities and thereby improving a requisite science per watt metric. The scientific application of interest here is the Basic Math Library (BML) that provides a singular interface for linear algebra operation frequently used in the Quantum Molecular Dynamics (QMD) community. The provisioning of a singular interface indicates the presence of an abstraction layer which in-turn suggests commonalities in the code-base and therefore any optimization or tuning introduced in the core of code-base has the ability to positively affect the performance of the aforementioned library as a whole. With that in mind, we proceed with this investigation by performing a survey of the entirety of the BML code-base, and extract, in form of micro-kernels, common snippets of code. We introduce several optimization strategies into these micro-kernels including 1.) Strength Reduction 2.) Memory Alignment for large arrays 3.) Non Uniform Memory Access (NUMA) aware allocations to enforce data locality and 4.) appropriate thread affinity and bindings to enhance the overall multi-threaded performance. After introducing these optimizations, we benchmark the micro-kernels and compare the run-time before and after optimization for several target architectures. Finally we use the results as a guide to propagating the optimization strategies into the BML code-base. As a demonstration, herein, we test the efficacy of these optimization strategies by comparing the benchmark and optimized versions of the code.
△ Less
Submitted 16 February, 2021;
originally announced February 2021.
-
Quantum Algorithm Implementations for Beginners
Authors:
Abhijith J.,
Adetokunbo Adedoyin,
John Ambrosiano,
Petr Anisimov,
William Casper,
Gopinath Chennupati,
Carleton Coffrin,
Hristo Djidjev,
David Gunter,
Satish Karra,
Nathan Lemons,
Shizeng Lin,
Alexander Malyzhenkov,
David Mascarenas,
Susan Mniszewski,
Balu Nadiga,
Daniel O'Malley,
Diane Oyen,
Scott Pakin,
Lakshman Prasad,
Randy Roberts,
Phillip Romero,
Nandakishore Santhi,
Nikolai Sinitsyn,
Pieter J. Swart
, et al. (9 additional authors not shown)
Abstract:
As quantum computers become available to the general public, the need has arisen to train a cohort of quantum programmers, many of whom have been develo** classical computer programs for most of their careers. While currently available quantum computers have less than 100 qubits, quantum computing hardware is widely expected to grow in terms of qubit count, quality, and connectivity. This review…
▽ More
As quantum computers become available to the general public, the need has arisen to train a cohort of quantum programmers, many of whom have been develo** classical computer programs for most of their careers. While currently available quantum computers have less than 100 qubits, quantum computing hardware is widely expected to grow in terms of qubit count, quality, and connectivity. This review aims to explain the principles of quantum programming, which are quite different from classical programming, with straightforward algebra that makes understanding of the underlying fascinating quantum mechanical principles optional. We give an introduction to quantum computing algorithms and their implementation on real quantum hardware. We survey 20 different quantum algorithms, attempting to describe each in a succinct and self-contained fashion. We show how these algorithms can be implemented on IBM's quantum computer, and in each case, we discuss the results of the implementation with respect to differences between the simulator and the actual hardware runs. This article introduces computer scientists, physicists, and engineers to quantum algorithms and provides a blueprint for their implementations.
△ Less
Submitted 26 June, 2022; v1 submitted 10 April, 2018;
originally announced April 2018.