[Webkit-unassigned] [Bug 67798] DFG JIT completely undoes speculative compilation even in the case of a partial static speculation failure
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Thu Sep 8 15:00:15 PDT 2011
https://bugs.webkit.org/show_bug.cgi?id=67798
--- Comment #4 from Filip Pizlo <fpizlo at apple.com> 2011-09-08 15:00:16 PST ---
Doing this with dynamic optimization enabled appears to reveal a case in v8-crypto where we're speculating incorrectly. My opinion is that we should commit this anyway, since (1) dynamic optimization is turned off by default and (2) we should make v8-crypto speculate correctly all the time instead of relying on the non-speculative path to save us.
Benchmark report for SunSpider, V8, and Kraken.
VMs tested:
"TipOfTreeDyn" at /Volumes/Data/pizlo/quinary/OpenSource/WebKitBuild/Release/jsc
"PartialSpecFail" 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.
TipOfTreeDyn PartialSpecFail
SunSpider:
3d-cube 12.4085+-0.3516 12.2519+-0.2947 might be 1.0128x faster
3d-morph 7.8265+-0.1363 ? 7.9644+-0.1721 ? might be 1.0176x slower
3d-raytrace 8.1677+-0.2721 ? 8.5670+-0.1768 ? might be 1.0489x slower
access-binary-trees 2.4106+-0.0321 ? 2.4442+-0.0792 ? might be 1.0139x slower
access-fannkuch 12.7431+-0.2813 ? 12.7705+-0.1946 ?
access-nbody 4.2390+-0.0476 ! 4.4125+-0.1213 ! definitely 1.0409x slower
access-nsieve 2.7531+-0.0640 2.7184+-0.0627 might be 1.0127x faster
bitops-3bit-bits-in-byte 1.8846+-0.0544 ? 2.0364+-0.1052 ? might be 1.0805x slower
bitops-bits-in-byte 5.2725+-0.2678 5.1915+-0.4005 might be 1.0156x faster
bitops-bitwise-and 4.1097+-0.1246 3.9832+-0.1009 might be 1.0318x faster
bitops-nsieve-bits 5.8795+-0.1013 ? 6.0344+-0.2063 ? might be 1.0263x slower
controlflow-recursive 2.0543+-0.0607 2.0061+-0.0400 might be 1.0240x faster
crypto-aes 7.9677+-0.2851 7.9440+-0.3411
crypto-md5 2.9693+-0.0756 ? 3.1021+-0.1297 ? might be 1.0447x slower
crypto-sha1 2.4788+-0.0803 ? 2.4853+-0.0725 ?
date-format-tofte 10.6320+-0.2625 ? 10.6375+-0.2228 ?
date-format-xparb 9.2417+-0.2094 ? 9.4102+-0.2722 ? might be 1.0182x slower
math-cordic 6.7555+-0.1049 ? 6.7855+-0.0993 ?
math-partial-sums 7.7144+-0.1615 7.5565+-0.1082 might be 1.0209x faster
math-spectral-norm 2.6691+-0.0684 2.6070+-0.0618 might be 1.0238x faster
regexp-dna 10.4582+-0.2742 ? 10.4726+-0.2079 ?
string-base64 6.3856+-0.1344 ? 6.4854+-0.1409 ? might be 1.0156x slower
string-fasta 7.2776+-0.1751 ? 7.4598+-0.2319 ? might be 1.0250x slower
string-tagcloud 12.5675+-0.5429 ? 12.6614+-0.3102 ?
string-unpack-code 19.5392+-0.6266 19.5243+-0.5633
string-validate-input 6.8255+-0.1597 ? 7.2243+-0.2755 ? might be 1.0584x slower
<arithmetic> 7.0474+-0.0485 ? 7.1052+-0.0365 ?
<geometric> 5.8534+-0.0323 ? 5.9095+-0.0296 ?
<harmonic> 4.7800+-0.0298 ? 4.8287+-0.0358 ? might be 1.0102x slower
TipOfTreeDyn PartialSpecFail
V8:
crypto 82.4555+-0.3792 ! 87.4537+-0.6151 ! definitely 1.0606x slower
deltablue 263.4640+-2.7763 261.5359+-2.0604
earley-boyer 101.3340+-0.3097 100.8797+-0.3992
raytrace 82.1846+-0.3536 81.5247+-0.8216
regexp 111.7920+-0.7306 110.9027+-0.5673
richards 218.6683+-0.6105 ? 219.1288+-1.2508 ?
splay 106.2067+-0.5304 105.4638+-0.5139
<arithmetic> 138.0150+-0.5447 ? 138.1270+-0.3684 ?
<geometric> 124.7283+-0.4012 ? 125.1911+-0.2985 ?
<harmonic> 114.9504+-0.3416 ! 115.6934+-0.3325 ! definitely 1.0065x slower
TipOfTreeDyn PartialSpecFail
Kraken:
ai-astar 1138.4605+-9.4245 ? 1143.6393+-8.0190 ?
audio-beat-detection 514.7744+-2.1217 ? 514.9893+-2.7075 ?
audio-dft 470.3802+-3.7706 ? 477.4101+-6.7100 ? might be 1.0149x slower
audio-fft 395.4076+-4.8793 ? 401.4950+-2.7998 ? might be 1.0154x slower
audio-oscillator 351.5889+-2.0485 348.8424+-1.1604
imaging-darkroom 539.0097+-7.2727 533.6361+-1.2733 might be 1.0101x faster
imaging-desaturate 596.2434+-1.6842 ? 597.0473+-2.0741 ?
imaging-gaussian-blur 2301.8736+-20.0258 ? 2303.2791+-14.8414 ?
json-parse-financial 50.6473+-0.3132 50.1082+-0.3485 might be 1.0108x faster
json-stringify-tinderbox 69.7147+-0.5663 ? 70.0110+-0.6125 ?
stanford-crypto-aes 162.4962+-0.6509 ! 166.2443+-2.4364 ! definitely 1.0231x slower
stanford-crypto-ccm 123.4177+-0.5429 ? 124.6134+-1.4519 ?
stanford-crypto-pbkdf2 364.9508+-2.1027 ^ 358.8682+-2.5451 ^ definitely 1.0169x faster
stanford-crypto-sha256-iterative 139.6700+-0.4417 138.4910+-1.0300
<arithmetic> 515.6168+-2.0708 ? 516.3339+-1.2586 ?
<geometric> 316.7307+-0.7793 ? 317.1747+-0.6087 ?
<harmonic> 193.0029+-0.5715 192.9705+-0.6043
TipOfTreeDyn PartialSpecFail
All benchmarks:
<arithmetic> 178.0419+-0.5977 ? 178.3043+-0.3970 ?
<geometric> 30.3089+-0.0897 ! 30.4989+-0.0852 ! definitely 1.0063x slower
<harmonic> 8.4339+-0.0515 ? 8.5184+-0.0617 ? might be 1.0100x 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