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

prevent canonicalization where arguments have metadata #547

Merged
merged 5 commits into from
Sep 16, 2023

Conversation

shashi
Copy link
Member

@shashi shashi commented Aug 31, 2023

@shashi shashi changed the title prevent canonicalization and hence destruction of terms with metadata prevent canonicalization where arguments have metadata Sep 2, 2023
@github-actions
Copy link
Contributor

github-actions bot commented Sep 2, 2023

Benchmark Results

master ba61640... t[master]/t[ba61640...]
overhead/acrule/a+2 1.12 ± 0.23 μs 1.1 ± 0.2 μs 1.02
overhead/acrule/a+2+b 1.1 ± 0.2 μs 1.1 ± 0.22 μs 1
overhead/acrule/a+b 0.334 ± 0.0064 μs 0.337 ± 0.0072 μs 0.992
overhead/acrule/noop:Int 25.1 ± 0.1 ns 26 ± 0.2 ns 0.965
overhead/acrule/noop:Sym 0.0441 ± 0.0073 μs 0.0396 ± 0.0066 μs 1.11
overhead/rule/noop:Int 0.0424 ± 0.0032 μs 0.0408 ± 0.0027 μs 1.04
overhead/rule/noop:Sym 0.0554 ± 0.0019 μs 0.0536 ± 0.0019 μs 1.03
overhead/rule/noop:Term 0.0557 ± 0.0017 μs 0.0536 ± 0.002 μs 1.04
overhead/ruleset/noop:Int 0.154 ± 0.0023 μs 0.156 ± 0.0022 μs 0.984
overhead/ruleset/noop:Sym 0.188 ± 0.0047 μs 0.183 ± 0.0057 μs 1.02
overhead/ruleset/noop:Term 4.56 ± 0.29 μs 4.31 ± 0.29 μs 1.06
overhead/simplify/noop:Int 0.233 ± 0.01 μs 0.209 ± 0.0097 μs 1.11
overhead/simplify/noop:Sym 0.244 ± 0.0046 μs 0.222 ± 0.0042 μs 1.1
overhead/simplify/noop:Term 0.0414 ± 0.0021 ms 0.0413 ± 0.0022 ms 1
overhead/simplify/randterm (+, *):serial 0.149 ± 0.0027 s 0.144 ± 0.0012 s 1.03
overhead/simplify/randterm (+, *):thread 0.102 ± 0.013 s 0.1 ± 0.013 s 1.02
overhead/simplify/randterm (/, *):serial 0.242 ± 0.0065 ms 0.245 ± 0.0061 ms 0.99
overhead/simplify/randterm (/, *):thread 0.27 ± 0.0083 ms 0.272 ± 0.0075 ms 0.993
overhead/substitute/a 0.0752 ± 0.0014 ms 0.072 ± 0.0014 ms 1.04
overhead/substitute/a,b 0.0641 ± 0.0012 ms 0.063 ± 0.0012 ms 1.02
overhead/substitute/a,b,c 21.3 ± 0.7 μs 23.9 ± 0.8 μs 0.891
polyform/easy_iszero 0.0391 ± 0.0029 ms 0.0373 ± 0.0022 ms 1.05
polyform/isone 2.8 ± 0.1 ns 2.8 ± 0.1 ns 1
polyform/iszero 2.36 ± 0.075 ms 2.2 ± 0.035 ms 1.07
polyform/simplify_fractions 3.2 ± 0.16 ms 3.01 ± 0.051 ms 1.06
time_to_load 5.34 ± 0.016 s 5.31 ± 0.02 s 1.01

Benchmark Plots

A plot of the benchmark results have been uploaded as an artifact to the workflow run for this PR.
Go to "Actions"->"Benchmark a pull request"->[the most recent run]->"Artifacts" (at the bottom).

@shashi
Copy link
Member Author

shashi commented Sep 3, 2023

Oh wow this means that nothing in Symbolics will be canonicalized because of the VariableName metadata we attach in @variables -- @YingboMa are we able to get rid of that yet?

@shashi
Copy link
Member Author

shashi commented Sep 3, 2023

Made it less conservative, it should continue to work 👍

@YingboMa
Copy link
Member

YingboMa commented Sep 3, 2023

Unfortunately we still need the variable metadata.

@shashi shashi merged commit ee4183a into master Sep 16, 2023
6 of 9 checks passed
@shashi shashi deleted the s/fix-metadata-prop branch September 16, 2023 19:54
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.

2 participants