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

Optimize PUSH #627

Merged
merged 1 commit into from
Apr 28, 2023
Merged

Optimize PUSH #627

merged 1 commit into from
Apr 28, 2023

Conversation

chfast
Copy link
Member

@chfast chfast commented Apr 28, 2023

GCC misses the optimization in the original code (uses a temporary storage for r). The reworked version fixes this.

GCC 12 regression:

@chfast chfast requested review from rodiazet, gumb0 and yperbasis April 28, 2023 08:17
@codecov
Copy link

codecov bot commented Apr 28, 2023

Codecov Report

Merging #627 (84ad758) into master (91978cf) will not change coverage.
The diff coverage is 100.00%.

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #627   +/-   ##
=======================================
  Coverage   97.34%   97.34%           
=======================================
  Files          80       80           
  Lines        7684     7684           
=======================================
  Hits         7480     7480           
  Misses        204      204           
Flag Coverage Δ
blockchaintests 65.14% <100.00%> (ø)
statetests 75.01% <100.00%> (ø)
unittests 94.83% <100.00%> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
lib/evmone/instructions.hpp 100.00% <100.00%> (ø)

@chfast
Copy link
Member Author

chfast commented Apr 28, 2023

GCC 12, Haswell

baseline/execute/main/blake2b_huff/empty_mean                                +0.0105         +0.0105             9             9             9             9
baseline/execute/main/blake2b_huff/8415nulls_mean                            +0.0120         +0.0120           578           585           578           585
baseline/execute/main/blake2b_shifts/8415nulls_mean                          -0.0333         -0.0333          5760          5568          5760          5568
baseline/execute/main/sha1_divs/empty_mean                                   -0.0395         -0.0395            42            41            42            41
baseline/execute/main/sha1_divs/5311_mean                                    -0.0380         -0.0380          3381          3252          3381          3253
baseline/execute/main/sha1_shifts/empty_mean                                 -0.0118         -0.0118            20            20            20            20
baseline/execute/main/sha1_shifts/5311_mean                                  -0.0108         -0.0108          1631          1613          1631          1613
baseline/execute/main/snailtracer/benchmark_mean                             -0.0186         -0.0186         31772         31181         31771         31181
baseline/execute/main/structarray_alloc/nfts_rank_mean                       -0.0184         -0.0184           365           358           365           358
baseline/execute/main/swap_math/spent_mean                                   -0.0076         -0.0076             2             2             2             2
baseline/execute/main/swap_math/received_mean                                -0.0287         -0.0287             2             2             2             2
baseline/execute/main/swap_math/insufficient_liquidity_mean                  -0.0298         -0.0298             1             1             1             1
baseline/execute/main/weierstrudel/1_mean                                    -0.0122         -0.0122           173           171           173           171
baseline/execute/main/weierstrudel/15_mean                                   -0.0139         -0.0139          1652          1629          1652          1629
OVERALL_GEOMEAN                                                              -0.0173         -0.0173             0             0             0             0

@chfast chfast merged commit 100c8f9 into master Apr 28, 2023
@chfast chfast deleted the push_opt branch April 28, 2023 12:46
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