[Webkit-unassigned] [Bug 67176] JavaScriptCore does not have tiered compilation

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Sep 2 22:23:57 PDT 2011


https://bugs.webkit.org/show_bug.cgi?id=67176





--- Comment #18 from Filip Pizlo <fpizlo at apple.com>  2011-09-02 22:23:57 PST ---
Tiered compilation - even in this current fairly dumb form - is starting to show signs of goodness.  When combined with https://bugs.webkit.org/show_bug.cgi?id=67553, we get a 10% speed-up on v8-crypto.  Other benchmarks are still hurting because of a lack of OSR (so many benchmarks never tier up) and the fact that the DFG back-end still doesn't properly incorporate the rich set of numeric predictions we now have (bottom, int-static, int, double, number, top).


Benchmark report for SunSpider, V8, and Kraken.

VMs tested:
"TipOfTree" at /Volumes/Data/pizlo/quinary/OpenSource/WebKitBuild/Release/jsc
"DynamicOpt" at /Volumes/Data/pizlo/quartary/OpenSource/WebKitBuild/Release/jsc
"DynamicOpt2" at /Volumes/Data/pizlo/octonary/OpenSource/WebKitBuild/Release/jsc

Collected 12 samples per benchmark/VM, with 4 VM invocations per benchmark. Used 1 benchmark iteration per VM invocation for warm-up.
Used the jsc-specific preciseTime() function to get microsecond-level timing. Reporting benchmark execution times with 95% confidence
intervals in milliseconds.

                                            TipOfTree               DynamicOpt             DynamicOpt2          DynamicOpt2 v. TipOfTree 
SunSpider:
   3d-cube                                7.9698+-0.2087    !    12.3583+-0.2144    ?    12.4259+-0.2686       ! definitely 1.5591x slower
   3d-morph                               7.7744+-0.1793    !     8.1831+-0.1140    ?     8.1930+-0.2560       ? might be 1.0538x slower
   3d-raytrace                            7.6502+-0.1953    !     8.4078+-0.1219    ?     8.7114+-0.3048       ! definitely 1.1387x slower
   access-binary-trees                    2.3893+-0.0906    ?     2.4728+-0.0687          2.4634+-0.0682       ? might be 1.0310x slower
   access-fannkuch                       11.9543+-0.2186    !    13.0364+-0.2499         13.0251+-0.2684       ! definitely 1.0896x slower
   access-nbody                           4.4484+-0.1560          4.3845+-0.0838          4.3802+-0.0679         might be 1.0156x faster
   access-nsieve                          2.5408+-0.0307    !     2.7409+-0.0567    ?     2.7937+-0.1355       ! definitely 1.0995x slower
   bitops-3bit-bits-in-byte               1.7154+-0.0824    !     1.9264+-0.0602          1.9255+-0.0443       ! definitely 1.1224x slower
   bitops-bits-in-byte                    4.5476+-0.2678    !     5.3181+-0.2523    ?     5.5533+-0.3096       ! definitely 1.2211x slower
   bitops-bitwise-and                     3.6850+-0.0556    !     4.0393+-0.1645    ?     4.0762+-0.0869       ! definitely 1.1062x slower
   bitops-nsieve-bits                     5.5807+-0.2016    !     5.9615+-0.1491    ?     5.9727+-0.1217       ! definitely 1.0702x slower
   controlflow-recursive                  2.0337+-0.0349    ?     2.0952+-0.0382          2.0585+-0.0367       ? might be 1.0122x slower
   crypto-aes                             6.8239+-0.1930    !     8.0399+-0.3227          7.8494+-0.3143       ! definitely 1.1503x slower
   crypto-md5                             2.8098+-0.0809    !     2.9741+-0.0799          2.9550+-0.0900       ? might be 1.0517x slower
   crypto-sha1                            2.2982+-0.0805    !     2.4675+-0.0638    ?     2.5981+-0.1117       ! definitely 1.1305x slower
   date-format-tofte                     10.2719+-0.2905    !    10.8794+-0.2106         10.5788+-0.2598       ? might be 1.0299x slower
   date-format-xparb                      8.7886+-0.1802    !     9.7157+-0.2797          9.5360+-0.2017       ! definitely 1.0850x slower
   math-cordic                            6.4300+-0.1255    !     6.8179+-0.0991          6.8140+-0.1386       ! definitely 1.0597x slower
   math-partial-sums                      7.7420+-0.1017          7.6207+-0.1555    ?     7.7644+-0.1373       ?
   math-spectral-norm                     2.5527+-0.0737    ?     2.6611+-0.0927    ?     2.7136+-0.0870       ! definitely 1.0630x slower
   regexp-dna                            10.5863+-0.2935         10.4799+-0.1675         10.3336+-0.1690         might be 1.0245x faster
   string-base64                          6.1758+-0.1848    ?     6.4751+-0.1442    ?     6.4844+-0.2474       ? might be 1.0500x slower
   string-fasta                           7.6886+-0.2365          7.4774+-0.1863          7.4341+-0.1208         might be 1.0342x faster
   string-tagcloud                       12.4531+-0.4789    ?    12.5956+-0.4655         12.5680+-0.3960       ?
   string-unpack-code                    18.8142+-0.2687    ?    19.4565+-0.5111         19.2330+-0.4460       ? might be 1.0223x slower
   string-validate-input                  7.2405+-0.3145          7.0192+-0.2957          6.8666+-0.1451         might be 1.0545x faster

   <arithmetic>                           6.6525+-0.0370    !     7.1386+-0.0312          7.1272+-0.0400       ! definitely 1.0714x slower
   <geometric>                            5.5352+-0.0272    !     5.9295+-0.0265    ?     5.9402+-0.0369       ! definitely 1.0732x slower
   <harmonic>                             4.5247+-0.0275    !     4.8366+-0.0343    ?     4.8590+-0.0477       ! definitely 1.0739x slower

                                            TipOfTree               DynamicOpt             DynamicOpt2          DynamicOpt2 v. TipOfTree 
