object GpuShuffledSizedHashJoinExec extends Serializable
- Alphabetic
- By Inheritance
- GpuShuffledSizedHashJoinExec
- Serializable
- Serializable
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
case class
BoundJoinExprs(boundBuildKeys: Seq[GpuExpression], buildTypes: Array[DataType], buildOutput: Seq[Attribute], boundStreamKeys: Seq[GpuExpression], streamTypes: Array[DataType], streamOutput: Seq[Attribute], boundCondition: Option[GpuExpression], numFirstConditionTableColumns: Int, compareNullsEqual: Boolean, buildSideNeedsNullFilter: Boolean) extends Product with Serializable
Utility class to track bound expressions and expression metadata related to a join.
-
trait
HostHostJoinSizer extends JoinSizer[SpillableHostConcatResult]
Join sizer when both the left and right table are coming directly from a shuffle and the data will be on the host.
Join sizer when both the left and right table are coming directly from a shuffle and the data will be on the host. Caches shuffle batches in host memory while probing without grabbing the GPU semaphore.
-
trait
HostHostUnspillableJoinSizer extends JoinSizer[ColumnarBatch]
Very similar to the HostHostJoinSizer except it does not support host spillable data.
Very similar to the HostHostJoinSizer except it does not support host spillable data. This should only be used when the amount of data being probed is the target batch size or less, which matches the behavior of normal shuffle processing today. Ideally we should be using HostHostJoinSizer, but this saves the overhead of registering and unregistering all of the shuffle buffers with the spill framework. See https://github.com/NVIDIA/spark-rapids/issues/11322.
-
case class
JoinInfo(joinType: JoinType, buildSide: GpuBuildSide, buildIter: Iterator[ColumnarBatch], buildSize: Long, buildStats: Option[JoinBuildSideStats], streamIter: Iterator[ColumnarBatch], exprs: BoundJoinExprs) extends Product with Serializable
Utility class to track information related to a join.
-
trait
JoinSizer[T <: AutoCloseable] extends AnyRef
Trait to house common code for determining the ideal build/stream assignments for symmetric joins.
-
trait
SpillableColumnarBatchJoinSizer extends JoinSizer[SpillableColumnarBatch]
Join sizer to use when at least one side of the join is coming from another GPU exec node such that the GPU semaphore is already held.
Join sizer to use when at least one side of the join is coming from another GPU exec node such that the GPU semaphore is already held. Caches input batches on the GPU.
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
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
- def createJoinIterator(info: JoinInfo, spillableBuiltBatch: LazySpillableColumnarBatch, lazyStream: Iterator[LazySpillableColumnarBatch], gpuBatchSizeBytes: Long, opTime: GpuMetric, joinTime: GpuMetric): Iterator[ColumnarBatch]
-
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] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def getConcatMetrics(metrics: Map[String, GpuMetric]): Map[String, GpuMetric]
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
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()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
- def useSizedJoin(conf: RapidsConf, joinType: JoinType, leftKeys: Seq[Expression], rightKeys: Seq[Expression]): Boolean
-
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()
- object BoundJoinExprs extends Serializable