## Uses of Interface
org.apache.sysds.runtime.controlprogram.caching.CacheBlock

Packages that use CacheBlock
org.apache.sysds.runtime.compress
org.apache.sysds.runtime.controlprogram.caching
org.apache.sysds.runtime.controlprogram.context
org.apache.sysds.runtime.controlprogram.parfor
org.apache.sysds.runtime.data
org.apache.sysds.runtime.instructions.spark.data
org.apache.sysds.runtime.matrix.data
org.apache.sysds.runtime.util

### Uses of CacheBlock in org.apache.sysds.runtime.compress

Classes in org.apache.sysds.runtime.compress that implement CacheBlock
`class` `CompressedMatrixBlock`

Methods in org.apache.sysds.runtime.compress with parameters of type CacheBlock
`MatrixBlock` CompressedMatrixBlock.`slice(int rl, int ru, int cl, int cu, boolean deep, CacheBlock ret)`

### Uses of CacheBlock in org.apache.sysds.runtime.controlprogram.caching

Classes in org.apache.sysds.runtime.controlprogram.caching with type parameters of type CacheBlock
`class` `CacheableData<T extends CacheBlock>` Each object of this class is a cache envelope for some large piece of data called "cache block".

Methods in org.apache.sysds.runtime.controlprogram.caching that return CacheBlock
`CacheBlock` ByteBuffer.`deserializeBlock()`
`static CacheBlock` CacheBlockFactory.`newInstance(int code)`
`CacheBlock` UnifiedMemoryManager.`pin(String key, CacheBlock block, boolean dirty)` Pins a cache block into operation memory.
`static CacheBlock` LazyWriteBuffer.`readBlock(String fname, boolean matrix)`
`CacheBlock` CacheBlock.`slice(int rl, int ru, int cl, int cu, CacheBlock block)` Slice a sub block out of the current block and write into the given output block.

Methods in org.apache.sysds.runtime.controlprogram.caching with parameters of type CacheBlock
`static long` LazyWriteBuffer.`getCacheBlockSize(CacheBlock cb)`
`static int` CacheBlockFactory.`getCode(CacheBlock block)`
`static ArrayList<?>` CacheBlockFactory.`getPairList(CacheBlock block)`
`static boolean` CacheableData.`isBelowCachingThreshold(CacheBlock data)`
`static boolean` ByteBuffer.`isValidCapacity(long size, CacheBlock cb)` Determines if byte buffer can hold the given size given this specific cache block.
`void` CacheBlock.`merge(CacheBlock that, boolean appendOnly)` Merge the given block into the current block.
`CacheBlock` UnifiedMemoryManager.`pin(String key, CacheBlock block, boolean dirty)` Pins a cache block into operation memory.
`void` ByteBuffer.`serializeBlock(CacheBlock cb)`
`CacheBlock` CacheBlock.`slice(int rl, int ru, int cl, int cu, CacheBlock block)` Slice a sub block out of the current block and write into the given output block.
`void` UnifiedMemoryManager.`unpin(String key, CacheBlock block)` Unpins (releases) a cache block from operation memory.
`static int` LazyWriteBuffer.`writeBlock(String fname, CacheBlock cb)`

### Uses of CacheBlock in org.apache.sysds.runtime.controlprogram.context

Methods in org.apache.sysds.runtime.controlprogram.context that return types with arguments of type CacheBlock
`org.apache.spark.broadcast.Broadcast<CacheBlock>` SparkExecutionContext.`broadcastVariable(CacheableData<CacheBlock> cd)`

Methods in org.apache.sysds.runtime.controlprogram.context with parameters of type CacheBlock
`static CacheableData<?>` ExecutionContext.`createCacheableData(CacheBlock cb)`

Method parameters in org.apache.sysds.runtime.controlprogram.context with type arguments of type CacheBlock
`org.apache.spark.broadcast.Broadcast<CacheBlock>` SparkExecutionContext.`broadcastVariable(CacheableData<CacheBlock> cd)`

