Baunsgaard opened a new pull request, #2483:
URL: https://github.com/apache/systemds/pull/2483

   Mixes two related performance changes: refined compressed multiply 
heuristics, and a Spark-vs-CP decision refresh on the Hop layer.
   
   CLALib matmul changes:
   - CLALibMMChain: for XtXv with few col groups and a wide-enough matrix, 
compute X' * X via leftMultByTransposeSelf and finish with a regular matrix 
multiply against v. Cheaper than chaining when the X' * X path can stay 
compressed
   - CLALibTSMM: refactor leftMultByTransposeSelf into a package-private helper 
so MMChain can call it; widen the ColGroupUncompressed handling
   - CLALibRightMultBy: stop forcing decompression for ASDC / ASDCZero inputs; 
they have working preAggregate paths that beat the dense fallback
   - CLALibCompAgg: fix blklen rounding so the last partition is not short by k 
rows on parallel aggregates
   
   Spark/CP exec-decision refresh (Hop, UnaryOp, BinaryOp):
   - Hop: new helpers hasSparkOutput() and isScalarOrVectorBellowBlockSize() 
shared between unary and binary decision points
   - UnaryOp.optFindExecType: replace the inline chain of negations with 
isDisallowedSparkOps(), allow Frame outputs, and pull unary ops into Spark 
whenever the input already has a Spark output
   - BinaryOp.optFindExecType: same kind of restructuring; allow 
matrix-or-frame outputs to be pulled into Spark when exactly one operand is a 
scalar or small vector
   
   Instruction-side adjustments:
   - VariableCPInstruction (CAST_AS_MATRIX from frame): use the parallel 
MatrixBlockFromFrame.convertToMatrixBlock(fin, k) path instead of the 
single-threaded DataConverter helper
   - ParameterizedBuiltinCPInstruction (transformdecode): call the parallel 
decoder.decode(data, out, k) overload using 
InfrastructureAnalyzer.getLocalParallelism()


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

Reply via email to