class GpuBatchSubPartitioner extends AutoCloseable with Logging
Drain the batches in the input iterator and partition each batch into smaller parts. It assumes all the batches are on GPU. e.g. There are two batches as below (2,4,6), (6,8,8), and split them into 6 partitions. The result will be 0 -> (2) 1 -> (6), (6) (two separate not merged sub batches) 2 -> empty 3 -> (4) 4 -> empty 5 -> (8, 8) (A single batch)
- Alphabetic
- By Inheritance
- GpuBatchSubPartitioner
- Logging
- AutoCloseable
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new GpuBatchSubPartitioner(inputIter: Iterator[ColumnarBatch], inputBoundKeys: Seq[GpuExpression], numPartitions: Int, hashSeed: Int, name: String = "GpuBatchSubPartitioner")
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
batchesCount: Int
Get the count of remaining batches (nonempty) in all the partitions currently.
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
close(): Unit
- Definition Classes
- GpuBatchSubPartitioner → AutoCloseable
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
getBatchesByPartition(partId: Int): Seq[SpillableColumnarBatch]
Get a partition data as a Seq of SpillableColumnarBatch.
Get a partition data as a Seq of SpillableColumnarBatch. The caller should NOT close the returned batches. If the caller wants to own the returned batches, call
releaseBatchByPartitioninstead.- partId
the partition id. An exception will be raised up if it is out of range.
- returns
a Seq of SpillableColumnarBatch if the given "partId" is in range, or null if the partition has been released.
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
initializeLogIfNecessary(isInterpreter: Boolean, silent: Boolean): Boolean
- Attributes
- protected
- Definition Classes
- Logging
-
def
initializeLogIfNecessary(isInterpreter: Boolean): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isTraceEnabled(): Boolean
- Attributes
- protected
- Definition Classes
- Logging
-
def
log: Logger
- Attributes
- protected
- Definition Classes
- Logging
-
def
logDebug(msg: ⇒ String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logDebug(msg: ⇒ String): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logError(msg: ⇒ String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logError(msg: ⇒ String): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logInfo(msg: ⇒ String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logInfo(msg: ⇒ String): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logName: String
- Attributes
- protected
- Definition Classes
- Logging
-
def
logTrace(msg: ⇒ String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logTrace(msg: ⇒ String): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logWarning(msg: ⇒ String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logWarning(msg: ⇒ String): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
partitionsCount: Int
The actual count of partitions
-
def
releaseBatchesByPartition(partId: Int): Seq[SpillableColumnarBatch]
Release a partition data as a Seq of SpillableColumnarBatch, and the caller is responsible for closing the returned batch.
Release a partition data as a Seq of SpillableColumnarBatch, and the caller is responsible for closing the returned batch.
- partId
the partition id. An exception will be raised up if it is out of range.
- returns
a Seq of SpillableColumnarBatch if the given "partId" is in range, or null if the partition has been released.
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()