You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[MERGE chakra-core#4447@rajatd] Fixing incremental capturing of values (for bailout) in GlobOpt
Merge pull request chakra-core#4447 from rajatd:capturedValues
Due to multiple issues with incremental capturing of values in globopt, we were never capturing values incrementally across blocks. This PR fixes those issues and makes capturing values across blocks incremental (for real :) ).
`GlobOptBlockData.cpp:`
Fixes to propagate captured values to the successor in case of a single predecessor and to merge correctly the values captured on all the incoming edges, i.e., predecessors
`GlobOptBailout.cpp:`
Refactoring the code for incremental value capture and fixing the case when there were captured syms which were unprocessed after going over all the syms which were changed since the last time we captured values for bailout.
Gives a nice win in Octane on arm64 (fyi @agarwal-sandeep@sigatrev@Penguinwizzard@aaronsgiles):
```
Octane Left score Right score ∆ Score ∆ Score % Comment
---------------- --------------- --------------- ------- --------- ---------------
Box2d 6419.45 ±0.23% 7029.38 ±1.53% 609.92 9.50% Improved
Code-load 8963.50 ±0.91% 8906.50 ±0.47% -57.00 -0.64%
Crypto 12125.75 ±0.86% 12234.00 ±0.43% 108.25 0.89%
Deltablue 7695.00 ±0.24% 7735.27 ±0.69% 40.27 0.52%
Earley-boyer 10561.20 ±0.23% 10753.70 ±0.75% 192.50 1.82%
Gbemu 17752.67 ±0.71% 17980.00 ±0.54% 227.33 1.28%
Mandreel 10558.83 ±0.48% 10547.43 ±0.32% -11.40 -0.11%
Mandreel latency 29307.17 ±0.87% 29892.50 ±0.94% 585.33 2.00%
Navier-stokes 14999.00 ±0.90% 15046.50 ±0.88% 47.50 0.32%
Pdfjs 7300.00 ±0.33% 7311.83 ±0.20% 11.83 0.16%
Raytrace 15915.00 ±0.13% 16177.00 ±0.95% 262.00 1.65%
Regexp 1529.63 ±0.23% 1690.67 ±0.20% 161.04 10.53% Improved
Richards 8593.67 ±0.94% 8702.00 ±0.98% 108.33 1.26%
Splay 10626.91 ±0.23% 10881.27 ±0.17% 254.36 2.39% Improved
Splay latency 22611.63 ±2.99% 24481.75 ±2.04% 1870.12 8.27% Likely improved
Typescript 16565.17 ±0.15% 16412.17 ±0.81% -153.00 -0.92%
Zlib 19689.00 ±0.36% 19647.50 ±0.91% -41.50 -0.21%
---------------- --------------- --------------- ------- --------- ---------------
Total 11065.60 ±0.64% 11311.37 ±0.75% 245.77 2.22% Likely improved
```
splay wins are probably not real wins and box2d numbers weren't consistent, but consistently better, regexp wins are definitely real.
0 commit comments