marin-ma commented on code in PR #12838:
URL: https://github.com/apache/gluten/pull/12838#discussion_r3870958491
##########
backends-velox/src/test/scala/org/apache/gluten/execution/CudfBroadcastJoinSuite.scala:
##########
@@ -72,7 +72,28 @@ class CudfBroadcastJoinSuite extends
VeloxWholeStageTransformerSuite {
// demoted or fallen back.
val bhj = collect(plan) { case j: BroadcastHashJoinExecTransformer =>
j }
assert(bhj.nonEmpty, s"expected an offloaded broadcast hash join,
got:\n$plan")
- assert(df.count() > 0, "broadcast join must not return empty results
(GLUTEN-12471)")
+ assert(df.count() > 0, "broadcast join must not return empty results
(GLUTEN-12812)")
+ }
+ }
+
+ test("GLUTEN-12838: broadcast build side follows the consuming stage's cuDF
tag") {
+ // We need a broadcast that lands in a CPU stage. NOT IN gives us one for
free: it
Review Comment:
@ReemaAlzaid Thanks for adding the test. My understanding is that we need to
test broadcast in a CPU stage + hash join in a CPU stage when cudf is enabled
based on your issue description:
> VeloxRuntime::createColumnarBatchSerializer returns
VeloxGpuColumnarBatchSerializer and every broadcast batch is uploaded to the
device even when the consuming stage was not offloaded to cuDF and planned a
host-contract value stream.
Does this test cover this case?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]