This is an automated email from the ASF dual-hosted git repository. sebwrede 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 17b7a368ef [MINOR] Add Forced ExecType for FED DataOp And Add FedOut to Explain 17b7a368ef is described below commit 17b7a368ef25c93e2b1ac69c57b4389997a78dd1 Author: sebwrede <swr...@know-center.at> AuthorDate: Mon May 16 11:01:46 2022 +0200 [MINOR] Add Forced ExecType for FED DataOp And Add FedOut to Explain Closes #1614. --- src/main/java/org/apache/sysds/hops/DataOp.java | 2 ++ src/main/java/org/apache/sysds/hops/Hop.java | 4 ++++ src/main/java/org/apache/sysds/hops/cost/HopRel.java | 5 ++++- src/main/java/org/apache/sysds/utils/Explain.java | 4 ++++ 4 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/apache/sysds/hops/DataOp.java b/src/main/java/org/apache/sysds/hops/DataOp.java index 6035d59f87..42c51e452b 100644 --- a/src/main/java/org/apache/sysds/hops/DataOp.java +++ b/src/main/java/org/apache/sysds/hops/DataOp.java @@ -496,6 +496,8 @@ public class DataOp extends Hop { } _etype = letype; + if ( _etypeForced == ExecType.FED ) + _etype = _etypeForced; } return _etype; diff --git a/src/main/java/org/apache/sysds/hops/Hop.java b/src/main/java/org/apache/sysds/hops/Hop.java index e1e4fcc8d4..7bdb5a424e 100644 --- a/src/main/java/org/apache/sysds/hops/Hop.java +++ b/src/main/java/org/apache/sysds/hops/Hop.java @@ -975,6 +975,10 @@ public abstract class Hop implements ParseInfo { return _privacyConstraint; } + public FederatedOutput getFederatedOutput(){ + return _federatedOutput; + } + public boolean hasFederatedOutput(){ return _federatedOutput == FederatedOutput.FOUT; } diff --git a/src/main/java/org/apache/sysds/hops/cost/HopRel.java b/src/main/java/org/apache/sysds/hops/cost/HopRel.java index 70785950ca..427fe1f209 100644 --- a/src/main/java/org/apache/sysds/hops/cost/HopRel.java +++ b/src/main/java/org/apache/sysds/hops/cost/HopRel.java @@ -20,11 +20,13 @@ package org.apache.sysds.hops.cost; import org.apache.sysds.api.DMLException; +import org.apache.sysds.common.Types; import org.apache.sysds.common.Types.ExecType; import org.apache.sysds.hops.Hop; import org.apache.sysds.hops.fedplanner.FTypes; import org.apache.sysds.hops.fedplanner.FTypes.FType; import org.apache.sysds.hops.fedplanner.MemoTable; +import org.apache.sysds.hops.rewrite.HopRewriteUtils; import org.apache.sysds.runtime.instructions.fed.FEDInstruction; import org.apache.sysds.runtime.instructions.fed.FEDInstruction.FederatedOutput; @@ -109,7 +111,8 @@ public class HopRel { } private void setExecType(){ - if ( inputDependency.stream().anyMatch(HopRel::hasFederatedOutput) ) + if ( inputDependency.stream().anyMatch(HopRel::hasFederatedOutput) + || HopRewriteUtils.isData(hopRef, Types.OpOpData.FEDERATED)) execType = ExecType.FED; } diff --git a/src/main/java/org/apache/sysds/utils/Explain.java b/src/main/java/org/apache/sysds/utils/Explain.java index c8e5902511..589f23a845 100644 --- a/src/main/java/org/apache/sysds/utils/Explain.java +++ b/src/main/java/org/apache/sysds/utils/Explain.java @@ -69,6 +69,7 @@ import org.apache.sysds.runtime.instructions.spark.ReblockSPInstruction; import org.apache.sysds.runtime.instructions.spark.SPInstruction; import org.apache.sysds.runtime.lineage.LineageItem; import org.apache.sysds.runtime.lineage.LineageItemUtils; +import org.apache.sysds.runtime.instructions.fed.FEDInstruction.FederatedOutput; public class Explain { @@ -612,6 +613,9 @@ public class Explain if (hop.getExecType() != null) sb.append(", " + hop.getExecType()); + if ( hop.getFederatedOutput() != FederatedOutput.NONE ) + sb.append(" ").append(hop.getFederatedOutput()).append(" "); + if ( MEMO_TABLE != null && MEMO_TABLE.containsHop(hop) ){ List<String> fedAlts = MEMO_TABLE.getFedOutAlternatives(hop); if ( fedAlts != null ){