GPTune: Performance Autotuner for HPC Applications
GPTune is an autotuning framework designed particularly for high-performance computing applications that are expensive to evaluate. GPTune uses Bayesian optimization-based approach using Gaussian Process regression and supports advanced features such as multi-task learning, transfer learning, multi-fidelity, and multi-objective tuning.GPTune Tutorial (2022) GPTune User Survey
The History Database
The success of autotuning depends on collecting performance data samples. The GPTune History Database allows users to share performance data samples, so everyone can benefit from (expensive) runs of widely used high-performance computing codes. Please Sign Up For Free to access more data and use all the nice features of the history database!
History Database Statistics
Number of tuning problems
Number of function evaluations
14075 function evaluations
Number of users
Tuning Examples in History Database
The ScaLAPACK (or Scalable LAPACK) library includes a subset of LAPACK routines redesigned for distributed memory MIMD parallel computers. It is currently written in a Single-Program-Multiple-Data style using explicit message passing for interprocessor communication. It assumes matrices are laid out in a two-dimensional block cyclic decomposition.
SuperLU_DIST contains a set of subroutines to solve a sparse linear system A*X=B. It uses Gaussian elimination with static pivoting (GESP). Static pivoting is a technique that combines the numerical stability of partial pivoting with the scalability of Cholesky (no pivoting), to run accurately and efficiently on large numbers of processors.
The Parallel High Performance Preconditioners (hypre) is a library of routines for scalable (parallel) solution of linear systems. The built-in BLOPEX package in addition allows solving eigenvalue problems.
PLASMA is a software package for solving problems in dense linear algebra using OpenMP. PLASMA provides implementations of state-of-the-art algorithms using cutting-edge task scheduling techniques. PLASMA currently offers a collection of routines for solving linear systems of equations, least squares problems, eigenvalue problems, and singular value problems.
The objective of the Software for Linear Algebra Targeting Exascale (SLATE) project is to provide fundamental dense linear algebra capabilities to the US Department of Energy and to the high-performance computing (HPC) community at large. To this end, SLATE provides basic dense matrix operations (e.g., matrix multiplication, rank-k update, triangular solve), norms, linear systems solvers, least square solvers, and singular value and eigenvalue solvers.
NIMROD solves the extended magnetohydrodynamic equations using: Spectral finite element discretization in two dimensions, Finite Fourier series in the third dimension, Semi-implicit and implicit temporal discretization for the range of temporal scales found in fusion experiments, Simulation particles for kinetic effects from a minority species of energetic ions, and Integro-differential methods for kinetic effects from free-streaming.