TiffAutoDecodeBudget class
Picks a (maxBytesPerChunk, workerCount) pair for
TiffParallelDecoder.decodeBanded sized to both metadata and the
machine actually running it — the pairing TiffChunkPlan and
TiffChunkPlan.recommendedWorkerCount need a caller to already know
(see their own doc comments on why neither reads OS/CPU state itself).
Without this, a caller either hardcodes a number that's far too small
for a big multi-core machine with memory to spare, or far too large for
a small one — recommend instead reads what's actually idle right now
(SystemMemoryInfo.probe, Platform.numberOfProcessors) and sizes to
that, per call, so the same code adapts to whatever machine it runs on
and however loaded it is at the time.
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
recommend(
TiffImageMetadata metadata, {double systemMemoryFraction = 0.55, double reserveFraction = 0.12, int reserveBytes = 768 * 1024 * 1024, double doubleBufferSafetyFactor = 1.5, int reservedCores = 1, int fallbackAggregateBytes = 512 * 1024 * 1024, int minAggregateBytes = 64 * 1024 * 1024, int maxAggregateBytes = 6144 * 1024 * 1024, int minBytesPerChunk = 16 * 1024 * 1024}) → ({int maxBytesPerChunk, int workerCount}) -
Recommends chunk/worker sizing for decoding
metadatain parallel.