Bug 186386

Summary: TierUpCheckInjectionPhase systematically never puts the outer-most loop in an inner loop's vector of outer loops
Product: WebKit Reporter: Saam Barati <saam>
Component: JavaScriptCoreAssignee: Saam Barati <saam>
Status: RESOLVED FIXED    
Severity: Normal CC: benjamin, commit-queue, fpizlo, ggaren, gskachkov, jfbastien, keith_miller, mark.lam, msaboff, rmorisset, ticaiolima, webkit-bug-importer, ysuzuki
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
WIP
none
patch none

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>