V8:
   crypto                                92.1294+-0.3719    !    97.0536+-1.8706    ^    83.3741+-0.6893       ^ definitely 1.1050x faster
   deltablue                            143.2966+-1.3033        142.6860+-1.3562    ^   138.8982+-0.6696       ^ definitely 1.0317x faster
   earley-boyer                         100.6071+-0.4585    !   108.4473+-0.9126        108.2658+-1.2111       ! definitely 1.0761x slower
   raytrace                              52.3645+-0.4948    !    55.0936+-0.4014    ?    55.6850+-0.4855       ! definitely 1.0634x slower
   regexp                               110.4607+-0.8697    ?   110.7716+-0.3791    !   112.5372+-1.1640       ! definitely 1.0188x slower
   richards                             247.5590+-1.0163    ^   235.0075+-1.6766        234.1091+-0.7328       ^ definitely 1.0575x faster
   splay                                104.8805+-0.7566    ?   106.2095+-0.5770    ^   104.7761+-0.6962       

   <arithmetic>                         121.6140+-0.2401    ?   122.1813+-0.3841    ^   119.6636+-0.2768       ^ definitely 1.0163x faster
   <geometric>                          110.3617+-0.2388    !   112.5381+-0.4232    ^   109.8188+-0.2973       ^ definitely 1.0049x faster
   <harmonic>                           100.7142+-0.3088    !   103.8665+-0.4832    ^   101.3032+-0.3159       ?

                                            TipOfTree               DynamicOpt             DynamicOpt2          DynamicOpt2 v. TipOfTree 
Kraken:
   ai-astar                            1105.0592+-7.7066    !  1130.2690+-4.0420    !  1147.0835+-6.9637       ! definitely 1.0380x slower
   audio-beat-detection                 480.9968+-2.2409    !   510.7421+-2.2406    ?   516.0047+-4.2511       ! definitely 1.0728x slower
   audio-dft                            443.7356+-16.1293   !   477.5576+-6.2779    ?   479.8115+-6.7655       ! definitely 1.0813x slower
   audio-fft                            378.2326+-4.0596    !   394.4044+-3.0770    !   401.4458+-2.2673       ! definitely 1.0614x slower
   audio-oscillator                     381.0797+-1.3206    ^   355.8970+-2.5926        355.7188+-2.0398       ^ definitely 1.0713x faster
   imaging-darkroom                     540.2286+-3.5820    ?   550.3868+-7.1062    ^   540.4649+-2.3819       ?
   imaging-desaturate                   606.5337+-7.1713    ?   608.6832+-5.2899        606.8448+-1.6518       ?
   imaging-gaussian-blur               1753.3311+-11.1394   !  2310.2974+-5.2848    ?  2320.8847+-16.6530      ! definitely 1.3237x slower
   json-parse-financial                  48.0398+-0.4362    ^    47.3302+-0.2202    !    48.6760+-0.1937       ! definitely 1.0132x slower
   json-stringify-tinderbox              75.2160+-1.0468         74.0179+-0.2819    ?    74.3878+-0.9351         might be 1.0111x faster
   stanford-crypto-aes                  148.1361+-0.7944    !   163.0568+-0.9930        162.7343+-0.9379       ! definitely 1.0985x slower
   stanford-crypto-ccm                  113.2673+-1.2877    !   126.0253+-1.6922    ?   126.2694+-1.5381       ! definitely 1.1148x slower
   stanford-crypto-pbkdf2               343.6412+-1.8972    !   367.0378+-2.6543        363.8759+-2.2831       ! definitely 1.0589x slower
   stanford-crypto-sha256-iterative     133.1163+-0.9564    !   140.6644+-1.3553    ?   143.2696+-1.3289       ! definitely 1.0763x slower

   <arithmetic>                         467.9010+-1.5248    !   518.3121+-1.0232    !   520.5337+-0.8504       ! definitely 1.1125x slower
   <geometric>                          302.6273+-0.8312    !   318.6361+-0.7012    !   320.3008+-0.4731       ! definitely 1.0584x slower
   <harmonic>                           187.3953+-0.5625    !   192.5117+-0.5001    !   194.6711+-0.4082       ! definitely 1.0388x slower

                                            TipOfTree               DynamicOpt             DynamicOpt2          DynamicOpt2 v. TipOfTree 
All benchmarks:
   <arithmetic>                         161.1676+-0.4418    !   176.5371+-0.3106    ?   176.8176+-0.2616       ! definitely 1.0971x slower
   <geometric>                           28.4665+-0.0678    !    30.1160+-0.0719         30.0832+-0.1083       ! definitely 1.0568x slower
   <harmonic>                             7.9791+-0.0471    !     8.5209+-0.0588    ?     8.5580+-0.0820       ! definitely 1.0726x slower

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list