JuliaSymbolics / SymbolicUtils.jl

Symbolic expressions, rewriting and simplification
https://docs.sciml.ai/SymbolicUtils/stable/
Other
523 stars 99 forks source link

Fix head & arguments accessor functions #606

Closed shashi closed 1 month ago

shashi commented 1 month ago

This is a change intended in 2.0 but apparently never got tested.

github-actions[bot] commented 1 month ago

Benchmark Results

master b90aad0a5067ef... master/b90aad0a5067ef...
overhead/acrule/a+2 0.751 ± 0.02 μs 0.721 ± 0.017 μs 1.04
overhead/acrule/a+2+b 0.734 ± 0.02 μs 0.701 ± 0.018 μs 1.05
overhead/acrule/a+b 0.26 ± 0.0076 μs 0.257 ± 0.0062 μs 1.01
overhead/acrule/noop:Int 25.3 ± 0.05 ns 25 ± 0.05 ns 1.01
overhead/acrule/noop:Sym 0.0368 ± 0.0056 μs 0.0365 ± 0.0057 μs 1.01
overhead/rule/noop:Int 0.0447 ± 0.00045 μs 0.0444 ± 0.0005 μs 1.01
overhead/rule/noop:Sym 0.0558 ± 0.0028 μs 0.056 ± 0.0023 μs 0.997
overhead/rule/noop:Term 0.0566 ± 0.0027 μs 0.0554 ± 0.0023 μs 1.02
overhead/ruleset/noop:Int 0.131 ± 0.0036 μs 0.134 ± 0.0036 μs 0.979
overhead/ruleset/noop:Sym 0.148 ± 0.0057 μs 0.146 ± 0.0052 μs 1.01
overhead/ruleset/noop:Term 3.81 ± 0.2 μs 3.77 ± 0.16 μs 1.01
overhead/simplify/noop:Int 0.147 ± 0.0019 μs 0.14 ± 0.0015 μs 1.05
overhead/simplify/noop:Sym 0.159 ± 0.0029 μs 0.153 ± 0.004 μs 1.04
overhead/simplify/noop:Term 0.0398 ± 0.0022 ms 0.0378 ± 0.0025 ms 1.05
overhead/simplify/randterm (+, *):serial 0.122 ± 0.0039 s 0.123 ± 0.0056 s 0.996
overhead/simplify/randterm (+, *):thread 0.0731 ± 0.025 s 0.0766 ± 0.026 s 0.954
overhead/simplify/randterm (/, *):serial 0.237 ± 0.0076 ms 0.231 ± 0.008 ms 1.03
overhead/simplify/randterm (/, *):thread 0.273 ± 0.0087 ms 0.265 ± 0.0087 ms 1.03
overhead/substitute/a 0.0574 ± 0.0017 ms 0.0561 ± 0.0016 ms 1.02
overhead/substitute/a,b 0.0499 ± 0.0015 ms 0.0499 ± 0.0015 ms 1
overhead/substitute/a,b,c 16.9 ± 0.84 μs 17 ± 0.74 μs 0.995
polyform/easy_iszero 0.0343 ± 0.002 ms 0.0337 ± 0.002 ms 1.02
polyform/isone 2.79 ± 0.01 ns 2.79 ± 0.01 ns 1
polyform/iszero 1.83 ± 0.036 ms 1.82 ± 0.041 ms 1.01
polyform/simplify_fractions 2.58 ± 0.053 ms 2.54 ± 0.049 ms 1.01
time_to_load 4.57 ± 0.04 s 4.59 ± 0.018 s 0.996

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).