[Webkit-unassigned] [Bug 74804] DFG 32_64 should eagerly speculate Int32 and Cell on heap loads
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Mon Dec 19 00:08:56 PST 2011
https://bugs.webkit.org/show_bug.cgi?id=74804
--- Comment #3 from Filip Pizlo <fpizlo at apple.com> 2011-12-19 00:08:56 PST ---
There's definitely something fishy with this patch. I tried to see which of the two eager speculations were more profitable: cell or int32. So I created four total version of this patch:
1) Control. This has eager speculations disabled by having the actual functionality guarded by if (false), but everything else in place.
2) Int: only speculate eagerly on Int32
3) Cell: same but for cell
4) IntCell: both eager speculations.
The results show a significant Kraken slow-down on Control. Will have to look at this more.
[pizlo at nitroflex bencher] ./bencher TipOfTree32:/Volumes/Data/pizlo/quinary/OpenSource/WebKitBuild/Release/jsc Control:/Volumes/Data/pizlo/quartary/OpenSource/Control/Release/jsc EagerCell32:/Volumes/Data/pizlo/quartary/OpenSource/JustCell/Release/jsc EagerInt32:/Volumes/Data/pizlo/quartary/OpenSource/JustInt32/Release/jsc EagerIntCell32:/Volumes/Data/pizlo/quartary/OpenSource/BothIntAndCell/Release/jsc --local --remote oldmac,bigmac
Warning: could not identify checkout location for Control
Warning: could not identify checkout location for EagerCell32
Warning: could not identify checkout location for EagerInt32
Warning: could not identify checkout location for EagerIntCell32
Copying TipOfTree32 into /Volumes/Data/pizlo/bencher/temp/benchdata...
Copying Control into /Volumes/Data/pizlo/bencher/temp/benchdata...
Copying EagerCell32 into /Volumes/Data/pizlo/bencher/temp/benchdata...
Copying EagerInt32 into /Volumes/Data/pizlo/bencher/temp/benchdata...
Copying EagerIntCell32 into /Volumes/Data/pizlo/bencher/temp/benchdata...
All VMs are in place.
Packaging benchmarking directory for remote hosts...
Sending benchmark payload to oldmac...
Running on oldmac...
940/940
Generating benchmark report at TipOfTree32_Control_EagerCell32_EagerInt32_EagerIntCell32_SunSpiderV8Kraken_oldmac_20111218_2338_benchReport.txt
Benchmark report for SunSpider, V8, and Kraken on oldmac (MacPro4,1).
VMs tested:
"TipOfTree32" at /Volumes/Data/pizlo/quinary/OpenSource/WebKitBuild/Release/jsc (r103205)
"Control" at /Volumes/Data/pizlo/quartary/OpenSource/Control/Release/jsc
"EagerCell32" at /Volumes/Data/pizlo/quartary/OpenSource/JustCell/Release/jsc
"EagerInt32" at /Volumes/Data/pizlo/quartary/OpenSource/JustInt32/Release/jsc
"EagerIntCell32" at /Volumes/Data/pizlo/quartary/OpenSource/BothIntAndCell/Release/jsc
Collected 12 samples per benchmark/VM, with 4 VM invocations per benchmark. Emitted a call to gc() between sample measurements. 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.
TipOfTree32 Control EagerCell32 EagerInt32 EagerIntCell32 EagerIntCell32 v. TipOfTree32
SunSpider:
3d-cube 8.7318+-0.0206 ? 8.7479+-0.0222 ! 8.8039+-0.0185 ! 9.4689+-0.0255 ? 9.4717+-0.0242 ! definitely 1.0847x slower
3d-morph 13.2629+-0.0406 ? 13.2753+-0.0375 ? 13.2935+-0.0401 13.2537+-0.0360 13.2495+-0.0355
3d-raytrace 11.6782+-0.0393 11.6765+-0.0100 ! 11.7175+-0.0168 ? 11.8153+-0.0904 11.7703+-0.0166 ! definitely 1.0079x slower
access-binary-trees 2.3448+-0.0094 ^ 2.3071+-0.0137 2.2937+-0.0117 ! 2.3275+-0.0115 ^ 2.2859+-0.0122 ^ definitely 1.0258x faster
access-fannkuch 11.3003+-0.0256 ! 11.4104+-0.0161 ? 11.4182+-0.0235 ^ 11.1282+-0.0239 ? 11.1454+-0.0122 ^ definitely 1.0139x faster
access-nbody 6.8996+-0.0084 ^ 6.8553+-0.0074 ! 6.8895+-0.0048 ^ 6.8691+-0.0146 ? 6.8934+-0.0123
access-nsieve 3.7322+-0.0050 ? 3.7564+-0.0351 3.7359+-0.0061 ? 3.7394+-0.0039 3.7343+-0.0048 ?
bitops-3bit-bits-in-byte 1.5421+-0.0109 ? 1.5599+-0.0269 ? 1.5734+-0.0276 1.5600+-0.0264 1.5530+-0.0242 ?
bitops-bits-in-byte 6.0217+-0.0083 ? 6.0421+-0.0199 6.0395+-0.0187 6.0143+-0.0071 ? 6.0340+-0.0168 ?
bitops-bitwise-and 4.7019+-0.0175 4.6918+-0.0142 4.6897+-0.0128 ! 4.7390+-0.0069 ? 4.7440+-0.0080 ! definitely 1.0089x slower
bitops-nsieve-bits 8.1847+-0.0122 8.1735+-0.0128 ? 8.1807+-0.0176 ? 8.1830+-0.0175 ? 8.2074+-0.0165 ?
controlflow-recursive 3.6644+-0.0082 ? 3.6887+-0.0370 3.6483+-0.0051 ! 3.6708+-0.0053 ^ 3.6469+-0.0061 ^ definitely 1.0048x faster
crypto-aes 12.1206+-0.0412 ! 12.5194+-0.0511 ^ 12.3134+-0.0661 ^ 12.1889+-0.0481 ^ 11.9197+-0.0457 ^ definitely 1.0169x faster
crypto-md5 3.9542+-0.0278 ? 3.9928+-0.0305 3.9508+-0.0285 ? 3.9681+-0.0228 ? 3.9698+-0.0282 ?
crypto-sha1 3.3051+-0.0085 ! 3.3614+-0.0153 ? 3.3682+-0.0119 ^ 3.3168+-0.0219 ? 3.3419+-0.0209 ! definitely 1.0111x slower
date-format-tofte 13.9086+-0.0842 13.9041+-0.1466 13.8380+-0.0755 13.7874+-0.1152 ? 13.7889+-0.0746
date-format-xparb 14.2860+-0.0656 ! 14.9952+-0.2560 ^ 14.4186+-0.2637 ? 14.4634+-0.0825 14.3511+-0.1256 ?
math-cordic 12.0051+-0.0349 ? 12.0180+-0.0346 ? 12.0405+-0.0325 12.0243+-0.0381 ? 12.0592+-0.0470 ?
math-partial-sums 15.0402+-0.0134 15.0169+-0.0118 ? 15.0505+-0.0619 ? 15.0630+-0.0389 15.0338+-0.0216
math-spectral-norm 3.2868+-0.0046 ! 3.3098+-0.0124 ^ 3.2840+-0.0094 ? 3.3140+-0.0240 ^ 3.2782+-0.0040 ^ definitely 1.0027x faster
regexp-dna 11.1242+-0.0351 11.1180+-0.0320 ? 11.1321+-0.0352 11.1187+-0.0337 ? 11.1785+-0.0654 ?
string-base64 5.9700+-0.0185 ! 6.0209+-0.0174 5.9702+-0.0425 ? 6.0021+-0.0064 ! 6.0358+-0.0084 ! definitely 1.0110x slower
string-fasta 10.5009+-0.0663 10.4781+-0.0185 10.4596+-0.0138 10.4517+-0.0137 ? 10.4759+-0.0154
string-tagcloud 16.5245+-0.0492 ? 16.6031+-0.0481 ^ 16.4980+-0.0307 ! 16.6524+-0.0608 16.5581+-0.0374 ?
string-unpack-code 26.6542+-0.0978 ? 26.6837+-0.0884 ? 26.7645+-0.0989 ! 27.0689+-0.1923 ^ 26.7331+-0.1127 ?
string-validate-input 7.6256+-0.0232 ? 7.6628+-0.0146 7.6274+-0.0499 ? 7.6407+-0.0189 ? 7.6646+-0.0653 ?
<arithmetic> * 9.1681+-0.0147 ! 9.2257+-0.0219 9.1923+-0.0155 ? 9.2242+-0.0188 9.1971+-0.0147 ? might be 1.0032x slower
<geometric> 7.4811+-0.0123 ! 7.5225+-0.0176 7.4975+-0.0143 ? 7.5212+-0.0170 7.5051+-0.0146 ? might be 1.0032x slower
<harmonic> 5.8539+-0.0131 ? 5.8821+-0.0231 5.8683+-0.0212 ? 5.8821+-0.0232 5.8645+-0.0211 ? might be 1.0018x slower
TipOfTree32 Control EagerCell32 EagerInt32 EagerIntCell32 EagerIntCell32 v. TipOfTree32
V8:
crypto 121.8289+-0.4453 ! 126.1234+-0.4726 ^ 123.1796+-0.5094 122.9165+-0.5291 ^ 121.1590+-0.5285
deltablue 226.0008+-1.0798 224.2036+-0.9799 ^ 221.3942+-1.1447 ! 223.4072+-0.7185 ^ 221.3443+-1.2569 ^ definitely 1.0210x faster
earley-boyer 143.1300+-1.3851 ? 143.5826+-1.7801 142.0191+-1.6713 ? 143.8748+-1.4920 142.0498+-1.3735
raytrace 68.8921+-0.2200 ^ 68.0308+-0.2554 ? 68.3254+-0.5471 ? 69.2902+-0.6386 69.0949+-0.3306 ?
regexp 153.4198+-0.4170 153.3656+-0.4209 ? 153.8082+-0.6626 ? 154.2303+-0.7662 153.3607+-0.5203
richards 239.7321+-0.7279 ^ 236.9748+-1.1710 ^ 229.8522+-0.6694 ! 238.8874+-1.3089 ^ 228.0728+-1.6240 ^ definitely 1.0511x faster
splay 118.0435+-1.3747 116.2175+-1.5273 ? 117.5264+-1.2249 117.2225+-1.3448 116.8798+-1.3623
<arithmetic> 153.0067+-0.4246 152.6426+-0.4052 ^ 150.8721+-0.4812 ! 152.8327+-0.3884 ^ 150.2802+-0.5252 ^ definitely 1.0181x faster
<geometric> * 142.2467+-0.4208 142.0353+-0.3882 ^ 140.8386+-0.4932 ! 142.3062+-0.4086 ^ 140.4060+-0.4899 ^ definitely 1.0131x faster
<harmonic> 131.3322+-0.3958 131.0768+-0.3456 130.4057+-0.5121 ! 131.5752+-0.4697 ^ 130.2329+-0.4460 ^ definitely 1.0084x faster
TipOfTree32 Control EagerCell32 EagerInt32 EagerIntCell32 EagerIntCell32 v. TipOfTree32
Kraken:
ai-astar 988.0788+-1.6338 ! 1001.3776+-1.4731 1001.3068+-1.6581 1000.5687+-1.3337 1000.5236+-1.5517 ! definitely 1.0126x slower
audio-beat-detection 435.6670+-0.8384 ! 447.1157+-0.9294 ? 447.3081+-2.0877 ! 451.3513+-0.8013 ^ 444.1357+-0.6483 ! definitely 1.0194x slower
audio-dft 444.2367+-5.1701 ! 458.9402+-2.5081 ^ 454.3556+-2.0733 ! 459.4940+-2.1597 ^ 453.2168+-2.1005 ! definitely 1.0202x slower
audio-fft 267.2892+-0.5793 ! 278.0532+-0.7684 ? 278.5907+-1.3102 278.2406+-0.9339 277.5134+-1.5167 ! definitely 1.0383x slower
audio-oscillator 537.5733+-2.7632 ? 539.3108+-1.5395 ! 543.3890+-2.2696 ? 543.6902+-0.4835 ^ 538.4721+-2.2220 ?
imaging-darkroom 472.7644+-4.8700 ? 473.2457+-4.9629 ? 477.3557+-7.4831 472.8561+-5.0028 ? 476.1891+-6.6622 ?
imaging-desaturate 359.8268+-0.2506 ^ 358.0175+-0.0843 ? 358.1182+-0.0506 ? 358.1279+-0.1200 358.1198+-0.1336 ^ definitely 1.0048x faster
imaging-gaussian-blur 855.8991+-0.3269 ? 857.5905+-2.3498 ^ 819.2830+-0.2085 ^ 816.9008+-0.8720 ^ 767.6744+-0.2413 ^ definitely 1.1149x faster
json-parse-financial 89.0504+-0.2358 ! 89.6522+-0.2058 ^ 88.7239+-0.2067 ! 89.7405+-0.1255 ^ 88.7932+-0.3244
json-stringify-tinderbox 128.4641+-0.2895 128.2169+-0.7026 ? 128.2388+-0.4634 ? 128.9169+-0.3147 ^ 127.5880+-0.3585 ^ definitely 1.0069x faster
stanford-crypto-aes 169.1226+-0.6672 ! 171.6664+-0.5933 ^ 169.7603+-0.5412 ? 170.4990+-0.4678 ^ 164.1166+-0.4307 ^ definitely 1.0305x faster
stanford-crypto-ccm 158.3237+-5.3509 155.4516+-1.2658 ? 155.5762+-0.9642 155.2959+-1.0096 153.8449+-0.5615 might be 1.0291x faster
stanford-crypto-pbkdf2 310.5128+-0.5477 ! 315.6918+-0.8011 ^ 314.1845+-0.3754 ^ 310.6858+-0.3697 ! 314.8788+-0.7839 ! definitely 1.0141x slower
stanford-crypto-sha256-iterative 133.2024+-0.2953 132.6954+-0.3863 ? 132.9822+-0.4908 ^ 131.9803+-0.2355 ! 132.6596+-0.3477
<arithmetic> * 382.1437+-0.5140 ! 386.2161+-0.4472 ^ 383.5123+-0.6870 383.4534+-0.3695 ^ 378.4090+-0.6253 ^ definitely 1.0099x faster
<geometric> 301.2130+-0.6552 ! 303.9776+-0.4061 ^ 302.6707+-0.5448 ? 302.8239+-0.3250 ^ 299.6524+-0.5294 ^ definitely 1.0052x faster
<harmonic> 236.4481+-0.7261 ! 237.8735+-0.3839 ^ 237.0256+-0.3884 ? 237.4589+-0.2831 ^ 235.2075+-0.4443 ^ definitely 1.0053x faster
TipOfTree32 Control EagerCell32 EagerInt32 EagerIntCell32 EagerIntCell32 v. TipOfTree32
All benchmarks:
<arithmetic> 141.6900+-0.2048 ! 142.8807+-0.1723 ^ 141.7931+-0.2601 ? 142.0852+-0.1594 ^ 140.1875+-0.2456 ^ definitely 1.0107x faster
<geometric> 34.8757+-0.0555 ! 35.0698+-0.0624 ^ 34.9165+-0.0683 ? 35.0368+-0.0627 ^ 34.8160+-0.0665 might be 1.0017x faster
<harmonic> 10.3205+-0.0227 ? 10.3697+-0.0401 10.3448+-0.0368 ? 10.3699+-0.0402 10.3371+-0.0367 ? might be 1.0016x slower
TipOfTree32 Control EagerCell32 EagerInt32 EagerIntCell32 EagerIntCell32 v. TipOfTree32
Geomean of preferred means:
<scaled-result> 79.2834+-0.1362 ! 79.6908+-0.1351 ^ 79.1846+-0.1637 ! 79.5465+-0.1266 ^ 78.7647+-0.1512 ^ definitely 1.0066x faster
Sending benchmark payload to bigmac...
Running on bigmac...
940/940
Generating benchmark report at TipOfTree32_Control_EagerCell32_EagerInt32_EagerIntCell32_SunSpiderV8Kraken_bigmac_20111218_2348_benchReport.txt
Benchmark report for SunSpider, V8, and Kraken on bigmac (MacPro5,1).
VMs tested:
"TipOfTree32" at /Volumes/Data/pizlo/quinary/OpenSource/WebKitBuild/Release/jsc (r103205)
"Control" at /Volumes/Data/pizlo/quartary/OpenSource/Control/Release/jsc
"EagerCell32" at /Volumes/Data/pizlo/quartary/OpenSource/JustCell/Release/jsc
"EagerInt32" at /Volumes/Data/pizlo/quartary/OpenSource/JustInt32/Release/jsc
"EagerIntCell32" at /Volumes/Data/pizlo/quartary/OpenSource/BothIntAndCell/Release/jsc
Collected 12 samples per benchmark/VM, with 4 VM invocations per benchmark. Emitted a call to gc() between sample measurements. 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.
TipOfTree32 Control EagerCell32 EagerInt32 EagerIntCell32 EagerIntCell32 v. TipOfTree32
SunSpider:
3d-cube 7.2654+-0.0133 7.2617+-0.0138 ! 7.2951+-0.0144 ! 7.8291+-0.0137 ! 7.8575+-0.0115 ! definitely 1.0815x slower
3d-morph 10.9658+-0.0332 10.9517+-0.0350 ? 10.9855+-0.0400 ? 10.9926+-0.0269 10.9797+-0.0352 ?
3d-raytrace 9.6582+-0.0179 ! 9.7457+-0.0266 ? 9.7552+-0.0183 ? 9.7799+-0.0194 ? 9.8546+-0.0661 ! definitely 1.0203x slower
access-binary-trees 1.9276+-0.0081 1.9177+-0.0127 ^ 1.8906+-0.0073 ! 1.9278+-0.0054 ^ 1.8873+-0.0131 ^ definitely 1.0214x faster
access-fannkuch 9.3461+-0.0233 ! 9.4206+-0.0070 ? 9.4335+-0.0090 ^ 9.1983+-0.0056 ? 9.2067+-0.0094 ^ definitely 1.0151x faster
access-nbody 5.7141+-0.0037 ^ 5.6899+-0.0057 ? 5.6964+-0.0040 5.6875+-0.0051 ! 5.7072+-0.0049
access-nsieve 3.1269+-0.0039 3.1252+-0.0059 3.1243+-0.0126 ? 3.1329+-0.0047 3.1291+-0.0056 ?
bitops-3bit-bits-in-byte 1.2902+-0.0202 1.2895+-0.0193 ? 1.3028+-0.0190 1.2964+-0.0201 1.2948+-0.0182 ?
bitops-bits-in-byte 4.9842+-0.0195 ? 4.9998+-0.0194 4.9769+-0.0082 ? 4.9792+-0.0192 4.9770+-0.0135
bitops-bitwise-and 3.8748+-0.0180 ? 3.8878+-0.0130 3.8868+-0.0100 ! 3.9210+-0.0095 ? 3.9280+-0.0113 ! definitely 1.0137x slower
bitops-nsieve-bits 6.7597+-0.0056 6.7563+-0.0098 ? 6.7600+-0.0100 6.7580+-0.0077 ! 6.7835+-0.0125 ! definitely 1.0035x slower
controlflow-recursive 3.0111+-0.0057 ? 3.0302+-0.0245 2.9958+-0.0125 ! 3.0196+-0.0064 3.0073+-0.0236
crypto-aes 10.0469+-0.0346 ! 10.4278+-0.0298 10.2985+-0.1357 ^ 10.1006+-0.0274 ^ 9.9996+-0.0460
crypto-md5 3.2757+-0.0212 ? 3.3172+-0.0204 3.2809+-0.0256 ? 3.3199+-0.0219 3.2959+-0.0177 ?
crypto-sha1 2.7412+-0.0108 ! 2.7903+-0.0146 2.7808+-0.0147 2.7651+-0.0255 ? 2.8015+-0.0322 ! definitely 1.0220x slower
date-format-tofte 11.4606+-0.0577 ? 11.5339+-0.0800 11.4521+-0.0476 11.3878+-0.0340 ? 11.4031+-0.0488
date-format-xparb 11.8725+-0.0259 ! 12.4146+-0.1292 ^ 11.7103+-0.0761 ! 12.0641+-0.0846 ^ 11.7498+-0.0662 ^ definitely 1.0104x faster
math-cordic 9.9470+-0.0235 ? 9.9480+-0.0262 ? 9.9752+-0.0178 9.9438+-0.0265 ? 9.9442+-0.0214
math-partial-sums 12.4418+-0.0180 ? 12.4441+-0.0183 ? 12.4626+-0.0123 12.4501+-0.0254 12.4438+-0.0084 ?
math-spectral-norm 2.7444+-0.0168 2.7441+-0.0034 ^ 2.7278+-0.0047 ! 2.7443+-0.0085 ^ 2.7206+-0.0029 ^ definitely 1.0087x faster
regexp-dna 9.2059+-0.0603 9.1753+-0.0126 ? 9.1766+-0.0096 ? 9.1795+-0.0120 ? 9.2319+-0.0555 ?
string-base64 4.8940+-0.0060 ! 4.9161+-0.0111 4.9159+-0.0070 4.9044+-0.0101 ! 4.9673+-0.0457 ! definitely 1.0150x slower
string-fasta 8.6852+-0.0718 8.6488+-0.0150 ? 8.6547+-0.0109 8.6545+-0.0148 8.6454+-0.0116
string-tagcloud 13.6750+-0.0450 ! 13.8188+-0.0274 ^ 13.7395+-0.0366 ? 13.7704+-0.0430 13.7426+-0.0396 ?
string-unpack-code 22.0746+-0.0623 ? 22.2830+-0.1703 22.1407+-0.0516 ! 22.4148+-0.1506 ^ 22.0658+-0.0613
string-validate-input 6.2945+-0.0161 ! 6.3402+-0.0150 ^ 6.2909+-0.0082 ? 6.3075+-0.0099 ? 6.3276+-0.0179 ?
<arithmetic> * 7.5878+-0.0079 ! 7.6492+-0.0099 ^ 7.6042+-0.0096 ! 7.6357+-0.0113 7.6135+-0.0139 ! definitely 1.0034x slower
<geometric> 6.1934+-0.0095 ! 6.2315+-0.0103 ^ 6.2023+-0.0099 ! 6.2284+-0.0102 6.2179+-0.0123 ! definitely 1.0040x slower
<harmonic> 4.8516+-0.0163 ? 4.8712+-0.0168 4.8550+-0.0156 ? 4.8760+-0.0158 4.8648+-0.0141 ? might be 1.0027x slower
TipOfTree32 Control EagerCell32 EagerInt32 EagerIntCell32 EagerIntCell32 v. TipOfTree32
V8:
crypto 101.0272+-0.2761 ! 105.0094+-0.2167 ^ 102.1054+-0.4952 101.5313+-0.4064 ^ 100.1380+-0.4140 ^ definitely 1.0089x faster
deltablue 187.5219+-1.1094 ^ 184.9778+-0.8675 184.4864+-0.6554 ? 185.1880+-0.9789 184.2742+-0.4935 ^ definitely 1.0176x faster
earley-boyer 118.6930+-1.2973 ? 119.5264+-1.4073 117.7628+-1.3218 ? 119.5376+-1.0991 118.0537+-0.9098
raytrace 57.5928+-0.4654 ^ 56.3210+-0.2511 ? 56.7580+-0.4715 ? 57.1588+-0.5672 57.0066+-0.2280 might be 1.0103x faster
regexp 128.1274+-0.3222 128.0019+-0.5115 ? 128.2721+-0.2462 ? 128.5260+-0.6347 128.2228+-0.5384 ?
richards 199.1724+-0.7754 ^ 195.8476+-1.0114 ^ 190.0187+-0.3232 ! 196.7275+-0.6336 ^ 188.2355+-0.4251 ^ definitely 1.0581x faster
splay 97.9270+-1.1804 ? 98.7235+-1.0880 97.4831+-0.9426 ? 98.5006+-1.5933 96.9366+-1.2830 might be 1.0102x faster
<arithmetic> 127.1517+-0.3586 126.9154+-0.3545 ^ 125.2695+-0.3197 ! 126.7386+-0.2765 ^ 124.6953+-0.2346 ^ definitely 1.0197x faster
<geometric> * 118.2612+-0.3635 118.2608+-0.2901 ^ 116.9411+-0.3301 ! 118.0658+-0.3419 ^ 116.4544+-0.2509 ^ definitely 1.0155x faster
<harmonic> 109.2657+-0.3707 109.1960+-0.2281 ^ 108.2790+-0.3578 ! 109.1428+-0.4214 ^ 107.9267+-0.2512 ^ definitely 1.0124x faster
TipOfTree32 Control EagerCell32 EagerInt32 EagerIntCell32 EagerIntCell32 v. TipOfTree32
Kraken:
ai-astar 880.6148+-12.7972 ! 906.1368+-11.7692 896.0156+-13.7086 ? 905.4757+-11.8226 904.3783+-11.1674 ? might be 1.0270x slower
audio-beat-detection 362.9308+-1.6441 ! 372.2457+-0.6992 ^ 367.7247+-1.0041 ? 370.1424+-1.8943 367.6248+-0.9356 ! definitely 1.0129x slower
audio-dft 362.4437+-2.1194 ! 379.0759+-4.5236 ? 384.9385+-13.9151 373.4678+-2.4270 373.3610+-2.0426 ! definitely 1.0301x slower
audio-fft 221.4656+-2.2163 ! 230.2507+-1.3926 228.5942+-1.0521 ? 229.4650+-0.8347 228.8017+-1.4886 ! definitely 1.0331x slower
audio-oscillator 442.5004+-2.9541 ? 444.0440+-2.1604 ? 446.9143+-1.2731 ? 448.2512+-0.3485 ^ 444.3639+-1.3877 ?
imaging-darkroom 390.6533+-3.9529 ? 392.0656+-4.5620 ? 394.7572+-6.0405 392.7188+-4.4128 ? 394.1471+-5.5175 ?
imaging-desaturate 297.3018+-0.1087 ^ 294.8100+-0.2863 ? 294.8254+-0.3140 294.4904+-0.1848 ? 294.5375+-0.0923 ^ definitely 1.0094x faster
imaging-gaussian-blur 707.3692+-1.1520 ! 710.4705+-0.2606 ^ 679.8328+-0.2574 ^ 675.6540+-2.1083 ^ 634.5286+-0.2616 ^ definitely 1.1148x faster
json-parse-financial 72.9227+-0.1522 ! 73.7200+-0.2984 ^ 73.0223+-0.1088 ! 73.4573+-0.1337 ^ 72.9119+-0.1311
json-stringify-tinderbox 105.5578+-0.2330 ^ 104.7458+-0.3328 ? 105.1568+-0.4491 ! 105.9152+-0.2104 ^ 104.7347+-0.2667 ^ definitely 1.0079x faster
stanford-crypto-aes 140.8352+-0.7852 ! 142.7918+-0.6504 ^ 141.5115+-0.3832 141.4848+-0.3071 ^ 136.1049+-0.4451 ^ definitely 1.0348x faster
stanford-crypto-ccm 129.3894+-0.9540 ? 129.4925+-0.7512 ? 130.0417+-0.8278 129.0663+-0.5714 128.5332+-0.7245
stanford-crypto-pbkdf2 258.6867+-0.7849 ! 262.3942+-0.9063 261.9568+-0.9735 260.4793+-1.8295 ? 262.3711+-0.9862 ! definitely 1.0142x slower
stanford-crypto-sha256-iterative 109.3257+-0.2923 ^ 108.8398+-0.1794 ? 108.9560+-0.1795 ^ 108.1522+-0.2095 ! 108.7162+-0.0966 ^ definitely 1.0056x faster
<arithmetic> * 320.1426+-1.0226 ! 325.0774+-1.1517 322.4463+-1.8152 322.0158+-0.9001 ^ 318.2225+-0.9515 might be 1.0060x faster
<geometric> 249.8654+-0.5249 ! 252.8872+-0.6022 251.8366+-0.9787 251.3837+-0.3926 ^ 249.0942+-0.4430 might be 1.0031x faster
<harmonic> 195.0001+-0.3482 ! 196.5926+-0.3823 196.0585+-0.4740 195.9323+-0.2409 ^ 194.3454+-0.2685 ^ definitely 1.0034x faster
TipOfTree32 Control EagerCell32 EagerInt32 EagerIntCell32 EagerIntCell32 v. TipOfTree32
All benchmarks:
<arithmetic> 118.4966+-0.3424 ! 119.9653+-0.3838 ^ 118.9116+-0.5723 ? 119.0196+-0.2897 ^ 117.5731+-0.2869 ^ definitely 1.0079x faster
<geometric> 28.9081+-0.0486 ! 29.1105+-0.0486 ^ 28.9505+-0.0621 ? 29.0437+-0.0437 ^ 28.8784+-0.0452 might be 1.0010x faster
<harmonic> 8.5534+-0.0283 ? 8.5880+-0.0292 8.5589+-0.0272 ? 8.5957+-0.0275 8.5744+-0.0244 ? might be 1.0025x slower
TipOfTree32 Control EagerCell32 EagerInt32 EagerIntCell32 EagerIntCell32 v. TipOfTree32
Geomean of preferred means:
<scaled-result> 65.9831+-0.1332 ! 66.4985+-0.1266 ^ 65.9412+-0.1824 ? 66.2139+-0.1081 ^ 65.5878+-0.1008 ^ definitely 1.0060x faster
Running locally...
940/940
Generating benchmark report at TipOfTree32_Control_EagerCell32_EagerInt32_EagerIntCell32_SunSpiderV8Kraken_nitroflex_20111218_2355_benchReport.txt
Benchmark report for SunSpider, V8, and Kraken on nitroflex (MacBookPro8,2).
VMs tested:
"TipOfTree32" at /Volumes/Data/pizlo/quinary/OpenSource/WebKitBuild/Release/jsc (r103205)
"Control" at /Volumes/Data/pizlo/quartary/OpenSource/Control/Release/jsc
"EagerCell32" at /Volumes/Data/pizlo/quartary/OpenSource/JustCell/Release/jsc
"EagerInt32" at /Volumes/Data/pizlo/quartary/OpenSource/JustInt32/Release/jsc
"EagerIntCell32" at /Volumes/Data/pizlo/quartary/OpenSource/BothIntAndCell/Release/jsc
Collected 12 samples per benchmark/VM, with 4 VM invocations per benchmark. Emitted a call to gc() between sample measurements. 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.
TipOfTree32 Control EagerCell32 EagerInt32 EagerIntCell32 EagerIntCell32 v. TipOfTree32
SunSpider:
3d-cube 6.4104+-0.1231 6.3505+-0.1075 ? 6.4139+-0.1256 ! 7.0205+-0.2079 ? 7.0465+-0.1567 ! definitely 1.0992x slower
3d-morph 10.4546+-0.1152 ? 10.4982+-0.1202 10.3417+-0.1172 10.3279+-0.1231 ? 10.5007+-0.1892 ?
3d-raytrace 9.0360+-0.1643 ? 9.2728+-0.1127 9.1758+-0.1889 ? 9.3233+-0.1397 9.2467+-0.1695 ? might be 1.0233x slower
access-binary-trees 1.7591+-0.0429 1.7584+-0.0594 ? 1.8367+-0.0662 1.8035+-0.0626 1.7511+-0.0688
access-fannkuch 7.9441+-0.1221 7.9358+-0.1260 ? 8.0134+-0.2004 ^ 7.2167+-0.1640 7.2123+-0.0879 ^ definitely 1.1015x faster
access-nbody 5.1472+-0.0824 5.1218+-0.0692 ? 5.1638+-0.1247 ? 5.1928+-0.1411 5.1364+-0.1069
access-nsieve 2.6321+-0.1027 2.5682+-0.0285 ? 2.5991+-0.0545 2.5962+-0.0562 2.5394+-0.0579 might be 1.0365x faster
bitops-3bit-bits-in-byte 1.2495+-0.0252 1.2477+-0.0181 1.2257+-0.0113 ? 1.2360+-0.0227 ? 1.2598+-0.0184 ?
bitops-bits-in-byte 2.5014+-0.0579 2.4583+-0.0427 2.4352+-0.0459 ? 2.4598+-0.0674 ? 2.4795+-0.0384
bitops-bitwise-and 2.9107+-0.1010 2.9073+-0.1379 2.8634+-0.1073 2.8327+-0.0467 ? 2.8426+-0.0634 might be 1.0240x faster
bitops-nsieve-bits 6.2201+-0.1208 6.2187+-0.0899 6.1906+-0.0908 ? 6.2118+-0.1077 ? 6.2192+-0.0934
controlflow-recursive 2.5673+-0.0767 2.4950+-0.0208 ? 2.5600+-0.0610 2.5389+-0.0723 2.5123+-0.0505 might be 1.0219x faster
crypto-aes 9.1697+-0.1886 ? 9.4295+-0.2061 ? 9.5290+-0.2423 9.3429+-0.1416 9.2343+-0.1390 ?
crypto-md5 3.0401+-0.0476 ? 3.0584+-0.0800 2.9920+-0.0314 ? 3.0592+-0.0749 ? 3.0932+-0.0606 ? might be 1.0175x slower
crypto-sha1 2.6255+-0.0640 ? 2.6269+-0.0628 ? 2.6511+-0.0674 2.6098+-0.0576 ? 2.6545+-0.0639 ? might be 1.0110x slower
date-format-tofte 10.5346+-0.1895 ? 10.7255+-0.2408 10.3967+-0.2209 ? 10.4906+-0.2061 10.3866+-0.1450 might be 1.0143x faster
date-format-xparb 10.3493+-0.1865 ? 10.6695+-0.1691 10.4856+-0.1663 ? 10.6404+-0.1677 10.6214+-0.1396 ? might be 1.0263x slower
math-cordic 8.0954+-0.1329 ? 8.2461+-0.1455 8.2011+-0.1725 ? 8.2306+-0.1457 8.1095+-0.1297 ?
math-partial-sums 9.6747+-0.0885 9.6096+-0.1299 ? 9.6969+-0.0992 9.5852+-0.1190 ? 9.6806+-0.1586 ?
math-spectral-norm 2.4490+-0.0484 2.4450+-0.0529 ? 2.4867+-0.0569 2.4298+-0.0400 ? 2.4770+-0.0656 ? might be 1.0114x slower
regexp-dna 7.8521+-0.1199 7.8351+-0.1262 7.7878+-0.1509 ? 7.8017+-0.1561 7.7988+-0.1381
string-base64 4.6926+-0.1060 4.6310+-0.1113 4.5592+-0.0739 ? 4.6468+-0.0778 4.5966+-0.0772 might be 1.0209x faster
string-fasta 7.8367+-0.0985 7.8007+-0.1785 ? 7.8164+-0.1366 7.7325+-0.1282 ? 7.8640+-0.0933 ?
string-tagcloud 12.1545+-0.1240 12.0978+-0.1512 ? 12.1237+-0.2274 ? 12.1465+-0.2067 ? 12.2816+-0.1880 ? might be 1.0105x slower
string-unpack-code 20.1048+-0.2687 20.0421+-0.3187 ? 20.1430+-0.3510 ? 20.4882+-0.3264 20.0934+-0.2572
string-validate-input 5.9741+-0.0719 ? 6.0267+-0.1616 ? 6.0685+-0.1120 5.9897+-0.1002 5.9735+-0.1277
<arithmetic> * 6.6687+-0.0240 ? 6.6953+-0.0199 6.6830+-0.0250 ? 6.6905+-0.0307 6.6774+-0.0232 ? might be 1.0013x slower
<geometric> 5.3923+-0.0196 ? 5.3953+-0.0187 ? 5.3954+-0.0232 5.3923+-0.0248 5.3891+-0.0197 might be 1.0006x faster
<harmonic> 4.2312+-0.0196 4.2169+-0.0126 ? 4.2268+-0.0222 4.2196+-0.0272 ? 4.2222+-0.0203 might be 1.0021x faster
TipOfTree32 Control EagerCell32 EagerInt32 EagerIntCell32 EagerIntCell32 v. TipOfTree32
V8:
crypto 93.4784+-0.5292 ! 94.6049+-0.3459 94.4066+-0.4868 ? 94.5687+-0.5358 ? 94.9714+-0.7257 ! definitely 1.0160x slower
deltablue 155.2772+-1.5120 ^ 152.2730+-1.2905 152.1816+-1.2467 ? 153.5283+-0.7856 152.0033+-0.7937 ^ definitely 1.0215x faster
earley-boyer 93.9103+-1.2120 93.5373+-1.0239 ? 93.8629+-1.2893 ? 94.5170+-1.2174 94.2256+-0.8840 ?
raytrace 51.1711+-0.6247 ^ 50.2942+-0.2340 ? 50.5278+-0.6070 ? 50.6960+-0.3244 50.6255+-0.1931 might be 1.0108x faster
regexp 111.1767+-0.5652 ^ 109.1298+-0.8509 ? 109.3605+-0.6692 108.6833+-0.3919 ? 108.7188+-0.3962 ^ definitely 1.0226x faster
richards 165.9538+-0.8707 ! 173.3490+-1.2449 ^ 158.3445+-0.8386 ! 172.8805+-4.7030 ^ 160.1457+-0.5755 ^ definitely 1.0363x faster
splay 81.0846+-0.9747 79.8193+-0.8028 79.2714+-1.1735 ? 79.8967+-1.3258 ? 80.0909+-1.0824 might be 1.0124x faster
<arithmetic> 107.4360+-0.4372 ? 107.5725+-0.3611 ^ 105.4222+-0.4171 ! 107.8244+-0.5633 ^ 105.8259+-0.2164 ^ definitely 1.0152x faster
<geometric> * 100.6017+-0.4039 100.3236+-0.2699 ^ 99.0404+-0.4365 ! 100.6028+-0.3806 ^ 99.4166+-0.2359 ^ definitely 1.0119x faster
<harmonic> 93.7125+-0.3870 ^ 93.1087+-0.2108 92.4729+-0.4938 ! 93.4360+-0.3178 ^ 92.8245+-0.2492 ^ definitely 1.0096x faster
TipOfTree32 Control EagerCell32 EagerInt32 EagerIntCell32 EagerIntCell32 v. TipOfTree32
Kraken:
ai-astar 518.0430+-1.6608 ! 525.3043+-3.8011 520.8354+-3.4209 ! 530.7008+-4.1921 ^ 522.2562+-2.4223 ! definitely 1.0081x slower
audio-beat-detection 334.1178+-5.5589 333.8456+-2.6174 333.4571+-2.6114 ? 338.4258+-4.6768 333.7522+-3.0316
audio-dft 365.3155+-1.9669 ! 374.4020+-3.0752 370.4879+-2.4048 ? 371.7341+-2.3167 ? 375.3137+-2.8792 ! definitely 1.0274x slower
audio-fft 206.1603+-1.5394 205.7070+-1.5650 ? 206.7274+-1.2944 205.3574+-1.3025 204.3784+-1.3446
audio-oscillator 407.5070+-1.7803 ? 408.9469+-4.2851 405.8613+-1.5724 ! 411.3578+-2.7442 410.6352+-2.5634 ?
imaging-darkroom 363.4132+-5.2929 ? 363.6127+-4.5668 362.4976+-3.8439 ? 365.6954+-4.6131 364.1873+-3.9078 ?
imaging-desaturate 260.7421+-1.0246 ^ 256.1613+-1.8201 ? 259.5290+-2.2835 255.8173+-2.0404 ? 256.3989+-2.1410 ^ definitely 1.0169x faster
imaging-gaussian-blur 588.7003+-1.8735 585.2959+-1.9524 ^ 560.6856+-1.1483 559.4814+-2.1562 ^ 533.7549+-1.7441 ^ definitely 1.1029x faster
json-parse-financial 59.6896+-0.3448 ? 60.1442+-0.2728 ! 61.2234+-0.6037 ^ 59.9599+-0.3160 ! 60.6702+-0.2189 ! definitely 1.0164x slower
json-stringify-tinderbox 93.6116+-0.2471 ^ 90.5894+-0.5698 ? 91.3488+-0.3312 ! 95.3006+-2.7878 ^ 91.0553+-0.6099 ^ definitely 1.0281x faster
stanford-crypto-aes 110.7881+-0.4250 ! 113.3372+-0.7748 112.0772+-1.0780 ? 112.7255+-1.7426 ^ 108.8021+-1.1810 ^ definitely 1.0183x faster
stanford-crypto-ccm 111.0401+-0.3233 110.4078+-0.6527 ? 110.8787+-0.7203 ? 111.4420+-0.6344 110.5722+-0.4726
stanford-crypto-pbkdf2 214.4449+-0.3849 ! 219.0484+-1.3740 217.6288+-1.2296 217.5273+-1.0197 ? 218.8864+-0.7426 ! definitely 1.0207x slower
stanford-crypto-sha256-iterative 96.2111+-0.3085 ? 96.6007+-0.4667 ? 97.1668+-0.3190 ^ 96.0681+-0.3242 ! 97.0534+-0.1120 ! definitely 1.0088x slower
<arithmetic> * 266.4132+-0.8696 ? 267.3860+-0.5639 ^ 265.0289+-0.5662 ! 266.5424+-0.4590 ^ 263.4083+-0.4058 ^ definitely 1.0114x faster
<geometric> 213.9095+-0.5590 ? 214.4145+-0.4849 213.8460+-0.4593 ? 214.6923+-0.7122 ^ 212.6270+-0.2331 ^ definitely 1.0060x faster
<harmonic> 167.1017+-0.3194 ? 167.2466+-0.4952 ? 167.8027+-0.4964 ? 168.0507+-0.8484 ^ 166.6620+-0.2237 might be 1.0026x faster
TipOfTree32 Control EagerCell32 EagerInt32 EagerIntCell32 EagerIntCell32 v. TipOfTree32
All benchmarks:
<arithmetic> 99.0473+-0.2774 ? 99.3721+-0.1788 ^ 98.3429+-0.1920 ! 99.1557+-0.2024 ^ 97.9172+-0.1320 ^ definitely 1.0115x faster
<geometric> 24.9564+-0.0582 ? 24.9712+-0.0452 24.9038+-0.0530 ? 24.9834+-0.0851 24.8596+-0.0476 might be 1.0039x faster
<harmonic> 7.4563+-0.0336 7.4313+-0.0216 ? 7.4480+-0.0382 7.4367+-0.0471 ? 7.4398+-0.0348 might be 1.0022x faster
TipOfTree32 Control EagerCell32 EagerInt32 EagerIntCell32 EagerIntCell32 v. TipOfTree32
Geomean of preferred means:
<scaled-result> 56.3287+-0.1336 ? 56.4201+-0.0618 ^ 55.9784+-0.0960 ! 56.3996+-0.1410 ^ 55.9194+-0.0935 ^ definitely 1.0073x faster
[pizlo at nitroflex bencher]
--
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