Summary: | ArrayMode should not consider SpecOther when refining the base | ||||||
---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Filip Pizlo <fpizlo> | ||||
Component: | New Bugs | Assignee: | Filip Pizlo <fpizlo> | ||||
Status: | RESOLVED FIXED | ||||||
Severity: | Normal | CC: | barraclough, ggaren, mark.lam, mhahnenberg, msaboff, oliver, sam | ||||
Priority: | P2 | ||||||
Version: | 528+ (Nightly build) | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
Attachments: |
|
Description
Filip Pizlo
2013-03-25 20:49:23 PDT
Created attachment 194993 [details]
Patch
Benchmark report for SunSpider, V8Spider, Octane, Kraken, JSBench, JSRegress, and DSP on bigmac (MacPro5,1). VMs tested: "TipOfTree" at /Volumes/Data/pizlo/quartary/OpenSource/WebKitBuild/Release/DumpRenderTree (r146839) "FixPDFJS" at /Volumes/Data/pizlo/secondary/OpenSource/WebKitBuild/Release/DumpRenderTree (r146839) 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. TipOfTree FixPDFJS SunSpider: 3d-cube 8.7194+-0.3575 ? 8.8874+-0.2837 ? might be 1.0193x slower 3d-morph 7.4164+-0.0478 ? 7.4720+-0.0927 ? 3d-raytrace 9.8599+-0.1406 9.6505+-0.2125 might be 1.0217x faster access-binary-trees 2.3283+-0.3028 ? 2.3369+-0.3059 ? access-fannkuch 6.5809+-0.0975 6.5529+-0.1005 access-nbody 3.9343+-0.0483 ? 3.9426+-0.0461 ? access-nsieve 4.2715+-0.0477 4.2528+-0.0545 bitops-3bit-bits-in-byte 1.5277+-0.0196 ? 1.5428+-0.0389 ? bitops-bits-in-byte 5.6538+-0.0813 ? 5.6635+-0.0635 ? bitops-bitwise-and 2.0374+-0.0662 1.9969+-0.0671 might be 1.0203x faster bitops-nsieve-bits 3.3884+-0.0145 ? 3.3922+-0.0275 ? controlflow-recursive 2.4795+-0.0153 ? 2.4908+-0.0237 ? crypto-aes 7.3617+-0.2518 7.3141+-0.3328 crypto-md5 3.5604+-0.0954 ? 3.6578+-0.0377 ? might be 1.0273x slower crypto-sha1 2.9003+-0.0520 ? 2.9123+-0.0617 ? date-format-tofte 13.9137+-0.9540 ? 13.9761+-0.9728 ? date-format-xparb 8.9933+-0.7037 8.9142+-0.6806 math-cordic 3.3070+-0.0120 ? 3.3086+-0.0097 ? math-partial-sums 10.0694+-0.0419 ? 10.0811+-0.0761 ? math-spectral-norm 2.6570+-0.0210 ? 2.6593+-0.0213 ? regexp-dna 10.1167+-0.5000 10.0623+-0.4892 string-base64 4.7820+-0.4982 ? 4.8053+-0.5017 ? string-fasta 9.7680+-0.2485 ? 9.7691+-0.2166 ? string-tagcloud 12.1651+-0.1932 ? 12.1922+-0.2831 ? string-unpack-code 24.7303+-0.5499 ? 24.7866+-0.5419 ? string-validate-input 8.1376+-0.2907 ? 8.1864+-0.3023 ? <arithmetic> * 6.9485+-0.1546 ? 6.9541+-0.1614 ? might be 1.0008x slower <geometric> 5.5506+-0.1029 ? 5.5575+-0.1087 ? might be 1.0012x slower <harmonic> 4.4464+-0.0758 ? 4.4533+-0.0783 ? might be 1.0016x slower TipOfTree FixPDFJS V8Spider: crypto 76.1680+-0.5052 ? 76.2082+-0.6691 ? deltablue 106.4972+-1.3668 105.6677+-0.8049 earley-boyer 71.2198+-0.6612 ? 71.2512+-0.6157 ? raytrace 52.5987+-2.9965 ? 53.7477+-3.9989 ? might be 1.0218x slower regexp 84.3395+-0.3456 84.1934+-0.3265 richards 100.0107+-1.3305 ? 100.4569+-1.3734 ? splay 52.5728+-2.9462 52.2853+-2.8278 <arithmetic> 77.6295+-0.7323 ? 77.6872+-0.7247 ? might be 1.0007x slower <geometric> * 75.0365+-0.9023 ? 75.1426+-0.9082 ? might be 1.0014x slower <harmonic> 72.4242+-1.0918 ? 72.5671+-1.1070 ? might be 1.0020x slower TipOfTree FixPDFJS Octane and V8v7: encrypt 0.40868+-0.00104 0.40837+-0.00087 decrypt 7.39159+-0.00719 ? 7.39634+-0.00836 ? deltablue x2 0.50211+-0.00464 ? 0.50268+-0.00469 ? earley 0.76299+-0.00288 ? 0.76860+-0.00679 ? boyer 10.81890+-0.05963 10.80231+-0.04423 raytrace x2 3.97296+-0.19891 3.87047+-0.05230 might be 1.0265x faster regexp x2 26.30124+-0.07741 26.21866+-0.06653 richards x2 0.25943+-0.00262 ? 0.25985+-0.00232 ? splay x2 0.54754+-0.00464 0.53843+-0.00628 might be 1.0169x faster navier-stokes x2 9.04265+-0.00340 ! 9.05758+-0.01075 ! definitely 1.0017x slower closure 0.25955+-0.03336 0.25917+-0.03338 jquery 3.72593+-0.43696 ? 3.73176+-0.44174 ? gbemu x2 119.18939+-2.47291 ? 122.50912+-7.36538 ? might be 1.0279x slower mandreel x2 153.73848+-0.61717 153.36068+-0.25925 pdfjs x2 102.54267+-0.29018 ^ 94.14020+-0.33854 ^ definitely 1.0893x faster box2d x2 30.96445+-0.21621 ? 30.97822+-0.19011 ? V8v7: <arithmetic> 6.28963+-0.02756 6.26693+-0.01248 might be 1.0036x faster <geometric> * 2.06890+-0.01159 2.05940+-0.00552 might be 1.0046x faster <harmonic> 0.79462+-0.00384 0.79272+-0.00448 might be 1.0024x faster Octane including V8v7: <arithmetic> 35.28806+-0.19669 34.85532+-0.58577 might be 1.0124x faster <geometric> * 6.17271+-0.04911 6.12560+-0.06047 might be 1.0077x faster <harmonic> 1.06127+-0.02157 1.05896+-0.02260 might be 1.0022x faster TipOfTree FixPDFJS Kraken: ai-astar 429.292+-4.671 ? 431.855+-4.843 ? audio-beat-detection 209.685+-1.528 ? 210.569+-2.615 ? audio-dft 261.268+-2.803 259.151+-1.862 audio-fft 121.743+-0.145 121.666+-0.273 audio-oscillator 211.771+-0.450 ? 211.887+-0.425 ? imaging-darkroom 243.373+-0.498 243.234+-0.450 imaging-desaturate 133.507+-0.108 133.493+-0.097 imaging-gaussian-blur 414.395+-0.154 ? 414.732+-0.354 ? json-parse-financial 66.553+-0.298 ? 66.639+-0.304 ? json-stringify-tinderbox 83.622+-0.435 ! 85.085+-0.751 ! definitely 1.0175x slower stanford-crypto-aes 99.934+-0.485 ? 99.956+-0.520 ? stanford-crypto-ccm 97.122+-0.598 ? 97.549+-0.368 ? stanford-crypto-pbkdf2 228.250+-1.131 ? 228.404+-1.568 ? stanford-crypto-sha256-iterative 103.481+-0.224 ! 104.762+-0.360 ! definitely 1.0124x slower <arithmetic> * 193.143+-0.335 ? 193.499+-0.309 ? might be 1.0018x slower <geometric> 164.261+-0.192 ! 164.710+-0.144 ! definitely 1.0027x slower <harmonic> 141.113+-0.141 ! 141.670+-0.159 ! definitely 1.0040x slower TipOfTree FixPDFJS JSBench: amazon 7.3333+-0.3128 7.2500+-0.2874 might be 1.0115x faster facebook 33.6667+-1.7206 ? 33.7500+-1.6728 ? google 67.2500+-1.7791 ? 67.5000+-1.3947 ? twitter 8.9167+-0.4248 8.6667+-0.4138 might be 1.0288x faster yahoo 3.0000+-0.2709 ? 3.1667+-0.2473 ? might be 1.0556x slower <arithmetic> * 24.0333+-0.7583 ? 24.0667+-0.6350 ? might be 1.0014x slower <geometric> 13.4439+-0.4665 ? 13.4981+-0.2645 ? might be 1.0040x slower <harmonic> 7.9392+-0.4473 ? 8.1007+-0.2442 ? might be 1.0203x slower TipOfTree FixPDFJS JSRegress: adapt-to-double-divide 18.5204+-0.0168 ? 18.5287+-0.0363 ? aliased-arguments-getbyval 0.8153+-0.0222 0.7888+-0.0050 might be 1.0337x faster allocate-big-object 3.5310+-1.2165 3.5291+-1.2191 arity-mismatch-inlining 0.6692+-0.0097 0.6671+-0.0062 array-access-polymorphic-structure 7.9431+-1.8747 7.3183+-1.7233 might be 1.0854x faster array-with-double-add 4.7721+-0.0167 ? 4.7722+-0.0223 ? array-with-double-increment 3.2486+-0.0130 ? 3.2571+-0.0213 ? array-with-double-mul-add 6.5212+-0.0285 ? 6.5498+-0.0318 ? array-with-double-sum 6.4172+-0.0123 ? 6.4335+-0.0193 ? array-with-int32-add-sub 8.6201+-0.0209 ? 8.6277+-0.0372 ? array-with-int32-or-double-sum 6.5048+-0.0311 6.4908+-0.0185 big-int-mul 4.0345+-0.0258 4.0172+-0.0161 boolean-test 3.5094+-0.0056 ? 3.5268+-0.0280 ? cast-int-to-double 11.4153+-0.0698 ? 11.4330+-0.0797 ? cell-argument 11.8531+-0.0188 ? 11.8794+-0.0249 ? cfg-simplify 3.1780+-0.0389 ? 3.1842+-0.0440 ? cmpeq-obj-to-obj-other 9.1757+-0.1251 9.1203+-0.1858 constant-test 6.9631+-0.0857 ? 7.0326+-0.1066 ? direct-arguments-getbyval 0.7340+-0.0090 0.7259+-0.0050 might be 1.0112x faster double-pollution-getbyval 8.7963+-0.0177 ? 8.7999+-0.0227 ? double-pollution-putbyoffset 4.7517+-0.5654 4.7274+-0.5536 empty-string-plus-int 11.3521+-0.5940 ? 11.3941+-0.5515 ? external-arguments-getbyval 2.2129+-0.2233 2.1815+-0.1992 might be 1.0144x faster external-arguments-putbyval 3.4495+-0.3138 3.2642+-0.3082 might be 1.0568x faster Float32Array-matrix-mult 12.9437+-0.6502 12.7853+-0.6657 might be 1.0124x faster fold-double-to-int 18.1231+-0.2419 ? 18.4805+-0.2804 ? might be 1.0197x slower function-dot-apply 2.6345+-0.0452 2.6177+-0.0295 function-test 4.0306+-0.0582 ? 4.0400+-0.0345 ? get-by-id-chain-from-try-block 6.1169+-0.0391 ? 6.1287+-0.0438 ? HashMap-put-get-iterate-keys 72.3190+-1.0572 71.3242+-0.6887 might be 1.0139x faster HashMap-put-get-iterate 74.4138+-0.7485 ? 74.9425+-1.2883 ? HashMap-string-put-get-iterate 66.1745+-0.8176 66.1181+-0.7792 indexed-properties-in-objects 3.6581+-0.0127 ! 3.7523+-0.0812 ! definitely 1.0257x slower inline-arguments-access 1.0788+-0.0149 1.0769+-0.0185 inline-arguments-local-escape 21.0843+-0.1093 ? 21.2298+-0.1564 ? inline-get-scoped-var 5.3112+-0.0177 5.3108+-0.0158 inlined-put-by-id-transition 13.6362+-0.2522 ? 13.8790+-0.2708 ? might be 1.0178x slower int-or-other-abs-then-get-by-val 7.2621+-0.0212 7.2599+-0.0191 int-or-other-abs-zero-then-get-by-val 30.2386+-0.1080 30.1170+-0.0311 int-or-other-add-then-get-by-val 8.4369+-0.0170 8.4241+-0.0166 int-or-other-add 8.6735+-0.0444 ? 8.6980+-0.0489 ? int-or-other-div-then-get-by-val 6.5853+-0.0228 6.5783+-0.0161 int-or-other-max-then-get-by-val 8.0964+-0.2039 ? 8.2359+-0.1530 ? might be 1.0172x slower int-or-other-min-then-get-by-val 6.7410+-0.0147 ? 6.7483+-0.0196 ? int-or-other-mod-then-get-by-val 6.5410+-0.0208 ? 6.5477+-0.0227 ? int-or-other-mul-then-get-by-val 5.9168+-0.0483 5.8992+-0.0099 int-or-other-neg-then-get-by-val 6.5566+-0.0331 ? 6.5685+-0.0350 ? int-or-other-neg-zero-then-get-by-val 30.1852+-0.0751 ? 30.2878+-0.1462 ? int-or-other-sub-then-get-by-val 8.4229+-0.0110 8.4192+-0.0118 int-or-other-sub 6.7348+-0.0170 ? 6.7411+-0.0253 ? int-overflow-local 10.6644+-0.0492 ? 10.6803+-0.0836 ? Int16Array-bubble-sort 62.8989+-0.2979 ? 63.4903+-1.4327 ? Int16Array-load-int-mul 1.5773+-0.0120 1.5620+-0.0092 Int8Array-load 4.4679+-0.0163 ? 4.5739+-0.1408 ? might be 1.0237x slower integer-divide 12.6267+-0.0223 ? 12.6367+-0.0437 ? integer-modulo 1.8732+-0.0339 1.8505+-0.0397 might be 1.0123x faster make-indexed-storage 3.8242+-0.5907 3.8147+-0.5796 method-on-number 19.1875+-0.1662 ? 19.4506+-0.3449 ? might be 1.0137x slower nested-function-parsing-random 320.7347+-10.3321 ? 321.6923+-10.6408 ? nested-function-parsing 48.1467+-3.1472 48.0299+-3.0855 new-array-buffer-dead 3.0781+-0.1195 3.0519+-0.1077 new-array-buffer-push 13.0079+-2.1424 12.9491+-2.1205 new-array-dead 23.4230+-0.0887 23.3869+-0.0224 new-array-push 10.2324+-1.6076 ? 10.2486+-1.5882 ? number-test 3.4312+-0.0149 ? 3.4472+-0.0351 ? object-closure-call 7.2448+-0.1957 7.1923+-0.1863 object-test 3.9523+-0.0346 3.9220+-0.0224 poly-stricteq 76.2796+-0.9453 75.8803+-0.8300 polymorphic-structure 16.5586+-0.0302 16.5406+-0.0182 polyvariant-monomorphic-get-by-id 10.3056+-0.0207 10.3007+-0.0198 rare-osr-exit-on-local 16.9909+-0.0526 16.9561+-0.0231 register-pressure-from-osr 26.0511+-0.0320 26.0297+-0.0337 simple-activation-demo 28.7301+-0.2071 28.6893+-0.2426 slow-array-profile-convergence 3.9445+-0.2385 3.8212+-0.2398 might be 1.0323x faster slow-convergence 3.1784+-0.0260 3.1525+-0.0181 sparse-conditional 1.1085+-0.0115 ? 1.1098+-0.0085 ? splice-to-remove 41.4093+-0.1445 ? 41.4725+-0.1739 ? string-concat-object 4.2350+-1.3179 4.2094+-1.2839 string-concat-pair-object 4.1496+-1.2998 ? 4.1592+-1.3101 ? string-concat-pair-simple 16.7792+-0.5746 16.4557+-0.5411 might be 1.0197x faster string-concat-simple 16.6203+-0.6322 ? 16.7352+-0.5003 ? string-cons-repeat 12.4288+-0.8740 12.2673+-0.9033 might be 1.0132x faster string-cons-tower 30.9873+-18.1893 ? 31.2065+-18.4091 ? string-hash 2.1684+-0.0088 2.1635+-0.0056 string-repeat-arith 36.6808+-0.1369 ? 36.8630+-0.3285 ? string-sub 73.3139+-0.6608 ? 74.3692+-1.1511 ? might be 1.0144x slower string-test 3.4066+-0.0063 ! 3.4747+-0.0552 ! definitely 1.0200x slower structure-hoist-over-transitions 3.3830+-0.5666 3.3552+-0.5668 tear-off-arguments-simple 1.4930+-0.0164 ? 1.5074+-0.0129 ? tear-off-arguments 2.7539+-0.0200 2.7523+-0.0211 temporal-structure 17.4343+-0.2897 17.2733+-0.0168 to-int32-boolean 25.3490+-0.0584 ? 25.3621+-0.0467 ? undefined-test 3.6365+-0.0222 3.6320+-0.0154 <arithmetic> 17.4264+-0.3179 ? 17.4428+-0.3919 ? might be 1.0009x slower <geometric> * 8.1077+-0.1529 8.0957+-0.1847 might be 1.0015x faster <harmonic> 4.5224+-0.0667 4.5018+-0.0750 might be 1.0046x faster TipOfTree FixPDFJS DSP: filtrr-posterize-tint 45.1065+-0.9541 ? 45.4209+-1.0588 ? filtrr-tint-contrast-sat-bright 63.9202+-1.9926 62.7818+-0.8695 might be 1.0181x faster filtrr-tint-sat-adj-contr-mult 76.1076+-3.2170 74.8845+-2.0003 might be 1.0163x faster filtrr-blur-overlay-sat-contr 186.2033+-4.6743 ? 193.7603+-5.8286 ? might be 1.0406x slower filtrr-sat-blur-mult-sharpen-contr 231.7124+-4.8430 231.4832+-4.8585 filtrr-sepia-bias 32.5811+-1.8318 ? 32.9171+-1.8993 ? might be 1.0103x slower route9-vp8 x5 1022.2841+-28.9369 ? 1041.8310+-7.7569 ? might be 1.0191x slower starfield x5 1134.1074+-4.0901 ? 1136.3058+-3.6932 ? zynaps-quake3 x5 1181.0264+-34.9056 ? 1198.0488+-24.2192 ? might be 1.0144x slower zynaps-mandelbrot x5 997.4647+-3.5204 976.7595+-17.7288 might be 1.0212x faster <arithmetic> 858.0786+-6.4312 ? 861.7682+-7.9796 ? might be 1.0043x slower <geometric> * 596.1279+-4.2484 ? 598.4000+-3.5062 ? might be 1.0038x slower <harmonic> 236.2162+-6.2263 ? 236.7055+-5.4410 ? might be 1.0021x slower TipOfTree FixPDFJS All benchmarks: <arithmetic> 144.1442+-0.8613 ? 144.6108+-1.0457 ? might be 1.0032x slower <geometric> 17.8066+-0.1941 17.7937+-0.2259 might be 1.0007x faster <harmonic> 3.7973+-0.0337 3.7882+-0.0360 might be 1.0024x faster TipOfTree FixPDFJS Geomean of preferred means: <scaled-result> 35.5723+-0.3075 ? 35.5735+-0.3155 ? might be 1.0000x slower Comment on attachment 194993 [details]
Patch
r=me
Landed in http://trac.webkit.org/changeset/146887 |