This is an automated email from the ASF dual-hosted git repository. mboehm7 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 4d6c6b4cb7 [SYSTEMDS-3846] Perftest: Fix parfor forced CP compilation 4d6c6b4cb7 is described below commit 4d6c6b4cb71c4ea1dc818739e601ab6a735c55ac Author: Matthias Boehm <mboe...@gmail.com> AuthorDate: Sun Apr 6 10:20:24 2025 +0200 [SYSTEMDS-3846] Perftest: Fix parfor forced CP compilation The perftest runMSVM_10k_1k_dense_k5 reproducible failed on serializing the parfor body program for a remote spark parfor job, because there were remaining spark instructions (checkpoints). The reason was because the forced CP compilation before such remote jobs was only applied in a subset of cases and special hop properties were not correctly cleaned up. This patch fixes the general issue. --- src/main/java/org/apache/sysds/hops/recompile/Recompiler.java | 6 +++++- .../org/apache/sysds/runtime/controlprogram/ParForProgramBlock.java | 3 +-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/apache/sysds/hops/recompile/Recompiler.java b/src/main/java/org/apache/sysds/hops/recompile/Recompiler.java index 63d0f1eab6..0aef8a1583 100644 --- a/src/main/java/org/apache/sysds/hops/recompile/Recompiler.java +++ b/src/main/java/org/apache/sysds/hops/recompile/Recompiler.java @@ -1509,8 +1509,12 @@ public class Recompiler { public static void rSetExecType( Hop hop, ExecType etype ) { if( hop.isVisited() ) return; - //update function names + //update hop properties (exec type, spark lops) hop.setForcedExecType(etype); + if(etype == ExecType.CP) { + hop.setRequiresCheckpoint(false); + hop.setRequiresReblock(false); + } if( hop.getInput() != null ) for( Hop c : hop.getInput() ) rSetExecType(c, etype); diff --git a/src/main/java/org/apache/sysds/runtime/controlprogram/ParForProgramBlock.java b/src/main/java/org/apache/sysds/runtime/controlprogram/ParForProgramBlock.java index 4c492131d9..85f41ad7fe 100644 --- a/src/main/java/org/apache/sysds/runtime/controlprogram/ParForProgramBlock.java +++ b/src/main/java/org/apache/sysds/runtime/controlprogram/ParForProgramBlock.java @@ -834,8 +834,7 @@ public class ParForProgramBlock extends ForProgramBlock { { // Step 0) check and compile to CP (if forced remote parfor) boolean flagForced = false; - if( FORCE_CP_ON_REMOTE_SPARK && (_optMode == POptMode.NONE - || (_optMode == POptMode.CONSTRAINED && _execMode==PExecMode.REMOTE_SPARK)) ) { + if( FORCE_CP_ON_REMOTE_SPARK && _execMode==PExecMode.REMOTE_SPARK ) { //tid = 0 because replaced in remote parworker flagForced = checkSparkAndRecompileToCP(0); }