LAMA
|
#include <CUDACSRUtils.hpp>
Static Public Member Functions | |
static IndexType | sizes2offsets (IndexType sizes[], const IndexType numRows) |
Helper routine for conversion CSR to CSR format. | |
static void | offsets2sizes (IndexType sizes[], const IndexType offsets[], const IndexType n) |
static bool | hasDiagonalProperty (const IndexType numDiagonals, const IndexType csrIA[], const IndexType csrJA[]) |
template<typename ValueType > | |
static void | convertCSR2CSC (IndexType cscIA[], IndexType cscJA[], ValueType cscValues[], const IndexType csrIA[], const IndexType csrJA[], const ValueType csrValues[], int numRows, int numColumns, int numValues) |
Matrix transpose for CSR matrices on CUDA device. | |
template<typename ValueType > | |
static void | normalGEMV (ValueType result[], const ValueType alpha, const ValueType x[], const ValueType beta, const ValueType y[], const IndexType numRows, const IndexType csrIA[], const IndexType csrJA[], const ValueType csrValues[], class SyncToken *syncToken) |
Implementation for CSRUtilsInterface::Mult::normalGEMV. | |
template<typename ValueType > | |
static void | sparseGEMV (ValueType result[], const ValueType alpha, const ValueType x[], const IndexType numNonZeroRows, const IndexType rowIndexes[], const IndexType csrIA[], const IndexType csrJA[], const ValueType csrValues[], class SyncToken *syncToken) |
Implementation for CSRUtilsInterface::Mult::sparseGEMV. | |
template<typename ValueType > | |
static void | jacobi (ValueType *const solution, const IndexType csrIA[], const IndexType csrJA[], const ValueType csrValues[], const ValueType rhs[], const ValueType oldSolution[], const ValueType omega, const IndexType numRows, class SyncToken *syncToken) |
Implementation for CSRUtilsInterface::Solver::jacobi. | |
template<typename ValueType > | |
static void | jacobiHalo (ValueType solution[], const IndexType localIA[], const ValueType localValues[], const IndexType haloIA[], const IndexType haloJA[], const ValueType haloValues[], const IndexType haloRowIndexes[], const ValueType oldSolution[], const ValueType omega, const IndexType numNonEmptyRows) |
Implementation for CSRUtilsInterface::Solver::jacobiHalo. | |
static void | setInterface (struct CSRUtilsInterface &CSRUtils) |
Routine that registers all routines of this class at the LAMA interface. | |
Private Member Functions | |
LAMA_LOG_DECL_STATIC_LOGGER (logger) |
static void lama::CUDACSRUtils::convertCSR2CSC | ( | IndexType | cscIA[], |
IndexType | cscJA[], | ||
ValueType | cscValues[], | ||
const IndexType | csrIA[], | ||
const IndexType | csrJA[], | ||
const ValueType | csrValues[], | ||
int | numRows, | ||
int | numColumns, | ||
int | numValues | ||
) | [static] |
Matrix transpose for CSR matrices on CUDA device.
static bool lama::CUDACSRUtils::hasDiagonalProperty | ( | const IndexType | numDiagonals, |
const IndexType | csrIA[], | ||
const IndexType | csrJA[] | ||
) | [static] |
static void lama::CUDACSRUtils::jacobi | ( | ValueType *const | solution, |
const IndexType | csrIA[], | ||
const IndexType | csrJA[], | ||
const ValueType | csrValues[], | ||
const ValueType | rhs[], | ||
const ValueType | oldSolution[], | ||
const ValueType | omega, | ||
const IndexType | numRows, | ||
class SyncToken * | syncToken | ||
) | [static] |
Implementation for CSRUtilsInterface::Solver::jacobi.
static void lama::CUDACSRUtils::jacobiHalo | ( | ValueType | solution[], |
const IndexType | localIA[], | ||
const ValueType | localValues[], | ||
const IndexType | haloIA[], | ||
const IndexType | haloJA[], | ||
const ValueType | haloValues[], | ||
const IndexType | haloRowIndexes[], | ||
const ValueType | oldSolution[], | ||
const ValueType | omega, | ||
const IndexType | numNonEmptyRows | ||
) | [static] |
Implementation for CSRUtilsInterface::Solver::jacobiHalo.
lama::CUDACSRUtils::LAMA_LOG_DECL_STATIC_LOGGER | ( | logger | ) | [private] |
static void lama::CUDACSRUtils::normalGEMV | ( | ValueType | result[], |
const ValueType | alpha, | ||
const ValueType | x[], | ||
const ValueType | beta, | ||
const ValueType | y[], | ||
const IndexType | numRows, | ||
const IndexType | csrIA[], | ||
const IndexType | csrJA[], | ||
const ValueType | csrValues[], | ||
class SyncToken * | syncToken | ||
) | [static] |
Implementation for CSRUtilsInterface::Mult::normalGEMV.
static void lama::CUDACSRUtils::offsets2sizes | ( | IndexType | sizes[], |
const IndexType | offsets[], | ||
const IndexType | n | ||
) | [static] |
static void lama::CUDACSRUtils::setInterface | ( | struct CSRUtilsInterface & | CSRUtils | ) | [static] |
Routine that registers all routines of this class at the LAMA interface.
Referenced by lama::CUDAInterface::CUDAInterface().
static IndexType lama::CUDACSRUtils::sizes2offsets | ( | IndexType | sizes[], |
const IndexType | numRows | ||
) | [static] |
Helper routine for conversion CSR to CSR format.
static void lama::CUDACSRUtils::sparseGEMV | ( | ValueType | result[], |
const ValueType | alpha, | ||
const ValueType | x[], | ||
const IndexType | numNonZeroRows, | ||
const IndexType | rowIndexes[], | ||
const IndexType | csrIA[], | ||
const IndexType | csrJA[], | ||
const ValueType | csrValues[], | ||
class SyncToken * | syncToken | ||
) | [static] |
Implementation for CSRUtilsInterface::Mult::sparseGEMV.