Opm::Accelerator::OpenclMatrix< Scalar > Class Template Reference

#include <OpenclMatrix.hpp>

Public Member Functions

 OpenclMatrix (cl::Context *context, int Nb_, int Mb_, int nnzbs_, unsigned int block_size_)
 
void upload (cl::CommandQueue *queue, Scalar *vals, int *cols, int *rows)
 
void upload (cl::CommandQueue *queue, Matrix< Scalar > *matrix)
 
void upload (cl::CommandQueue *queue, BlockedMatrix< Scalar > *matrix)
 

Public Attributes

cl::Buffer nnzValues
 
cl::Buffer colIndices
 
cl::Buffer rowPointers
 
int Nb
 
int Mb
 
int nnzbs
 
unsigned int block_size
 

Detailed Description

template<class Scalar>
class Opm::Accelerator::OpenclMatrix< Scalar >

This struct resembles a csr matrix, only doubles are supported The matrix data is stored in OpenCL Buffers

Constructor & Destructor Documentation

◆ OpenclMatrix()

Member Function Documentation

◆ upload() [1/3]

template<class Scalar >
void Opm::Accelerator::OpenclMatrix< Scalar >::upload ( cl::CommandQueue *  queue,
BlockedMatrix< Scalar > *  matrix 
)

◆ upload() [2/3]

template<class Scalar >
void Opm::Accelerator::OpenclMatrix< Scalar >::upload ( cl::CommandQueue *  queue,
Matrix< Scalar > *  matrix 
)

◆ upload() [3/3]

template<class Scalar >
void Opm::Accelerator::OpenclMatrix< Scalar >::upload ( cl::CommandQueue *  queue,
Scalar *  vals,
int *  cols,
int *  rows 
)

Member Data Documentation

◆ block_size

template<class Scalar >
unsigned int Opm::Accelerator::OpenclMatrix< Scalar >::block_size

◆ colIndices

template<class Scalar >
cl::Buffer Opm::Accelerator::OpenclMatrix< Scalar >::colIndices

◆ Mb

template<class Scalar >
int Opm::Accelerator::OpenclMatrix< Scalar >::Mb

◆ Nb

template<class Scalar >
int Opm::Accelerator::OpenclMatrix< Scalar >::Nb

◆ nnzbs

template<class Scalar >
int Opm::Accelerator::OpenclMatrix< Scalar >::nnzbs

◆ nnzValues

template<class Scalar >
cl::Buffer Opm::Accelerator::OpenclMatrix< Scalar >::nnzValues

◆ rowPointers

template<class Scalar >
cl::Buffer Opm::Accelerator::OpenclMatrix< Scalar >::rowPointers

The documentation for this class was generated from the following file: