MLIR 22.0.0git
Storage.h File Reference

Go to the source code of this file.

Classes

class  mlir::sparse_tensor::SparseTensorStorageBase
 Abstract base class for SparseTensorStorage<P,C,V>. More...
class  mlir::sparse_tensor::SparseTensorStorage< P, C, V >
 A memory-resident sparse tensor using a storage scheme based on per-level sparse/dense annotations. More...

Namespaces

namespace  mlir
 Include the generated interface declarations.
namespace  mlir::sparse_tensor

Macros

#define DECL_GETPOSITIONS(PNAME, P)
 Gets positions-overhead storage for the given level.
#define DECL_GETCOORDINATES(INAME, C)
 Gets coordinates-overhead storage for the given level.
#define DECL_GETCOORDINATESBUFFER(INAME, C)
 Gets coordinates-overhead storage buffer for the given level.
#define DECL_GETVALUES(VNAME, V)
 Gets primary storage.
#define DECL_LEXINSERT(VNAME, V)
 Element-wise insertion in lexicographic coordinate order.
#define DECL_EXPINSERT(VNAME, V)
 Expanded insertion.

Macro Definition Documentation

◆ DECL_EXPINSERT

#define DECL_EXPINSERT ( VNAME,
V )
Value:
virtual void expInsert(uint64_t *, V *, bool *, uint64_t *, uint64_t, \
uint64_t);

Expanded insertion.

Note that this method resets the values/filled-switch array back to all-zero/false while only iterating over the nonzero elements.

Definition at line 166 of file Storage.h.

◆ DECL_GETCOORDINATES

#define DECL_GETCOORDINATES ( INAME,
C )
Value:
virtual void getCoordinates(std::vector<C> **, uint64_t);

Gets coordinates-overhead storage for the given level.

Definition at line 141 of file Storage.h.

◆ DECL_GETCOORDINATESBUFFER

#define DECL_GETCOORDINATESBUFFER ( INAME,
C )
Value:
virtual void getCoordinatesBuffer(std::vector<C> **, uint64_t);

Gets coordinates-overhead storage buffer for the given level.

Definition at line 147 of file Storage.h.

◆ DECL_GETPOSITIONS

#define DECL_GETPOSITIONS ( PNAME,
P )
Value:
virtual void getPositions(std::vector<P> **, uint64_t);

Gets positions-overhead storage for the given level.

Definition at line 135 of file Storage.h.

◆ DECL_GETVALUES

#define DECL_GETVALUES ( VNAME,
V )
Value:
virtual void getValues(std::vector<V> **);

Gets primary storage.

Definition at line 153 of file Storage.h.

◆ DECL_LEXINSERT

#define DECL_LEXINSERT ( VNAME,
V )
Value:
virtual void lexInsert(const uint64_t *, V);

Element-wise insertion in lexicographic coordinate order.

The first argument is the level-coordinates for the value being inserted.

Definition at line 159 of file Storage.h.