We present a hybrid GPU-CPU implementation of a reordering strategy for per-muting elements to make the half-bandwidth of a sparse matrix lower. This algorithm, based on work by Cuthill and McKee [4], is a critical component of the SPIKE-based preconditioner provided by the Spike::GPU library [3]. We discuss the three stages of the unordered implementation of the Cuthill-McKee (CM) algorithm and compare our implementation against both a self-implemented CPU CM algorithm and the MC60 algo-rithm provided by the HSL library [1], which also targets reducing the half-bandwidth. Numerical experiments, performed on around 130 matrices arising in various engineer-ing and scientific applications, indicate that our implementation almost obtains simil...
This paper studies heuristics for the bandwidth reduction of large-scale matrices in serial computat...
Sparse matrix–vector multiplication (SpMV) is of singular importance in sparse linear algebra, which...
We apply object-oriented software design patterns to develop code for scientific software involving ...
We present implementation details of a reordering strategy for permuting elements whose absolute val...
This contribution outlines an approach that draws on general purpose graphics processing unit (GPGPU...
Sparse matrix-matrix multiplication (SpMM) is a key operation in numerous ar- eas from information ...
AbstractSparse matrix vector multiplication (SpMV) is the dominant kernel in scientific simulations....
The SPIKE algorithm [1, 2] is an efficient generic divide-and-conquer algorithm for solving banded s...
We implement two novel algorithms for sparse-matrix dense-matrix multiplication (SpMM) on the GPU. O...
Low-rank matrices arise in many scientific and engineering computations. Both computational and stor...
The sparse matrix solver is a critical component in circuit simulators. Some researches have develop...
The Conjugate Gradient (CG) method is a widely-used iterative method for solving linear systems desc...
Hybrid GPU/CPU clusters are becoming very popular in the scientific computing community, as attested...
This repository contains the code and scripts for verifying the claims in the paper "Design Principl...
• Solution of large dense matrix problems arises from diverse applications such as modelling the res...
This paper studies heuristics for the bandwidth reduction of large-scale matrices in serial computat...
Sparse matrix–vector multiplication (SpMV) is of singular importance in sparse linear algebra, which...
We apply object-oriented software design patterns to develop code for scientific software involving ...
We present implementation details of a reordering strategy for permuting elements whose absolute val...
This contribution outlines an approach that draws on general purpose graphics processing unit (GPGPU...
Sparse matrix-matrix multiplication (SpMM) is a key operation in numerous ar- eas from information ...
AbstractSparse matrix vector multiplication (SpMV) is the dominant kernel in scientific simulations....
The SPIKE algorithm [1, 2] is an efficient generic divide-and-conquer algorithm for solving banded s...
We implement two novel algorithms for sparse-matrix dense-matrix multiplication (SpMM) on the GPU. O...
Low-rank matrices arise in many scientific and engineering computations. Both computational and stor...
The sparse matrix solver is a critical component in circuit simulators. Some researches have develop...
The Conjugate Gradient (CG) method is a widely-used iterative method for solving linear systems desc...
Hybrid GPU/CPU clusters are becoming very popular in the scientific computing community, as attested...
This repository contains the code and scripts for verifying the claims in the paper "Design Principl...
• Solution of large dense matrix problems arises from diverse applications such as modelling the res...
This paper studies heuristics for the bandwidth reduction of large-scale matrices in serial computat...
Sparse matrix–vector multiplication (SpMV) is of singular importance in sparse linear algebra, which...
We apply object-oriented software design patterns to develop code for scientific software involving ...