WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
154432
[JSC] Improve the instruction selection of Select
https://bugs.webkit.org/show_bug.cgi?id=154432
Summary
[JSC] Improve the instruction selection of Select
Benjamin Poulain
Reported
2016-02-18 19:09:49 PST
[JSC] Improve the instruction selection of Select
Attachments
Patch
(27.53 KB, patch)
2016-02-18 19:15 PST
,
Benjamin Poulain
no flags
Details
Formatted Diff
Diff
Perf results
(60.81 KB, text/plain)
2016-02-18 20:31 PST
,
Benjamin Poulain
no flags
Details
View All
Add attachment
proposed patch, testcase, etc.
Benjamin Poulain
Comment 1
2016-02-18 19:15:54 PST
Created
attachment 271722
[details]
Patch
Benjamin Poulain
Comment 2
2016-02-18 20:31:11 PST
Created
attachment 271726
[details]
Perf results Conf#1 Conf#2 SunSpider: 3d-cube 4.4360+-0.0598 ? 4.4409+-0.0707 ? 3d-morph 4.9461+-0.0227 ? 4.9517+-0.0285 ? 3d-raytrace 5.2599+-0.0638 5.2098+-0.0644 access-binary-trees 2.0591+-0.1544 2.0234+-0.0406 might be 1.0176x faster access-fannkuch 5.5180+-0.0530 ? 5.5263+-0.0434 ? access-nbody 2.4361+-0.0318 ? 2.4401+-0.0644 ? access-nsieve 3.0039+-0.0743 ? 3.0251+-0.0616 ? bitops-3bit-bits-in-byte 1.0510+-0.0069 ? 1.0595+-0.0174 ? bitops-bits-in-byte 2.9168+-0.0251 ? 2.9655+-0.0515 ? might be 1.0167x slower bitops-bitwise-and 1.8761+-0.0222 1.8583+-0.0136 bitops-nsieve-bits 2.7428+-0.0156 ? 2.7647+-0.0347 ? controlflow-recursive 2.2858+-0.0785 2.2851+-0.0713 crypto-aes 3.7519+-0.0599 3.7477+-0.0519 crypto-md5 2.3706+-0.0222 ? 2.4250+-0.0491 ? might be 1.0230x slower crypto-sha1 2.1907+-0.0378 ? 2.2275+-0.0506 ? might be 1.0168x slower date-format-tofte 6.2339+-0.0666 6.2041+-0.0490 date-format-xparb 4.2885+-0.0419 4.2699+-0.0390 math-cordic 2.7525+-0.0247 2.7250+-0.0148 might be 1.0101x faster math-partial-sums 4.5327+-0.0533 4.5322+-0.0718 math-spectral-norm 1.8576+-0.0316 1.8376+-0.0135 might be 1.0109x faster regexp-dna 5.8638+-0.0987 5.7455+-0.0684 might be 1.0206x faster string-base64 4.1319+-0.0630 4.0576+-0.0239 might be 1.0183x faster string-fasta 5.4857+-0.0444 ? 5.5048+-0.0517 ? string-tagcloud 7.6129+-0.0565 7.6030+-0.0618 string-unpack-code 16.9188+-0.1978 ? 17.0437+-0.2619 ? string-validate-input 4.0032+-0.0470 ? 4.0413+-0.0704 ? <arithmetic> 4.2510+-0.0139 4.2506+-0.0106 might be 1.0001x faster Conf#1 Conf#2 LongSpider: 3d-cube 774.0715+-3.2086 ? 775.9935+-6.7534 ? 3d-morph 566.6292+-0.2764 ? 566.9985+-0.8838 ? 3d-raytrace 596.9485+-5.2473 596.8118+-2.9748 access-binary-trees 896.2965+-3.2881 ? 902.1610+-6.2041 ? access-fannkuch 272.8734+-18.7757 246.0767+-11.8582 might be 1.1089x faster access-nbody 490.8175+-0.1177 ^ 490.2510+-0.0777 ^ definitely 1.0012x faster access-nsieve 470.9667+-1.0195 470.0502+-1.3722 bitops-3bit-bits-in-byte 31.7074+-0.0433 ? 31.7152+-0.0354 ? bitops-bits-in-byte 102.6728+-1.1882 101.8636+-1.0776 bitops-nsieve-bits 353.4107+-1.3973 353.4024+-1.3272 controlflow-recursive 434.6621+-1.4076 434.1856+-1.2467 crypto-aes 634.8440+-2.0643 ^ 628.6308+-3.8252 ^ definitely 1.0099x faster crypto-md5 557.5948+-3.7062 ? 558.9581+-3.8661 ? crypto-sha1 712.1460+-3.0141 ^ 703.7393+-2.9897 ^ definitely 1.0119x faster date-format-tofte 550.8316+-10.7138 545.4917+-7.2942 date-format-xparb 623.8839+-0.9601 621.2838+-2.2836 hash-map 150.6665+-0.3960 149.3396+-0.9850 math-cordic 453.4004+-4.8147 ? 455.5772+-5.4404 ? math-partial-sums 389.2124+-0.2610 ? 389.3830+-0.2271 ? math-spectral-norm 525.8647+-0.6303 525.6532+-0.2174 string-base64 370.2980+-2.9554 368.0991+-2.2718 string-fasta 337.5433+-2.4426 336.7912+-1.3929 string-tagcloud 167.7561+-0.6529 ? 168.6504+-2.2468 ? <geometric> 377.6109+-1.1789 ^ 375.2610+-0.8312 ^ definitely 1.0063x faster Conf#1 Conf#2 V8Spider: crypto 35.9086+-0.1684 ? 35.9649+-0.1311 ? deltablue 49.2300+-1.2962 48.5656+-0.6914 might be 1.0137x faster earley-boyer 38.8014+-0.3058 ? 38.9645+-0.1667 ? raytrace 19.7893+-0.1552 ? 19.9266+-0.1779 ? regexp 59.6268+-0.8314 59.4792+-0.8893 richards 39.0741+-0.5151 38.9582+-0.2243 splay 33.0862+-0.2236 32.9627+-0.2944 <geometric> 37.5130+-0.1827 37.4614+-0.1366 might be 1.0014x faster Conf#1 Conf#2 Octane: encrypt 0.14719+-0.00190 ? 0.14740+-0.00220 ? decrypt 2.63921+-0.00825 ? 2.64235+-0.00681 ? deltablue x2 0.13297+-0.00437 0.12942+-0.00082 might be 1.0274x faster earley 0.30162+-0.00333 0.30085+-0.00402 boyer 4.52145+-0.01952 4.50427+-0.01648 navier-stokes x2 4.66993+-0.00763 4.66398+-0.00520 raytrace x2 0.91453+-0.00375 ? 0.91556+-0.00297 ? richards x2 0.07753+-0.00101 0.07711+-0.00077 splay x2 0.39091+-0.00406 ? 0.39124+-0.00569 ? regexp x2 24.36154+-0.35409 ? 24.61188+-0.13974 ? might be 1.0103x slower pdfjs x2 37.43861+-0.15995 37.31097+-0.17971 mandreel x2 41.37513+-0.21663 ? 41.38920+-0.23316 ? gbemu x2 22.83475+-0.13783 22.72895+-0.11825 closure 0.53174+-0.00112 ? 0.53303+-0.00105 ? jquery 6.81585+-0.00895 ? 6.82967+-0.02008 ? box2d x2 8.63443+-0.05289 8.58582+-0.04081 zlib x2 379.53512+-8.35004 ? 381.70142+-4.05096 ? typescript x2 629.43975+-2.94287 ? 629.77180+-4.98118 ? <geometric> 5.11006+-0.00911 5.10084+-0.01150 might be 1.0018x faster Conf#1 Conf#2 Kraken: ai-astar 89.459+-1.686 ? 89.660+-1.674 ? audio-beat-detection 45.172+-0.126 44.883+-0.634 audio-dft 87.786+-0.342 87.601+-0.439 audio-fft 33.717+-0.050 33.711+-0.051 audio-oscillator 45.788+-0.325 45.575+-0.036 imaging-darkroom 57.020+-0.098 ? 57.127+-0.288 ? imaging-desaturate 41.793+-0.064 41.788+-0.060 imaging-gaussian-blur 69.421+-1.257 ? 71.246+-3.001 ? might be 1.0263x slower json-parse-financial 34.705+-0.134 ? 34.709+-0.436 ? json-stringify-tinderbox 22.901+-0.291 22.763+-0.214 stanford-crypto-aes 38.268+-0.205 ^ 37.748+-0.231 ^ definitely 1.0138x faster stanford-crypto-ccm 34.222+-0.883 ? 34.860+-0.544 ? might be 1.0186x slower stanford-crypto-pbkdf2 95.589+-0.458 ? 95.620+-0.799 ? stanford-crypto-sha256-iterative 36.073+-0.160 ? 36.297+-0.102 ? <arithmetic> 52.279+-0.176 ? 52.399+-0.155 ? might be 1.0023x slower Conf#1 Conf#2 AsmBench: bigfib.cpp 421.4597+-4.5370 ? 421.8978+-4.4250 ? cray.c 346.7326+-1.4174 ? 347.0421+-0.8846 ? dry.c 435.1491+-39.6964 426.0164+-34.4609 might be 1.0214x faster FloatMM.c 671.6600+-5.5836 671.3678+-5.3007 gcc-loops.cpp 3424.5765+-16.6313 ? 3438.5442+-21.3603 ? n-body.c 766.0584+-1.1130 765.8909+-1.4105 Quicksort.c 379.0844+-2.8810 ? 380.2275+-2.0264 ? stepanov_container.cpp 3030.1382+-13.9361 3028.4640+-9.6985 Towers.c 253.9166+-0.3235 ? 254.1400+-0.8915 ? <geometric> 683.3120+-7.2058 682.4397+-5.1792 might be 1.0013x faster Conf#1 Conf#2 CompressionBench: huffman 30.1706+-0.0871 ? 30.1844+-0.1276 ? arithmetic-simple 247.4444+-0.5567 ! 249.0122+-0.7402 ! definitely 1.0063x slower arithmetic-precise 234.8145+-2.6280 232.1072+-1.4971 might be 1.0117x faster arithmetic-complex-precise 233.8417+-1.6906 233.2636+-2.5171 arithmetic-precise-order-0 251.8121+-0.4208 ? 251.8281+-0.4805 ? arithmetic-precise-order-1 285.3417+-1.3316 283.8477+-0.6765 arithmetic-precise-order-2 327.8634+-5.0638 325.5007+-0.9080 arithmetic-simple-order-1 296.6160+-1.7371 ? 297.1154+-1.3573 ? arithmetic-simple-order-2 339.5233+-3.7741 339.2135+-2.3171 lz-string 307.5160+-5.2210 305.2663+-3.3243 <geometric> 222.6113+-0.6794 222.0361+-0.5694 might be 1.0026x faster Conf#1 Conf#2 Geomean of preferred means: <scaled-result> 45.6662+-0.0558 45.6027+-0.0520 might be 1.0014x faster
Benjamin Poulain
Comment 3
2016-02-18 20:32:55 PST
Looks like a ~2% win on deltablue.
WebKit Commit Bot
Comment 4
2016-02-18 22:42:05 PST
Comment on
attachment 271722
[details]
Patch Clearing flags on attachment: 271722 Committed
r196799
: <
http://trac.webkit.org/changeset/196799
>
WebKit Commit Bot
Comment 5
2016-02-18 22:42:10 PST
All reviewed patches have been landed. Closing bug.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug