Packages

c

com.nvidia.spark.rapids

GpuHashAggregateExec

case class GpuHashAggregateExec(requiredChildDistributionExpressions: Option[Seq[Expression]], groupingExpressions: Seq[Expression], aggregateExpressions: Seq[GpuAggregateExpression], aggregateAttributes: Seq[Attribute], resultExpressions: Seq[NamedExpression], child: SparkPlan, configuredTargetBatchSize: Long) extends SparkPlan with UnaryExecNode with GpuExec with Arm with Product with Serializable

The GPU version of HashAggregateExec

requiredChildDistributionExpressions

this is unchanged by the GPU. It is used in EnsureRequirements to be able to add shuffle nodes

groupingExpressions

The expressions that, when applied to the input batch, return the grouping key

aggregateExpressions

The GpuAggregateExpression instances for this node

aggregateAttributes

References to each GpuAggregateExpression (attribute references)

resultExpressions

the expected output expression of this hash aggregate (which this node should project)

child

incoming plan (where we get input columns from)

configuredTargetBatchSize

user-configured maximum device memory size of a batch

Linear Supertypes
GpuExec, Arm, UnaryExecNode, SparkPlan, Serializable, Serializable, Logging, QueryPlan[SparkPlan], TreeNode[SparkPlan], Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. GpuHashAggregateExec
  2. GpuExec
  3. Arm
  4. UnaryExecNode
  5. SparkPlan
  6. Serializable
  7. Serializable
  8. Logging
  9. QueryPlan
  10. TreeNode
  11. Product
  12. Equals
  13. AnyRef
  14. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new GpuHashAggregateExec(requiredChildDistributionExpressions: Option[Seq[Expression]], groupingExpressions: Seq[Expression], aggregateExpressions: Seq[GpuAggregateExpression], aggregateAttributes: Seq[Attribute], resultExpressions: Seq[NamedExpression], child: SparkPlan, configuredTargetBatchSize: Long)

    requiredChildDistributionExpressions

    this is unchanged by the GPU. It is used in EnsureRequirements to be able to add shuffle nodes

    groupingExpressions

    The expressions that, when applied to the input batch, return the grouping key

    aggregateExpressions

    The GpuAggregateExpression instances for this node

    aggregateAttributes

    References to each GpuAggregateExpression (attribute references)

    resultExpressions

    the expected output expression of this hash aggregate (which this node should project)

    child

    incoming plan (where we get input columns from)

    configuredTargetBatchSize

    user-configured maximum device memory size of a batch

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. lazy val additionalMetrics: Map[String, GpuMetric]
    Definition Classes
    GpuHashAggregateExecGpuExec
  5. val aggregateAttributes: Seq[Attribute]
  6. val aggregateExpressions: Seq[GpuAggregateExpression]
  7. lazy val allAttributes: AttributeSeq

    All the attributes that are used for this plan.

    All the attributes that are used for this plan. NOT used for aggregation

    Definition Classes
    GpuHashAggregateExec → QueryPlan
  8. lazy val allMetrics: Map[String, GpuMetric]
    Definition Classes
    GpuExec
  9. def apply(number: Int): TreeNode[_]
    Definition Classes
    TreeNode
  10. def argString(maxFields: Int): String
    Definition Classes
    TreeNode
  11. def asCode: String
    Definition Classes
    TreeNode
  12. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  13. final lazy val canonicalized: SparkPlan
    Definition Classes
    QueryPlan
    Annotations
    @transient()
  14. val child: SparkPlan
    Definition Classes
    GpuHashAggregateExec → UnaryExecNode
  15. final def children: Seq[SparkPlan]
    Definition Classes
    UnaryExecNode → TreeNode
  16. def childrenCoalesceGoal: Seq[CoalesceGoal]

    A goal to coalesce batches as the input to this operation.

    A goal to coalesce batches as the input to this operation. In some cases an operation will only work if all of the data is in a single batch. In other cases it may be much faster if it is in a single batch, but can tolerate multiple batches. This provides a way to express those desires.

    Definition Classes
    GpuExec
  17. def cleanupResources(): Unit
    Attributes
    protected[org.apache.spark.sql]
    Definition Classes
    SparkPlan
  18. def clone(): SparkPlan
    Definition Classes
    TreeNode → AnyRef
  19. def closeOnExcept[T <: AutoCloseable, V](r: ArrayBuffer[T])(block: (ArrayBuffer[T]) ⇒ V): V

    Executes the provided code block, closing the resources only if an exception occurs

    Executes the provided code block, closing the resources only if an exception occurs

    Definition Classes
    Arm
  20. def closeOnExcept[T <: AutoCloseable, V](r: Array[T])(block: (Array[T]) ⇒ V): V

    Executes the provided code block, closing the resources only if an exception occurs

    Executes the provided code block, closing the resources only if an exception occurs

    Definition Classes
    Arm
  21. def closeOnExcept[T <: AutoCloseable, V](r: Seq[T])(block: (Seq[T]) ⇒ V): V

    Executes the provided code block, closing the resources only if an exception occurs

    Executes the provided code block, closing the resources only if an exception occurs

    Definition Classes
    Arm
  22. def closeOnExcept[T <: AutoCloseable, V](r: T)(block: (T) ⇒ V): V

    Executes the provided code block, closing the resource only if an exception occurs

    Executes the provided code block, closing the resource only if an exception occurs

    Definition Classes
    Arm
  23. def coalesceAfter: Boolean

    If true is returned batches after this will be coalesced.

    If true is returned batches after this will be coalesced. This should really be used in cases where it is known that the size of a batch may shrink a lot.

    Definition Classes
    GpuExec
  24. def collect[B](pf: PartialFunction[SparkPlan, B]): Seq[B]
    Definition Classes
    TreeNode
  25. def collectFirst[B](pf: PartialFunction[SparkPlan, B]): Option[B]
    Definition Classes
    TreeNode
  26. def collectLeaves(): Seq[SparkPlan]
    Definition Classes
    TreeNode
  27. def collectWithSubqueries[B](f: PartialFunction[SparkPlan, B]): Seq[B]
    Definition Classes
    QueryPlan
  28. def conf: SQLConf
    Definition Classes
    QueryPlan
  29. val configuredTargetBatchSize: Long
  30. lazy val containsChild: Set[TreeNode[_]]
    Definition Classes
    TreeNode
  31. def copyTagsFrom(other: SparkPlan): Unit
    Attributes
    protected
    Definition Classes
    TreeNode
  32. def createAverageMetric(level: MetricsLevel, name: String): GpuMetric
    Attributes
    protected
    Definition Classes
    GpuExec
  33. def createMetric(level: MetricsLevel, name: String): GpuMetric
    Attributes
    protected
    Definition Classes
    GpuExec
  34. def createNanoTimingMetric(level: MetricsLevel, name: String): GpuMetric
    Attributes
    protected
    Definition Classes
    GpuExec
  35. def createSizeMetric(level: MetricsLevel, name: String): GpuMetric
    Attributes
    protected
    Definition Classes
    GpuExec
  36. def createTimingMetric(level: MetricsLevel, name: String): GpuMetric
    Attributes
    protected
    Definition Classes
    GpuExec
  37. def disableCoalesceUntilInput(): Boolean

    Returns true if there is something in the exec that cannot work when batches between multiple file partitions are combined into a single batch (coalesce).

    Returns true if there is something in the exec that cannot work when batches between multiple file partitions are combined into a single batch (coalesce).

    Definition Classes
    GpuExec
  38. def doCanonicalize(): SparkPlan

    Defines how the canonicalization should work for the current plan.

    Defines how the canonicalization should work for the current plan.

    Attributes
    protected
    Definition Classes
    GpuExec → QueryPlan
  39. def doExecute(): RDD[InternalRow]
    Definition Classes
    GpuHashAggregateExec → SparkPlan
  40. def doExecuteBroadcast[T](): Broadcast[T]
    Attributes
    protected[org.apache.spark.sql]
    Definition Classes
    SparkPlan
  41. def doExecuteColumnar(): RDD[ColumnarBatch]
    Definition Classes
    GpuHashAggregateExec → SparkPlan
  42. def doPrepare(): Unit
    Attributes
    protected
    Definition Classes
    SparkPlan
  43. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  44. final def execute(): RDD[InternalRow]
    Definition Classes
    SparkPlan
  45. final def executeBroadcast[T](): Broadcast[T]
    Definition Classes
    SparkPlan
  46. def executeCollect(): Array[InternalRow]
    Definition Classes
    SparkPlan
  47. def executeCollectPublic(): Array[Row]
    Definition Classes
    SparkPlan
  48. final def executeColumnar(): RDD[ColumnarBatch]
    Definition Classes
    SparkPlan
  49. final def executeQuery[T](query: ⇒ T): T
    Attributes
    protected
    Definition Classes
    SparkPlan
  50. def executeTail(n: Int): Array[InternalRow]
    Definition Classes
    SparkPlan
  51. def executeTake(n: Int): Array[InternalRow]
    Definition Classes
    SparkPlan
  52. def executeToIterator(): Iterator[InternalRow]
    Definition Classes
    SparkPlan
  53. final def expressions: Seq[Expression]
    Definition Classes
    QueryPlan
  54. def fastEquals(other: TreeNode[_]): Boolean
    Definition Classes
    TreeNode
  55. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  56. def find(f: (SparkPlan) ⇒ Boolean): Option[SparkPlan]
    Definition Classes
    TreeNode
  57. def flatMap[A](f: (SparkPlan) ⇒ TraversableOnce[A]): Seq[A]
    Definition Classes
    TreeNode
  58. def foreach(f: (SparkPlan) ⇒ Unit): Unit
    Definition Classes
    TreeNode
  59. def foreachUp(f: (SparkPlan) ⇒ Unit): Unit
    Definition Classes
    TreeNode
  60. def formattedNodeName: String
    Attributes
    protected
    Definition Classes
    QueryPlan
  61. def freeOnExcept[T <: RapidsBuffer, V](r: T)(block: (T) ⇒ V): V

    Executes the provided code block, freeing the RapidsBuffer only if an exception occurs

    Executes the provided code block, freeing the RapidsBuffer only if an exception occurs

    Definition Classes
    Arm
  62. def generateTreeString(depth: Int, lastChildren: Seq[Boolean], append: (String) ⇒ Unit, verbose: Boolean, prefix: String, addSuffix: Boolean, maxFields: Int, printNodeId: Boolean): Unit
    Definition Classes
    TreeNode
  63. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  64. def getTagValue[T](tag: TreeNodeTag[T]): Option[T]
    Definition Classes
    TreeNode
  65. def gpuLongMetric(name: String): GpuMetric
    Definition Classes
    GpuExec
  66. val groupingExpressions: Seq[Expression]
  67. def hasAlias: Boolean
    Attributes
    protected
  68. def hashCode(): Int
    Definition Classes
    TreeNode → AnyRef → Any
  69. val id: Int
    Definition Classes
    SparkPlan
  70. def initializeLogIfNecessary(isInterpreter: Boolean, silent: Boolean): Boolean
    Attributes
    protected
    Definition Classes
    Logging
  71. def initializeLogIfNecessary(isInterpreter: Boolean): Unit
    Attributes
    protected
    Definition Classes
    Logging
  72. def innerChildren: Seq[QueryPlan[_]]
    Definition Classes
    QueryPlan → TreeNode
  73. def inputSet: AttributeSet
    Definition Classes
    QueryPlan
  74. def isCanonicalizedPlan: Boolean
    Attributes
    protected
    Definition Classes
    QueryPlan
  75. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  76. def isTraceEnabled(): Boolean
    Attributes
    protected
    Definition Classes
    Logging
  77. def jsonFields: List[JField]
    Attributes
    protected
    Definition Classes
    TreeNode
  78. def log: Logger
    Attributes
    protected
    Definition Classes
    Logging
  79. def logDebug(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  80. def logDebug(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  81. def logError(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  82. def logError(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  83. def logInfo(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  84. def logInfo(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  85. def logName: String
    Attributes
    protected
    Definition Classes
    Logging
  86. def logTrace(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  87. def logTrace(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  88. def logWarning(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  89. def logWarning(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  90. def logicalLink: Option[LogicalPlan]
    Definition Classes
    SparkPlan
  91. def longMetric(name: String): SQLMetric
    Definition Classes
    SparkPlan
  92. def makeCopy(newArgs: Array[AnyRef]): SparkPlan
    Definition Classes
    SparkPlan → TreeNode
  93. def map[A](f: (SparkPlan) ⇒ A): Seq[A]
    Definition Classes
    TreeNode
  94. def mapChildren(f: (SparkPlan) ⇒ SparkPlan): SparkPlan
    Definition Classes
    TreeNode
  95. def mapExpressions(f: (Expression) ⇒ Expression): GpuHashAggregateExec.this.type
    Definition Classes
    QueryPlan
  96. def mapProductIterator[B](f: (Any) ⇒ B)(implicit arg0: ClassTag[B]): Array[B]
    Attributes
    protected
    Definition Classes
    TreeNode
  97. final lazy val metrics: Map[String, SQLMetric]
    Definition Classes
    GpuExec → SparkPlan
  98. final def missingInput: AttributeSet
    Definition Classes
    QueryPlan
  99. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  100. def nodeName: String
    Definition Classes
    TreeNode
  101. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  102. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  103. def numberedTreeString: String
    Definition Classes
    TreeNode
  104. val origin: Origin
    Definition Classes
    TreeNode
  105. def otherCopyArgs: Seq[AnyRef]
    Attributes
    protected
    Definition Classes
    TreeNode
  106. def output: Seq[Attribute]
    Definition Classes
    GpuHashAggregateExec → QueryPlan
  107. val outputBatchesLevel: MetricsLevel
    Attributes
    protected
    Definition Classes
    GpuHashAggregateExecGpuExec
  108. def outputBatching: CoalesceGoal

    Lets a SparkPlan indicate what guarantees, if any, its output batch has.

    Lets a SparkPlan indicate what guarantees, if any, its output batch has. This lets us bypass GpuCoalesceBatch calls where ever possible. Returning a null indicates no guarantee at all, which is the default.

    Definition Classes
    GpuExec
  109. def outputExpressions: Seq[NamedExpression]
    Attributes
    protected
  110. def outputOrdering: Seq[SortOrder]
    Definition Classes
    SparkPlan
  111. final def outputPartitioning: Partitioning
    Definition Classes
    GpuHashAggregateExec → SparkPlan
  112. val outputRowsLevel: MetricsLevel
    Attributes
    protected
    Definition Classes
    GpuHashAggregateExecGpuExec
  113. lazy val outputSet: AttributeSet
    Definition Classes
    QueryPlan
    Annotations
    @transient()
  114. def p(number: Int): SparkPlan
    Definition Classes
    TreeNode
  115. final def prepare(): Unit
    Definition Classes
    SparkPlan
  116. def prepareSubqueries(): Unit
    Attributes
    protected
    Definition Classes
    SparkPlan
  117. def prettyJson: String
    Definition Classes
    TreeNode
  118. def printSchema(): Unit
    Definition Classes
    QueryPlan
  119. def producedAttributes: AttributeSet
    Definition Classes
    GpuHashAggregateExec → QueryPlan
  120. lazy val references: AttributeSet
    Definition Classes
    QueryPlan
    Annotations
    @transient()
  121. def replaceAlias(attr: AttributeReference): Option[Attribute]
    Attributes
    protected
  122. def replaceAliases(exprs: Seq[Expression]): Seq[Expression]
    Attributes
    protected
  123. def requiredChildDistribution: List[Distribution]
    Definition Classes
    GpuHashAggregateExec → SparkPlan
  124. val requiredChildDistributionExpressions: Option[Seq[Expression]]
  125. def requiredChildOrdering: Seq[Seq[SortOrder]]
    Definition Classes
    SparkPlan
  126. def resetMetrics(): Unit
    Definition Classes
    SparkPlan
  127. val resultExpressions: Seq[NamedExpression]
  128. final def sameResult(other: SparkPlan): Boolean
    Definition Classes
    QueryPlan
  129. lazy val schema: StructType
    Definition Classes
    QueryPlan
  130. def schemaString: String
    Definition Classes
    QueryPlan
  131. final def semanticHash(): Int
    Definition Classes
    QueryPlan
  132. def setLogicalLink(logicalPlan: LogicalPlan): Unit
    Definition Classes
    SparkPlan
  133. def setTagValue[T](tag: TreeNodeTag[T], value: T): Unit
    Definition Classes
    TreeNode
  134. def simpleString(maxFields: Int): String
    Definition Classes
    GpuHashAggregateExec → QueryPlan → TreeNode
  135. def simpleStringWithNodeId(): String
    Definition Classes
    QueryPlan → TreeNode
  136. def sparkContext: SparkContext
    Attributes
    protected
    Definition Classes
    SparkPlan
  137. def spillMetrics: Map[String, GpuMetric]
    Attributes
    protected
    Definition Classes
    GpuExec
  138. final val sqlContext: SQLContext
    Definition Classes
    SparkPlan
  139. def statePrefix: String
    Attributes
    protected
    Definition Classes
    QueryPlan
  140. def stringArgs: Iterator[Any]
    Attributes
    protected
    Definition Classes
    TreeNode
  141. def subqueries: Seq[SparkPlan]
    Definition Classes
    QueryPlan
  142. def subqueriesAll: Seq[SparkPlan]
    Definition Classes
    QueryPlan
  143. def supportsColumnar: Boolean
    Definition Classes
    GpuExec → SparkPlan
  144. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  145. def toJSON: String
    Definition Classes
    TreeNode
  146. def toString(): String
    Definition Classes
    TreeNode → AnyRef → Any
  147. def transform(rule: PartialFunction[SparkPlan, SparkPlan]): SparkPlan
    Definition Classes
    TreeNode
  148. def transformAllExpressions(rule: PartialFunction[Expression, Expression]): GpuHashAggregateExec.this.type
    Definition Classes
    QueryPlan
  149. def transformDown(rule: PartialFunction[SparkPlan, SparkPlan]): SparkPlan
    Definition Classes
    TreeNode
  150. def transformExpressions(rule: PartialFunction[Expression, Expression]): GpuHashAggregateExec.this.type
    Definition Classes
    QueryPlan
  151. def transformExpressionsDown(rule: PartialFunction[Expression, Expression]): GpuHashAggregateExec.this.type
    Definition Classes
    QueryPlan
  152. def transformExpressionsUp(rule: PartialFunction[Expression, Expression]): GpuHashAggregateExec.this.type
    Definition Classes
    QueryPlan
  153. def transformUp(rule: PartialFunction[SparkPlan, SparkPlan]): SparkPlan
    Definition Classes
    TreeNode
  154. def treeString(append: (String) ⇒ Unit, verbose: Boolean, addSuffix: Boolean, maxFields: Int, printOperatorId: Boolean): Unit
    Definition Classes
    TreeNode
  155. final def treeString(verbose: Boolean, addSuffix: Boolean, maxFields: Int, printOperatorId: Boolean): String
    Definition Classes
    TreeNode
  156. final def treeString: String
    Definition Classes
    TreeNode
  157. def unsetTagValue[T](tag: TreeNodeTag[T]): Unit
    Definition Classes
    TreeNode
  158. def vectorTypes: Option[Seq[String]]
    Definition Classes
    SparkPlan
  159. def verboseString(maxFields: Int): String
    Definition Classes
    GpuHashAggregateExec → QueryPlan → TreeNode
  160. def verboseStringWithOperatorId(): String
    Definition Classes
    GpuHashAggregateExec → UnaryExecNode → QueryPlan
  161. def verboseStringWithSuffix(maxFields: Int): String
    Definition Classes
    TreeNode
  162. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  163. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  164. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  165. def waitForSubqueries(): Unit
    Attributes
    protected
    Definition Classes
    SparkPlan
  166. def withNewChildren(newChildren: Seq[SparkPlan]): SparkPlan
    Definition Classes
    TreeNode
  167. def withResource[T <: AutoCloseable, V](r: ArrayBuffer[T])(block: (ArrayBuffer[T]) ⇒ V): V

    Executes the provided code block and then closes the array buffer of resources

    Executes the provided code block and then closes the array buffer of resources

    Definition Classes
    Arm
  168. def withResource[T <: AutoCloseable, V](r: Array[T])(block: (Array[T]) ⇒ V): V

    Executes the provided code block and then closes the array of resources

    Executes the provided code block and then closes the array of resources

    Definition Classes
    Arm
  169. def withResource[T <: AutoCloseable, V](r: Seq[T])(block: (Seq[T]) ⇒ V): V

    Executes the provided code block and then closes the sequence of resources

    Executes the provided code block and then closes the sequence of resources

    Definition Classes
    Arm
  170. def withResource[T <: AutoCloseable, V](r: Option[T])(block: (Option[T]) ⇒ V): V

    Executes the provided code block and then closes the Option[resource]

    Executes the provided code block and then closes the Option[resource]

    Definition Classes
    Arm
  171. def withResource[T <: AutoCloseable, V](r: T)(block: (T) ⇒ V): V

    Executes the provided code block and then closes the resource

    Executes the provided code block and then closes the resource

    Definition Classes
    Arm
  172. def withResourceIfAllowed[T, V](r: T)(block: (T) ⇒ V): V

    Executes the provided code block and then closes the value if it is AutoCloseable

    Executes the provided code block and then closes the value if it is AutoCloseable

    Definition Classes
    Arm

Inherited from GpuExec

Inherited from Arm

Inherited from UnaryExecNode

Inherited from SparkPlan

Inherited from Serializable

Inherited from Serializable

Inherited from Logging

Inherited from QueryPlan[SparkPlan]

Inherited from TreeNode[SparkPlan]

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped