[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