Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New rebuilding algorithm #61

Merged
merged 8 commits into from
Feb 23, 2021
Merged

New rebuilding algorithm #61

merged 8 commits into from
Feb 23, 2021

Conversation

mwillsey
Copy link
Member

Rebuilding is much improved! The new algorithm's congruence closure part is closer to Downey, Sethi, Tarjan, and the analysis data propagation is more precise with respect to merging.

Overall, the algorithm is simpler, easier to reason about, and more than twice as fast (in the rebuilding phase)!

Here are the overall speedups.

name                          cycles       diff
diff_power_harder           22340377 -15.87191%
diff_power_simple            5287483 -10.14223%
integ_one                    1349118 +0.342354%
integ_part1                  8656788 -18.89054%
integ_part2                 32280838 -30.36249%
integ_part3                  3872399 -11.21589%
integ_sin                    1359047 +0.373711%
integ_x                      1425227 -0.319277%
math_associate_adds         63486005 -5.794136%
math_diff_different          1356993 +0.546600%
math_diff_ln                 1370102 +0.353261%
math_diff_same               1339937 +0.613924%
math_diff_simple1            3474429 -7.198271%
math_diff_simple2            3125792 -7.421274%
math_powers                  1467267 -0.285497%
math_simplify_add            2739081 -5.855194%
math_simplify_const          1788490 -4.887436%
math_simplify_factor         8729945 -11.27119%
math_simplify_root          11946627 -11.72115%
lambda_compose               6339816 -8.211156%
lambda_compose_many         23454844 -20.45560%
lambda_fib                2313756186 -0.005102%
lambda_if                    2895215 -7.392474%
lambda_if_elim               1580892 -4.470494%
lambda_if_simple              857032 +0.483404%
lambda_let_simple            1287464 -5.678911%
lambda_under                  988528 +0.109981%
                                     -7.536934% mean

@mwillsey mwillsey merged commit 8151c09 into main Feb 23, 2021
@mwillsey mwillsey deleted the new-rebuild branch March 27, 2021 18:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant