|
template<typename Matrix , typename InVector , typename OutVector > |
__global__ void | ColumnMajorDenseMatrixViewVectorMultiplicationKernel (const Matrix matrix, const InVector inVector, OutVector outVector, const int begin, const int end, int gridIdx) |
|
template<typename Matrix , typename AdjacencyMatrix > |
void | copyAdjacencyStructure (const Matrix &A, AdjacencyMatrix &B, bool has_symmetric_pattern=false, bool ignore_diagonal=true) |
|
template<typename Matrix1 , typename Matrix2 > |
void | copySparseMatrix (Matrix1 &A, const Matrix2 &B) |
|
template<typename Matrix1 , typename Matrix2 > |
std::enable_if< std::is_same< typenameMatrix1::DeviceType, typenameMatrix2::DeviceType >::value >::type | copySparseMatrix_impl (Matrix1 &A, const Matrix2 &B) |
|
template<typename Matrix1 , typename Matrix2 > |
std::enable_if<!std::is_same< typenameMatrix1::DeviceType, typenameMatrix2::DeviceType >::value &&std::is_same< typenameMatrix2::DeviceType, Devices::Host >::value >::type | copySparseMatrix_impl (Matrix1 &A, const Matrix2 &B) |
|
template<typename Matrix1 , typename Matrix2 > |
std::enable_if<!std::is_same< typenameMatrix1::DeviceType, typenameMatrix2::DeviceType >::value &&std::is_same< typenameMatrix2::DeviceType, Devices::Cuda >::value >::type | copySparseMatrix_impl (Matrix1 &A, const Matrix2 &B) |
|
template<int tileDim, int tileRowBlockSize, typename ResultMatrix , typename Matrix1 , typename Matrix2 > |
__global__ void | DenseMatrixProductKernel (ResultMatrix resultMatrix, const Matrix1 matrixA, const Matrix2 matrixB, const typename ResultMatrix::RealType matrixMultiplicator, const typename ResultMatrix::IndexType gridIdx_x, const typename ResultMatrix::IndexType gridIdx_y) |
|
template<int tileDim, int tileRowBlockSize, typename OutputMatrix , typename InputMatrix , typename Real , typename Index > |
__global__ void | DenseTranspositionAlignedKernel (OutputMatrix resultMatrix, const InputMatrix inputMatrix, const Real matrixMultiplicator, const Index gridIdx_x, const Index gridIdx_y) |
|
template<int tileDim, int tileRowBlockSize, typename OutputMatrix , typename InputMatrix , typename Real , typename Index > |
__global__ void | DenseTranspositionNonAlignedKernel (OutputMatrix resultMatrix, const InputMatrix inputMatrix, const Real matrixMultiplicator, const Index gridIdx_x, const Index gridIdx_y) |
|
template<typename RealType , typename IndexType > |
__global__ void | GeamCudaKernel (const IndexType m, const IndexType n, const RealType alpha, const RealType *A, const IndexType lda, const RealType beta, const RealType *B, const IndexType ldb, RealType *C, const IndexType ldc) |
|
template<typename RealType , typename IndexType > |
__global__ void | GemvCudaKernel (const IndexType m, const IndexType n, const RealType alpha, const RealType *A, const IndexType lda, const RealType *x, const RealType beta, RealType *y) |
|
template<typename Matrix > |
auto | getGinkgoMatrixCsr (std::shared_ptr< const gko::Executor > exec, Matrix &matrix) -> std::unique_ptr< gko::matrix::Csr< typename Matrix::RealType, typename Matrix::IndexType > > |
| Converts any TNL sparse matrix to a Ginkgo Csr matrix. More...
|
|
template<typename Matrix > |
auto | getGinkgoMatrixCsrView (std::shared_ptr< const gko::Executor > exec, Matrix &matrix) -> std::unique_ptr< gko::matrix::Csr< typename Matrix::RealType, typename Matrix::IndexType > > |
| Creates a Ginkgo Csr matrix view from a TNL CSR matrix. More...
|
|
template<typename InMatrixView , typename OutMatrixView , typename Real , typename Index > |
__global__ void | MultidiagonalMatrixTranspositionCudaKernel (const InMatrixView inMatrix, OutMatrixView outMatrix, const Real matrixMultiplicator, const Index gridIdx) |
|
template<typename Real , typename Device , typename Index , typename Real_ , typename Device_ , typename Index_ , ElementsOrganization Organization, typename RealAllocator > |
bool | operator!= (const DenseMatrixView< Real, Device, Index, Organization > &leftMatrix, const DenseMatrix< Real_, Device_, Index_, Organization, RealAllocator > &rightMatrix) |
| Comparison operator with another dense matrix view. More...
|
|
template<typename Real , typename Device , typename Index , ElementsOrganization Organization, typename RealAllocator > |
std::ostream & | operator<< (std::ostream &str, const DenseMatrix< Real, Device, Index, Organization, RealAllocator > &matrix) |
| Insertion operator for dense matrix and output stream. More...
|
|
template<typename MatrixElementsLambda , typename CompressedRowLengthsLambda , typename Real , typename Device , typename Index > |
std::ostream & | operator<< (std::ostream &str, const LambdaMatrix< MatrixElementsLambda, CompressedRowLengthsLambda, Real, Device, Index > &matrix) |
| Insertion operator for lambda matrix and output stream. More...
|
|
template<typename MatrixElementsLambda , typename CompressedRowLengthsLambda , typename Real , typename Index > |
std::ostream & | operator<< (std::ostream &str, const LambdaMatrixRowView< MatrixElementsLambda, CompressedRowLengthsLambda, Real, Index > &row) |
| Insertion operator for a Lambda matrix row. More...
|
|
template<typename Real , typename Device , typename Index > |
std::ostream & | operator<< (std::ostream &str, const Matrix< Real, Device, Index > &matrix) |
| Overloaded insertion operator for printing a matrix to output stream. More...
|
|
template<typename Real , typename Device , typename Index > |
std::ostream & | operator<< (std::ostream &str, const MatrixView< Real, Device, Index > &matrix) |
| Overloaded insertion operator for printing a matrix to output stream. More...
|
|
template<typename SegmentView , typename ValuesView , typename ColumnsIndexesView > |
std::ostream & | operator<< (std::ostream &str, const SparseMatrixRowView< SegmentView, ValuesView, ColumnsIndexesView > &row) |
| Insertion operator for a sparse matrix row. More...
|
|
template<typename Real , typename Device , typename Index , typename Real_ , typename Device_ , typename Index_ , ElementsOrganization Organization, typename RealAllocator > |
bool | operator== (const DenseMatrixView< Real, Device, Index, Organization > &leftMatrix, const DenseMatrix< Real_, Device_, Index_, Organization, RealAllocator > &rightMatrix) |
| Comparison operator with another dense matrix view. More...
|
|
template<typename Matrix , typename PermutationArray > |
void | permuteMatrixColumns (Matrix &matrix, const PermutationArray &iperm) |
|
template<typename Matrix , typename PermutationArray > |
void | permuteMatrixRows (Matrix &matrix, const PermutationArray &perm) |
|
template<typename Array1 , typename Array2 , typename PermutationArray > |
void | reorderArray (const Array1 &src, Array2 &dest, const PermutationArray &perm) |
|
template<typename Matrix1 , typename Matrix2 , typename PermutationArray > |
void | reorderSparseMatrix (const Matrix1 &matrix1, Matrix2 &matrix2, const PermutationArray &perm, const PermutationArray &iperm) |
|
template<typename Matrix , typename InVector , typename OutVector > |
__global__ void | RowMajorDenseMatrixViewVectorMultiplicationKernel (const Matrix matrix, const InVector inVector, OutVector outVector, const int first, const int last, int gridIdx) |
|
template<typename Matrix1 , typename Matrix2 > |
__global__ void | SparseMatrixCopyKernel (Matrix1 *A, const Matrix2 *B, const typename Matrix2::IndexType *rowLengths, typename Matrix2::IndexType rows) |
|
template<typename Vector , typename Matrix > |
__global__ void | SparseMatrixSetRowLengthsVectorKernel (Vector *rowLengths, const Matrix *matrix, typename Matrix::IndexType rows, typename Matrix::IndexType cols) |
|
template<typename InMatrixView , typename OutMatrixView , typename Real , typename Index > |
__global__ void | TridiagonalMatrixTranspositionCudaKernel (const InMatrixView inMatrix, OutMatrixView outMatrix, Real matrixMultiplicator, Index gridIdx) |
|
template<int BlockSize, int ThreadsPerRow, typename Matrix , typename InVector , typename OutVector > |
__global__ void | VectorColumnMajorDenseMatrixViewVectorMultiplicationKernel (const Matrix matrix, const InVector inVector, OutVector outVector, const int begin, const int end, int gridIdx) |
|
template<typename Device , typename Real , typename Index > |
SparseMatrixView< Real, Device, Index, GeneralMatrix, Algorithms::Segments::CSRViewDefault > | wrapCSRMatrix (const Index &rows, const Index &columns, Index *rowPointers, Real *values, Index *columnIndexes) |
| Function for wrapping of arrays defining CSR format into a sparse matrix view. More...
|
|
template<typename Device , typename Real , typename Index , ElementsOrganization Organization = Algorithms::Segments::DefaultElementsOrganization< Device >::getOrganization()> |
DenseMatrixView< Real, Device, Index, Organization > | wrapDenseMatrix (const Index &rows, const Index &columns, Real *values) |
| Function for wrapping an array of values into a dense matrix view. More...
|
|
template<typename Device , ElementsOrganization Organization, typename Real , typename Index , int Alignment = 1> |
auto | wrapEllpackMatrix (const Index rows, const Index columns, const Index nonzerosPerRow, Real *values, Index *columnIndexes) -> decltype(EllpackMatrixWrapper< Device, Organization, Real, Index, Alignment >::wrap(rows, columns, nonzerosPerRow, values, columnIndexes)) |
| Function for wrapping of arrays defining Ellpack format into a sparse matrix view. More...
|
|