This is an automated email from the ASF dual-hosted git repository.

baunsgaard pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/systemds.git


The following commit(s) were added to refs/heads/main by this push:
     new 652b4077be [SYSTEMDS-3429] Federated Multithreaded transformencode
652b4077be is described below

commit 652b4077be6d5dd8b453b775bfe230a805a3f390
Author: Andreas Botzner <[email protected]>
AuthorDate: Fri Aug 26 14:13:12 2022 +0200

    [SYSTEMDS-3429] Federated Multithreaded transformencode
    
    This commit adds a patch to transfer transform encode as multithreaded
    to the federated site.
    
    Closes #1689
---
 .../fed/MultiReturnParameterizedBuiltinFEDInstruction.java         | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git 
a/src/main/java/org/apache/sysds/runtime/instructions/fed/MultiReturnParameterizedBuiltinFEDInstruction.java
 
b/src/main/java/org/apache/sysds/runtime/instructions/fed/MultiReturnParameterizedBuiltinFEDInstruction.java
index c9135eb013..93a7e41291 100644
--- 
a/src/main/java/org/apache/sysds/runtime/instructions/fed/MultiReturnParameterizedBuiltinFEDInstruction.java
+++ 
b/src/main/java/org/apache/sysds/runtime/instructions/fed/MultiReturnParameterizedBuiltinFEDInstruction.java
@@ -36,6 +36,7 @@ import org.apache.sysds.common.Types.DataType;
 import org.apache.sysds.common.Types.ValueType;
 import org.apache.sysds.hops.fedplanner.FTypes;
 import org.apache.sysds.hops.fedplanner.FTypes.FType;
+import org.apache.sysds.hops.OptimizerUtils;
 import org.apache.sysds.lops.PickByCount;
 import org.apache.sysds.runtime.DMLRuntimeException;
 import org.apache.sysds.runtime.controlprogram.caching.CacheableData;
@@ -84,7 +85,7 @@ public class MultiReturnParameterizedBuiltinFEDInstruction 
extends ComputationFE
                MultiReturnParameterizedBuiltinCPInstruction inst, 
ExecutionContext ec) {
                if(inst.getOpcode().equals("transformencode") && 
inst.input1.isFrame()) {
                        CacheableData<?> fo = ec.getCacheableData(inst.input1);
-                       if(fo.isFederatedExcept(FType.BROADCAST)) 
+                       if(fo.isFederatedExcept(FType.BROADCAST))
                                return 
MultiReturnParameterizedBuiltinFEDInstruction.parseInstruction(inst);
                }
                return null;
@@ -339,7 +340,7 @@ public class MultiReturnParameterizedBuiltinFEDInstruction 
extends ComputationFE
                                .createEncoder(_spec, colNames, 
fb.getNumColumns(), null, _offset, _offset + fb.getNumColumns());
 
                        // build necessary structures for encoding
-                       encoder.build(fb); // FIXME skip equi-height sorting
+                       encoder.build(fb, 
OptimizerUtils.getTransformNumThreads()); // FIXME skip equi-height sorting
                        fo.release();
 
                        // create federated response
@@ -370,7 +371,7 @@ public class MultiReturnParameterizedBuiltinFEDInstruction 
extends ComputationFE
                        // offset is applied on the Worker to shift the local 
encoders to their respective column
                        _encoder.applyColumnOffset();
                        // apply transformation
-                       MatrixBlock mbout = _encoder.apply(fb);
+                       MatrixBlock mbout = _encoder.apply(fb, 
OptimizerUtils.getTransformNumThreads());
 
                        // create output matrix object
                        MatrixObject mo = 
ExecutionContext.createMatrixObject(mbout);

Reply via email to