Class IntFindRunsKernel
java.lang.Object
com.illumon.iris.db.v2.sort.findruns.IntFindRunsKernel
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic FindRunsKernelstatic voidfindRuns(IntChunk sortedValues, IntChunk<Attributes.ChunkPositions> offsetsIn, IntChunk<Attributes.ChunkLengths> lengthsIn, WritableIntChunk<Attributes.ChunkPositions> offsetsOut, WritableIntChunk<Attributes.ChunkLengths> lengthsOut) Find runs of two or more identical values in a sorted chunk.static voidfindRunsSingles(IntChunk sortedValues, WritableIntChunk<Attributes.ChunkPositions> offsetsOut, WritableIntChunk<Attributes.ChunkLengths> lengthsOut) Find runs of identical values in a sorted chunk.
-
Constructor Details
-
IntFindRunsKernel
public IntFindRunsKernel()
-
-
Method Details
-
findRunsSingles
public static void findRunsSingles(IntChunk sortedValues, WritableIntChunk<Attributes.ChunkPositions> offsetsOut, WritableIntChunk<Attributes.ChunkLengths> lengthsOut) Find runs of identical values in a sorted chunk. If a single value exists, it is included as run of length 1.- Parameters:
sortedValues- a chunk of sorted valuesoffsetsOut- an output chunk, with offsets of starting locations that a run occurredlengthsOut- an output chunk, parallel to offsetsOut, with the lengths of found runs
-
findRuns
public static void findRuns(IntChunk sortedValues, IntChunk<Attributes.ChunkPositions> offsetsIn, IntChunk<Attributes.ChunkLengths> lengthsIn, WritableIntChunk<Attributes.ChunkPositions> offsetsOut, WritableIntChunk<Attributes.ChunkLengths> lengthsOut) Find runs of two or more identical values in a sorted chunk. This is used as part of an overall sort, after the timsort (or other sorting) kernel to identify the runs that must be sorted according to secondary keys.- Parameters:
sortedValues- a chunk of sorted valuesoffsetsIn- the offsets within the chunk to check for runslengthsIn- the lengths parallel to offsetsIn for run checkingoffsetsOut- an output chunk, with offsets of starting locations that a run occurredlengthsOut- an output chunk, parallel to offsetsOut, with the lengths of found runs Note, that lengthsIn must contain values greater than 1, and lengthsOut additionally only contain values greater than one
-
createContext
-