public class DynamicChunking extends DataSource
| Modifier and Type | Class and Description |
|---|---|
static interface |
DynamicChunking.BlockAccessCallback |
class |
DynamicChunking.CacheThrashingError |
fdlDescriptor, isActivated, name, wsNameattributeOrder, axisOrdering, axisWeights, bounds, dataOrder, dimensionality, numAttributes, pointOrder, recordDesc| Constructor and Description |
|---|
DynamicChunking(DataSource dataSource)
Creates a DynamicChunking object which views a 'dataSource' through a
DynamicChunking memory manager and it has the same interface as a
DataSource.
|
| Modifier and Type | Method and Description |
|---|---|
void |
activate()
Activates the cache for the given memory and block size.
|
void |
datum(Datum datum,
IndexSpaceID dataId)
Given an IndexSpaceID, copy the values of the Datum at that position to the
argument Datum.
|
void |
datum(Datum dtm,
IndexSpaceID did,
FieldIDMapper mp)
not implemented
|
void |
deactivate()
Dealocate all resources used for the DynamicChunking.
|
java.util.Iterator<ISBounds> |
getBlockBoundsIterator() |
IndexSpaceID |
getBlockDimensions() |
DataSource |
getDataSource() |
ISBounds |
getIterationSubvolume() |
int |
getMaxMemoryBlockCount() |
long |
getMemory() |
java.lang.String |
getStatistics()
Generate a string indicating statistics for performance evaluation.
|
boolean |
isOptimizedBlockSizeAdaptive() |
boolean |
isOptimizedBlockSizeSlice() |
boolean |
isOptimizedBlockTable() |
void |
partitionRatio2blockDimensions() |
void |
setBlockAccessedCallback(DynamicChunking.BlockAccessCallback blockAccessed)
Sets up a callback function that is called each time a block is accessed.
|
void |
setBlockDimensions(IndexSpaceID dimensions) |
void |
setBlockSizeAdaptiveOptimization(ISBounds iterationSubvolume,
java.lang.String iterationId) |
void |
setBlockSizeSliceOptimization(EulerAngles eulerAngles,
ISBounds iterationSubvolume)
Uses the maximum block size given the amount of available memory.
|
void |
setIterationSubvolume(ISBounds bounds)
If the application specifies the iteration subvolume, the block table
is set to cover only the subvolume not the entire dataset.
|
void |
setMemory(long memory) |
void |
setPartitionRatio(IndexSpaceID partitionRatio) |
void |
subblock(DataBlock dstBlock,
ISBounds dstBounds,
ISBounds srcBounds)
Reads a subblock defined by srcBounds into the region of the Datablock argument
defined by dstBounds.
|
void |
subblock(DataBlock theBlock,
ISBounds dstBounds,
ISBounds srcBounds,
FieldIDMapper mp)
not implemented
|
checkActivated, clearCache, copyBestID, create, create, create, createRemote, createRemote, createRemoteClient, createRemoteClient, createRemoteDataSource, createRemoteDataSource, createRemoteDataSourceUDP, createRemoteUDP, createRemoteUDP, dumpData, equals, getFDLDescriptor, getMetadataCollection, getName, getValues, isActivated, main, setMetadataCollection, toString, toStringbyteSize, computeOffset, computeOffset, copyBounds, createDataBlock, createDataBlock, createDataBlock, createDatum, createDatum, createDatum, createDatum, createDatum, createDatum, datum, datum, datum, datum, datum, dim, getAttributeNames, getAxisOrdering, getAxisWeight, getAxisWeights, getBounds, getByte, getBytes, getBytes, getBytes, getBytes, getBytes, getBytes, getBytesByAttribute, getBytesByAttribute, getBytesByPoint, getBytesByPoint, getDataOrder, getDimensionsArray, getDouble, getDoubles, getDoubles, getDoubles, getDoubles, getDoubles, getDoubles, getDoublesByAttribute, getDoublesByAttribute, getDoublesByPoint, getDoublesByPoint, getFloat, getFloats, getFloats, getFloats, getFloats, getFloats, getFloats, getFloatsByAttribute, getFloatsByAttribute, getFloatsByPoint, getFloatsByPoint, getInt, getInts, getInts, getInts, getInts, getInts, getInts, getIntsByAttribute, getIntsByAttribute, getIntsByPoint, getIntsByPoint, getLowerBoundsArray, getNumAttributes, getRecordDescriptor, getShort, getShorts, getShorts, getShorts, getShorts, getShorts, getShorts, getShortsByAttribute, getShortsByAttribute, getShortsByPoint, getShortsByPoint, getStorageType, getUpperBoundsArray, getValues, getValuesByAttribute, getValuesByPoint, longVolume, setAxisOrdering, setBounds, setRecordDescriptor, size, subblock, subblock, subblock, subblock, subblock, subblock, subblock, subblock, subblock, subblock, useBytesOnly, volumepublic DynamicChunking(DataSource dataSource)
public DataSource getDataSource()
public void setMemory(long memory)
public long getMemory()
public void setIterationSubvolume(ISBounds bounds)
bounds - public void setBlockSizeSliceOptimization(EulerAngles eulerAngles, ISBounds iterationSubvolume)
eulerAngles - iterationSubvolume - public void setBlockSizeAdaptiveOptimization(ISBounds iterationSubvolume, java.lang.String iterationId)
public ISBounds getIterationSubvolume()
public void setBlockAccessedCallback(DynamicChunking.BlockAccessCallback blockAccessed)
blockAccessed - function to be called, if null no function is called.public void setBlockDimensions(IndexSpaceID dimensions)
public void setPartitionRatio(IndexSpaceID partitionRatio)
public IndexSpaceID getBlockDimensions()
public java.lang.String getStatistics()
DataSourcegetStatistics in class DataSourcepublic void activate()
activate in class DataSourcepublic void deactivate()
deactivate in class DataSourcepublic int getMaxMemoryBlockCount()
public void datum(Datum datum, IndexSpaceID dataId)
DataCollectiondatum in interface Indexabledatum in class DataCollectionpublic void datum(Datum dtm, IndexSpaceID did, FieldIDMapper mp)
datum in interface Indexabledatum in class DataCollectionpublic void subblock(DataBlock dstBlock, ISBounds dstBounds, ISBounds srcBounds)
DataCollectionsubblock in interface Indexablesubblock in class DataCollectionpublic void subblock(DataBlock theBlock, ISBounds dstBounds, ISBounds srcBounds, FieldIDMapper mp)
subblock in interface Indexablesubblock in class DataCollectionpublic java.util.Iterator<ISBounds> getBlockBoundsIterator()
public boolean isOptimizedBlockTable()
public boolean isOptimizedBlockSizeSlice()
public boolean isOptimizedBlockSizeAdaptive()
public void partitionRatio2blockDimensions()