### Uses of CacheBlock in org.apache.sysds.runtime.controlprogram.parfor

Method parameters in org.apache.sysds.runtime.controlprogram.parfor with type arguments of type CacheBlock
`void` CachedReuseVariables.`reuseVariables(long pfid, LocalVariableMap vars, Collection<String> excludeList, Map<String,org.apache.spark.broadcast.Broadcast<CacheBlock>> _brInputs, boolean cleanCache)`

Constructor parameters in org.apache.sysds.runtime.controlprogram.parfor with type arguments of type CacheBlock
Constructor and Description
`RemoteParForSparkWorker(long jobid, String program, HashMap<String,byte[]> clsMap, boolean cpCaching, org.apache.spark.util.LongAccumulator atasks, org.apache.spark.util.LongAccumulator aiters, Map<String,org.apache.spark.broadcast.Broadcast<CacheBlock>> brInputs, boolean cleanCache, Map<String,String> lineage)`

### Uses of CacheBlock in org.apache.sysds.runtime.data

Classes in org.apache.sysds.runtime.data that implement CacheBlock
`class` `TensorBlock` A `TensorBlock` is the most top level representation of a tensor.

Methods in org.apache.sysds.runtime.data that return CacheBlock
`CacheBlock` TensorBlock.`slice(int rl, int ru, int cl, int cu, CacheBlock block)`

Methods in org.apache.sysds.runtime.data with parameters of type CacheBlock
`void` TensorBlock.`merge(CacheBlock that, boolean appendOnly)`
`CacheBlock` TensorBlock.`slice(int rl, int ru, int cl, int cu, CacheBlock block)`

### Uses of CacheBlock in org.apache.sysds.runtime.instructions.spark.data

Classes in org.apache.sysds.runtime.instructions.spark.data with type parameters of type CacheBlock
`class` `BroadcastObject<T extends CacheBlock>`
`class` `PartitionedBlock<T extends CacheBlock>` This class is for partitioned matrix/frame blocks, to be used as broadcasts.
`class` `PartitionedBroadcast<T extends CacheBlock>` This class is a wrapper around an array of broadcasts of partitioned matrix/frame blocks, which is required due to 2GB limitations of Spark's broadcast handling.

### Uses of CacheBlock in org.apache.sysds.runtime.matrix.data

Classes in org.apache.sysds.runtime.matrix.data that implement CacheBlock
`class` `FrameBlock`
`class` `MatrixBlock`

Methods in org.apache.sysds.runtime.matrix.data with parameters of type CacheBlock
`void` MatrixBlock.`merge(CacheBlock that, boolean appendOnly)`
`void` FrameBlock.`merge(CacheBlock that, boolean bDummy)`
`static List` OperationsOnMatrixValues.`performSlice(IndexRange ixrange, int blen, int iix, int jix, CacheBlock in)` Slice used in broadcasting matrix blocks for spark, since this slice up a given matrix into blocks.
`MatrixBlock` MatrixBlock.`slice(int rl, int ru, int cl, int cu, boolean deep, CacheBlock ret)` Method to perform rightIndex operation for a given lower and upper bounds in row and column dimensions.
`MatrixBlock` MatrixBlock.`slice(int rl, int ru, int cl, int cu, CacheBlock ret)`
`FrameBlock` FrameBlock.`slice(int rl, int ru, int cl, int cu, CacheBlock retCache)` Right indexing operations to slice a subframe out of this frame block.

### Uses of CacheBlock in org.apache.sysds.runtime.util

Methods in org.apache.sysds.runtime.util that return CacheBlock
`static CacheBlock` LocalFileUtils.`readCacheBlockFromLocal(String fname, boolean matrix)` Reads a matrix/frame block from local file system.

Methods in org.apache.sysds.runtime.util with parameters of type CacheBlock
`static void` LocalFileUtils.`writeCacheBlockToLocal(String fname, CacheBlock cb)` Writes a matrix/frame block to local file system.