Bug 186386 - TierUpCheckInjectionPhase systematically never puts the outer-most loop in an inner loop's vector of outer loops
Summary: TierUpCheckInjectionPhase systematically never puts the outer-most loop in an...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Saam Barati
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2018-06-07 00:11 PDT by Saam Barati
Modified: 2018-06-07 15:07 PDT (History)
13 users (show)

See Also:


Attachments
WIP (1.08 KB, patch)
2018-06-07 01:14 PDT, Saam Barati
no flags Details | Formatted Diff | Diff
patch (1.61 KB, patch)
2018-06-07 11:09 PDT, Saam Barati
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Saam Barati 2018-06-07 00:11:11 PDT
When looking at TierUpInjectionPhase recently, it often seemed that the outermost loop would not be an OSR entry candidate. We should see why this is happening. This could probably help in some benchmarks.
Comment 1 Saam Barati 2018-06-07 01:12:26 PDT
Fixing the systematic issue looks like a speedup on a kraken subtest:

                                              og                      change                                      

ai-astar                                85.692+-0.627             85.500+-0.840         
audio-beat-detection                    39.132+-2.003             38.364+-0.357           might be 1.0200x faster
audio-dft                               95.293+-0.681      ?      96.690+-1.584         ? might be 1.0147x slower
audio-fft                               28.706+-0.107      ?      28.733+-0.360         ?
audio-oscillator                        44.681+-0.460      ?      44.772+-0.427         ?
imaging-darkroom                        58.974+-0.416             58.969+-0.539         
imaging-desaturate                      45.945+-1.371      ?      46.142+-1.571         ?
imaging-gaussian-blur                   61.139+-1.573      ^      55.691+-1.727         ^ definitely 1.0978x faster
json-parse-financial                    29.528+-0.587      ^      28.671+-0.200         ^ definitely 1.0299x faster
json-stringify-tinderbox                19.068+-0.402             18.986+-0.365         
stanford-crypto-aes                     44.608+-0.564      ?      45.408+-0.493         ? might be 1.0179x slower
stanford-crypto-ccm                     40.929+-1.719             40.911+-1.484         
stanford-crypto-pbkdf2                  60.492+-1.020             59.223+-1.505           might be 1.0214x faster
stanford-crypto-sha256-iterative        18.558+-0.220      ?      18.672+-0.295         ?

<arithmetic>                            48.053+-0.265             47.624+-0.200           might be 1.0090x faster
Comment 2 Saam Barati 2018-06-07 01:14:41 PDT
Created attachment 342138 [details]
WIP
Comment 3 Saam Barati 2018-06-07 11:09:26 PDT
Created attachment 342191 [details]
patch
Comment 4 WebKit Commit Bot 2018-06-07 15:06:49 PDT
Comment on attachment 342191 [details]
patch

Clearing flags on attachment: 342191

Committed r232602: <https://trac.webkit.org/changeset/232602>
Comment 5 WebKit Commit Bot 2018-06-07 15:06:50 PDT
All reviewed patches have been landed.  Closing bug.
Comment 6 Radar WebKit Bug Importer 2018-06-07 15:07:22 PDT
<rdar://problem/40912318>