min-guk commented on PR #2175: URL: https://github.com/apache/systemds/pull/2175#issuecomment-2585396191
I wanted to share some minor updates that I've been working on: 1. **Immediate Pruning**: Each `FederatedPlan` is pruned immediately after enumeration to reduce memory usage. 2. **Separation of MemoTablePrint Function**: The `MemoTablePrint` function has been separated from `MemoTable.java` and is now managed in `MemoTablePrinter.java`. 3. **Additional Cost Calculation**: The `enumerateFederatedPlanCost` function now calculates the `additionalTotalCost`, which is then printed by `MemoTablePrinter`. If there's a need to print each `additionalCost` individually, feel free to let me know. 4. **Conflict Detection and Resolution**: - Previously, the `detectAndResolveConflictFedPlan` function would enumerate a conflict `fedPlan` as both LOUT and FOUT, even after detecting a conflict. This could lead to incorrect, unnecessary, and duplicate detection and resolution of conflicts for the `fedPlan` and its child `fedPlans`. - For example, it might mistakenly identify a non-conflict `fedPlan` as having conflicts due to shared `HopID` among parent `FedPlans`, or it might incorrectly flag a `fedPlan` with a single parent as having a conflict. - To address this, we now store the `fedPlans` where conflicts occur and exclude these `fedPlans` and their child `fedPlans` from the BFS target. After BFS completes, we resolve the collected conflicts and then perform BFS again on the resolved `fedPlans` and their children. 5. **Bug Fixes in resolveConflictFedPlan**: Fixed bugs in the `resolveConflictFedPlan` implementation. 6. **Test Enhancements**: Added if-else DML test script for `FederatedPlanCostEnumeratorTest`. -- 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: dev-unsubscr...@systemds.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org