![]() |
imate
C++/CUDA Reference
|
#include <cu_dense_matrix.h>
Public Member Functions | |
cuDenseMatrix () | |
cuDenseMatrix (const DataType *A_, const LongIndexType num_rows_, const LongIndexType num_columns_, const FlagType A_is_row_major_, const int num_gpu_devices_) | |
virtual | ~cuDenseMatrix () |
virtual void | dot (const DataType *device_vector, DataType *device_product) |
virtual void | dot_plus (const DataType *device_vector, const DataType alpha, DataType *device_product) |
virtual void | transpose_dot (const DataType *device_vector, DataType *device_product) |
virtual void | transpose_dot_plus (const DataType *device_vector, const DataType alpha, DataType *device_product) |
![]() | |
cuMatrix () | |
cuMatrix (int num_gpu_devices_) | |
virtual | ~cuMatrix () |
![]() | |
cuLinearOperator () | |
cuLinearOperator (int num_gpu_devices_) | |
Constructor with setting num_rows and num_columns . More... | |
virtual | ~cuLinearOperator () |
cublasHandle_t | get_cublas_handle () const |
This function returns a reference to the cublasHandle_t object. The object will be created, if it is not created already. More... | |
![]() | |
cLinearOperator () | |
Default constructor. More... | |
cLinearOperator (const LongIndexType num_rows_, const LongIndexType num_columns_) | |
Constructor with setting num_rows and num_columns . More... | |
virtual | ~cLinearOperator () |
LongIndexType | get_num_rows () const |
LongIndexType | get_num_columns () const |
void | set_parameters (DataType *parameters_) |
Sets the scalar parameter this->parameters . Parameter is initialized to NULL . However, before calling dot or transpose_dot functions, the parameters must be set. More... | |
IndexType | get_num_parameters () const |
FlagType | is_eigenvalue_relation_known () const |
Returns a flag that determines whether a relation between the parameters of the operator and its eigenvalue(s) is known. More... | |
![]() | |
cDenseMatrix () | |
cDenseMatrix (const DataType *A_, const LongIndexType num_rows_, const LongIndexType num_columns_, const FlagType A_is_row_major_) | |
virtual | ~cDenseMatrix () |
virtual FlagType | is_identity_matrix () const |
Checks whether the matrix is identity. More... | |
![]() | |
cMatrix () | |
Default constructor. More... | |
virtual | ~cMatrix () |
DataType | get_eigenvalue (const DataType *known_parameters, const DataType known_eigenvalue, const DataType *inquiry_parameters) const |
This virtual function is implemented from its pure virtual function of the base class. In this class, this functio has no use and was only implemented so that this class be able to be instantiated (due to the pure virtual function). More... | |
Protected Member Functions | |
virtual void | copy_host_to_device () |
Copies the member data from the host memory to the device memory. More... | |
![]() | |
int | query_gpu_devices () const |
Before any numerical computation, this method chechs if any gpu device is available on the machine, or notifies the user if nothing was found. More... | |
void | initialize_cublas_handle () |
Creates a cublasHandle_t object, if not created already. More... | |
void | initialize_cusparse_handle () |
Creates a cusparseHandle_t object, if not created already. More... | |
Protected Attributes | |
DataType ** | device_A |
![]() | |
int | num_gpu_devices |
bool | copied_host_to_device |
cublasHandle_t * | cublas_handle |
cusparseHandle_t * | cusparse_handle |
![]() | |
const LongIndexType | num_rows |
const LongIndexType | num_columns |
FlagType | eigenvalue_relation_known |
DataType * | parameters |
IndexType | num_parameters |
![]() | |
const DataType * | A |
const FlagType | A_is_row_major |
Definition at line 30 of file cu_dense_matrix.h.
cuDenseMatrix< DataType >::cuDenseMatrix |
Definition at line 29 of file cu_dense_matrix.cu.
cuDenseMatrix< DataType >::cuDenseMatrix | ( | const DataType * | A_, |
const LongIndexType | num_rows_, | ||
const LongIndexType | num_columns_, | ||
const FlagType | A_is_row_major_, | ||
const int | num_gpu_devices_ | ||
) |
Definition at line 40 of file cu_dense_matrix.cu.
References cuDenseMatrix< DataType >::copy_host_to_device(), and cuLinearOperator< DataType >::initialize_cublas_handle().
|
virtual |
Definition at line 66 of file cu_dense_matrix.cu.
References CudaInterface< ArrayType >::del(), and CudaInterface< ArrayType >::set_device().
|
protectedvirtual |
Copies the member data from the host memory to the device memory.
Implements cuMatrix< DataType >.
Definition at line 95 of file cu_dense_matrix.cu.
References CudaInterface< ArrayType >::alloc(), CudaInterface< ArrayType >::copy_to_device(), and CudaInterface< ArrayType >::set_device().
Referenced by cuDenseMatrix< DataType >::cuDenseMatrix().
|
virtual |
Reimplemented from cDenseMatrix< DataType >.
Definition at line 131 of file cu_dense_matrix.cu.
References cuMatrixOperations< DataType >::dense_matvec(), and CudaInterface< ArrayType >::get_device().
|
virtual |
Reimplemented from cDenseMatrix< DataType >.
Definition at line 156 of file cu_dense_matrix.cu.
References cuMatrixOperations< DataType >::dense_matvec_plus(), and CudaInterface< ArrayType >::get_device().
|
virtual |
Reimplemented from cDenseMatrix< DataType >.
Definition at line 183 of file cu_dense_matrix.cu.
References cuMatrixOperations< DataType >::dense_transposed_matvec(), and CudaInterface< ArrayType >::get_device().
|
virtual |
Reimplemented from cDenseMatrix< DataType >.
Definition at line 208 of file cu_dense_matrix.cu.
References cuMatrixOperations< DataType >::dense_transposed_matvec_plus(), and CudaInterface< ArrayType >::get_device().
|
protected |
Definition at line 72 of file cu_dense_matrix.h.