Skip to content

[SYSTEMDS-3958] Add XML options for sparse rewrites - #2579

Closed
ywcb00 wants to merge 5 commits into
apache:mainfrom
ywcb00:feat/sparsity/rewrites/integrate
Closed

[SYSTEMDS-3958] Add XML options for sparse rewrites#2579
ywcb00 wants to merge 5 commits into
apache:mainfrom
ywcb00:feat/sparsity/rewrites/integrate

Conversation

@ywcb00

@ywcb00 ywcb00 commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

This PR adds the XML options for enabling rewrites based on sparsity estimates and for specifying the respective sparsity estimator. Additionally, this PR introduces the enumeration for the estimator type and renames the previous activation flag, which now only applies to transposition rewrites.

@codecov

codecov Bot commented Aug 5, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 65.71429% with 12 lines in your changes missing coverage. Please review.
✅ Project coverage is 71.44%. Comparing base (06993dc) to head (6ebaec3).
⚠️ Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
...a/org/apache/sysds/hops/estim/EstimationUtils.java 52.00% 11 Missing and 1 partial ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##               main    #2579      +/-   ##
============================================
- Coverage     71.46%   71.44%   -0.03%     
+ Complexity    50438    50422      -16     
============================================
  Files          1629     1629              
  Lines        195462   195491      +29     
  Branches      38112    38114       +2     
============================================
- Hits         139692   139665      -27     
- Misses        44828    44877      +49     
- Partials      10942    10949       +7     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@ywcb00 ywcb00 changed the title [SYSTEMDS-3958] Add CLI options for sparse rewrites [SYSTEMDS-3958] Add XML options for sparse rewrites Aug 6, 2026
ywcb00 added 4 commits August 7, 2026 10:15
…rsity estimator

	NOTE: This option also enables the sparsity rewrites. This will be separated into an individual option soon.

feat(main/hops/EstimationUtils.java): create static method to get the sparsity estimator by a given string identifier

refactor(main/hops/rewrite/ProgramRewriter.java): separate the conditioned cases for enabling sparsity mm chain rewrites and transpose mm chain rewrites

refactor(main/hops/OptimizerUtils.java): rename flag for enabling transpose mm chain rewrites

chore(test/**): adapt to the changes above
…ng sparsity rewrites

	change sparsity estimator option from being the string identifier to the actual enumeration item

refactor(main/hops/estim/EstimationUtils.java): add method to get estimator type from identifier string
	add method to obtain an estimator object directly

chore(**): adapt to the above changes

chore(test/functions/rewrite/RewriteMatrixMultChainOptSparseTest.java): adapt to separate CLI option for enabling sparsity rewrites
…sity rewrites and for selecting the respective sparsity estimator

fix(main/api/DMLOptions.java): revert adding the cli options for enabling sparsity rewrites and selecting the sparsity estimator

fix(main/api/DMLScript.java): revert adding the cli options for enabling sparsity rewrites and selecting the sparsity estimator

chore(main/hops/rewrite/ProgramRewriter.java): adapt to the changes above

chore(test/RewriteMatrixMultChainOptSparseTest.java): rewrite the XML config file to enable the sparsity rewrites instead of setting the CLI option
@ywcb00
ywcb00 force-pushed the feat/sparsity/rewrites/integrate branch from f593899 to 5aa7f0e Compare August 7, 2026 08:15
…ate rewrites based on sparsity estimates for the rewrite matrix chain dynamic programming test
@ywcb00 ywcb00 closed this in 2ab704f Aug 7, 2026
@github-project-automation github-project-automation Bot moved this from In Progress to Done in SystemDS PR Queue Aug 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant