|
Graphite Version 3
An experimental 3D geometry processing program
|
Internal OpenNL functions that interface with CUDA. More...
Go to the source code of this file.
Functions | |
| NLboolean | nlInitExtension_CUDA (void) |
| Initializes the CUDA extension. | |
| NLboolean | nlExtensionIsInitialized_CUDA (void) |
| Tests whether the CUDA extension is initialized. | |
| NLMatrix | nlCUDAMatrixNewFromCRSMatrix (NLMatrix M) |
| Creates a CUDA on-GPU matrix from an OpenNL CRS matrix. | |
| NLMatrix | nlCUDAJacobiPreconditionerNewFromCRSMatrix (NLMatrix M) |
| Creates a CUDA on-GPU Jacobi preconditioner from an OpenNL CRS matrix. | |
| void | nlCUDAMatrixSpMV (NLMatrix M, const double *x, double *y, double alpha, double beta) |
| Computes a sparse matrix vector product. | |
| NLBlas_t | nlCUDABlas (void) |
| Gets a pointer to the BLAS abstraction layer for BLAS operation on the GPU using CUDA. | |
Internal OpenNL functions that interface with CUDA.
Definition in file nl_cuda.h.
| NLBlas_t nlCUDABlas | ( | void | ) |
Gets a pointer to the BLAS abstraction layer for BLAS operation on the GPU using CUDA.
Creates a CUDA on-GPU Jacobi preconditioner from an OpenNL CRS matrix.
Calling nlMultMatrixVector() with the created matrix only works with vectors that reside on the GPU.
| [in] | M | the OpenNL CRS matrix. |
Creates a CUDA on-GPU matrix from an OpenNL CRS matrix.
Calling nlMultMatrixVector() with the created matrix only works with vectors that reside on the GPU.
| [in] | M | the OpenNL CRS matrix to be copied. |
| void nlCUDAMatrixSpMV | ( | NLMatrix | M, |
| const double * | x, | ||
| double * | y, | ||
| double | alpha, | ||
| double | beta | ||
| ) |
Computes a sparse matrix vector product.
Computes \( y \leftarrow alpha M x + beta y \) As compared to NL abstract matrix API, it has the alpha and beta parameters.
| [in] | M | a matrix created from nlCUDAMAtrixNewFromCRSMatrix() |
| [in] | x | device pointer |
| [in,out] | y | device pointer |
| [in] | alpha,beta | two scalars |
| NLboolean nlExtensionIsInitialized_CUDA | ( | void | ) |
Tests whether the CUDA extension is initialized.
| NL_TRUE | if the CUDA extension is initialized. |
| NL_FALSE | otherwise. |
| NLboolean nlInitExtension_CUDA | ( | void | ) |
Initializes the CUDA extension.
This dynamically loads the CUDA libraries available in the system (if available) and retrieves the symbols in there.
| NL_TRUE | if CUDA could be successfully dynamically loaded and all functions could be found in it. |
| NL_FALSE | otherwise. |