sunchao commented on code in PR #5688:
URL: https://github.com/apache/datafusion-comet/pull/5688#discussion_r3937467919


##########
spark/src/main/scala/org/apache/comet/serde/arrays.scala:
##########
@@ -814,10 +814,14 @@ object CometArrayPosition extends 
CometExpressionSerde[ArrayPosition] with Array
   }
 }
 
-object CometArraysZip extends CometExpressionSerde[ArraysZip] {
+object CometArraysZip extends CometExpressionSerde[ArraysZip] with 
CodegenDispatchFallback {

Review Comment:
   ### Performance
   
   [P2] Could you add a matched microbenchmark for the newly dispatched 
arrays-of-maps path before enabling it by default? This marker changes existing 
queries from Spark projection fallback to Spark-generated evaluation inside the 
JVM bridge. That path still evaluates `ArraysZip` row by row and additionally 
imports the input and materializes the nested Arrow output. Avoiding the 
surrounding projection fallback can pay for those costs, but the two 
correctness queries do not establish when it does.
   
   Please compare dispatch enabled with the existing dispatcher-disabled 
fallback on identical nonconstant column inputs, including a map-only 
projection and the mixed native projection, small and multi-batch inputs, and 
small versus larger maps/arrays. Verify the same results and include warm 
steady-state timings with the batch size and data shape. I am not asserting a 
measured slowdown. The missing comparison is the evidence needed to assess the 
default-path performance tradeoff.



-- 
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]

Reply via email to