Opm::Accelerator::OpenclMatrix Class 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, double *vals, int *cols, int *rows)
 
void upload (cl::CommandQueue *queue, Matrix *matrix)
 
void upload (cl::CommandQueue *queue, BlockedMatrix *matrix)
 

Public Attributes

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

Detailed Description

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

Constructor & Destructor Documentation

◆ OpenclMatrix()

Opm::Accelerator::OpenclMatrix::OpenclMatrix ( cl::Context *  context,
int  Nb_,
int  Mb_,
int  nnzbs_,
unsigned int  block_size_ 
)
inline

Member Function Documentation

◆ upload() [1/3]

void Opm::Accelerator::OpenclMatrix::upload ( cl::CommandQueue *  queue,
BlockedMatrix matrix 
)

◆ upload() [2/3]

void Opm::Accelerator::OpenclMatrix::upload ( cl::CommandQueue *  queue,
double *  vals,
int *  cols,
int *  rows 
)

◆ upload() [3/3]

void Opm::Accelerator::OpenclMatrix::upload ( cl::CommandQueue *  queue,
Matrix matrix 
)

Member Data Documentation

◆ block_size

unsigned int Opm::Accelerator::OpenclMatrix::block_size

Referenced by OpenclMatrix().

◆ colIndices

cl::Buffer Opm::Accelerator::OpenclMatrix::colIndices

Referenced by OpenclMatrix().

◆ Mb

int Opm::Accelerator::OpenclMatrix::Mb

◆ Nb

int Opm::Accelerator::OpenclMatrix::Nb

Referenced by OpenclMatrix().

◆ nnzbs

int Opm::Accelerator::OpenclMatrix::nnzbs

Referenced by OpenclMatrix().

◆ nnzValues

cl::Buffer Opm::Accelerator::OpenclMatrix::nnzValues

Referenced by OpenclMatrix().

◆ rowPointers

cl::Buffer Opm::Accelerator::OpenclMatrix::rowPointers

Referenced by OpenclMatrix().


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