tatami_chunked
Helpers to create custom chunked tatami matrices
Loading...
Searching...
No Matches
Classes | Enumerations | Functions
tatami_chunked Namespace Reference

Methods to handle chunked tatami matrices. More...

Classes

struct  ChunkDimensionStats
 Statistics for regular chunks along a dimension. More...
 
class  CustomDenseChunkedMatrix
 Matrix of custom dense chunks. More...
 
struct  CustomDenseChunkedMatrixOptions
 Options for data extraction from a CustomDenseChunkedMatrix. More...
 
class  CustomSparseChunkedMatrix
 Matrix of custom sparse chunks. More...
 
struct  CustomSparseChunkedMatrixOptions
 Options for data extraction from a CustomSparseChunkedMatrix. More...
 
struct  DenseSlabFactory
 Factory for dense slabs. More...
 
class  LruSlabCache
 Least-recently-used cache for slabs. More...
 
class  MockSimpleDenseChunk
 Mock a simple dense chunk for a CustomDenseChunkedMatrix. More...
 
class  MockSimpleSparseChunk
 Mock a simple sparse chunk for a CustomSparseChunkedMatrix. More...
 
class  MockSubsettedDenseChunk
 Mock a subsettable dense chunk for a CustomDenseChunkedMatrix. More...
 
class  MockSubsettedSparseChunk
 Mock a subsettable sparse chunk for a CustomSparseChunkedMatrix. More...
 
class  OracularSlabCache
 Oracular-aware cache for slabs. More...
 
class  OracularSubsettedSlabCache
 Oracle-aware cache for slabs, plus subsets. More...
 
struct  OracularSubsettedSlabCacheSelectionDetails
 Details on the subset to extract in OracularSubsettedSlabCache. More...
 
class  OracularVariableSlabCache
 Oracle-aware cache for variable-size slabs. More...
 
class  SimpleDenseChunkWrapper
 Create a dense chunk for a CustomDenseChunkedMatrix. More...
 
class  SimpleSparseChunkWrapper
 Create a sparse chunk for a CustomSparseChunkedMatrix. More...
 
struct  SlabCacheStats
 Statistics for slab caching. More...
 
struct  SparseSlabFactory
 Factory for sparse slabs. More...
 

Enumerations

enum class  OracularSubsettedSlabCacheSelectionType : char { FULL , BLOCK , INDEX }
 

Functions

template<typename Index_ >
Index_ integer_ceil (Index_ left, Index_ right)
 
template<typename Index_ >
Index_ get_chunk_length (const ChunkDimensionStats< Index_ > &stats, Index_ i)
 

Detailed Description

Methods to handle chunked tatami matrices.

Enumeration Type Documentation

◆ OracularSubsettedSlabCacheSelectionType

Type of selection on the target dimension. Used to determine the subsets to extract in OracularSubsettedSlabCache.

  • FULL: all rows/columns.
  • BLOCK: a contiguous block of rows/columns.
  • INDEX: an indexed subset of rows/columns.

Function Documentation

◆ integer_ceil()

template<typename Index_ >
Index_ tatami_chunked::integer_ceil ( Index_  left,
Index_  right 
)
Template Parameters
Index_Integer type.

Obtain the integer ceiling of left/right.

Parameters
leftA non-negative number.
rightA non-negative number.
Returns
The integer ceiling if right > 0, otherwise 0.

◆ get_chunk_length()

template<typename Index_ >
Index_ tatami_chunked::get_chunk_length ( const ChunkDimensionStats< Index_ > &  stats,
Index_  i 
)
Template Parameters
Index_Integer type for the various dimensions.
Parameters
statsChunk dimension statistics.
iZero-based index of the chunk of interest along the relevant dimension.
Returns
Length of chunk i. This is either ChunkDimensionStats::chunk_length or ChunkDimensionStats::last_chunk_length, depending on whether i is the last chunk.