eckit::linalg::allocator::NonOwningAllocator class

In-place allocator for sparse matrices, directly mapping supporting arrays including from another SparseMatrix. It is able to provide a "view".

Base classes

class eckit::linalg::SparseMatrix::Allocator

Constructors, destructors, conversion operators

NonOwningAllocator(Size Nr, Size Nc, Size nnz, Index* ia, Index* ja, Scalar* a)

Public functions

auto allocate(SparseMatrix::Shape&) -> SparseMatrix::Layout override
void deallocate(SparseMatrix::Layout, SparseMatrix::Shape) override
auto inSharedMemory() const -> bool override
void print(std::ostream&) const override

Function documentation

SparseMatrix::Layout eckit::linalg::allocator::NonOwningAllocator::allocate(SparseMatrix::Shape&) override

bool eckit::linalg::allocator::NonOwningAllocator::inSharedMemory() const override

Returns if allocation is in shared memory