WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
76682
Bytecode instructions that may have value profiling should have a direct inline link to the ValueProfile instance
https://bugs.webkit.org/show_bug.cgi?id=76682
Summary
Bytecode instructions that may have value profiling should have a direct inli...
Filip Pizlo
Reported
2012-01-19 19:24:35 PST
Patch forthcoming.
Attachments
the patch
(54.68 KB, patch)
2012-01-19 19:37 PST
,
Filip Pizlo
sam
: review+
Details
Formatted Diff
Diff
View All
Add attachment
proposed patch, testcase, etc.
Filip Pizlo
Comment 1
2012-01-19 19:28:22 PST
<
rdar://problem/10727689
>
Filip Pizlo
Comment 2
2012-01-19 19:37:52 PST
Created
attachment 123243
[details]
the patch The performance is neutral. [pizlo@nitroflex bencher] ./bencher TipOfTree:/Volumes/Data/pizlo/quinary/OpenSource/WebKitBuild/Release/jsc RefactorVP:/Volumes/Data/pizlo/OpenSource/WebKitBuild/Release/jsc --remote bigmac --local Copying TipOfTree into /Volumes/Data/pizlo/bencher/temp/benchdata... Copying RefactorVP into /Volumes/Data/pizlo/bencher/temp/benchdata... All VMs are in place. Packaging benchmarking directory for remote hosts... Sending benchmark payload to bigmac... Running on bigmac... 376/376 Generating benchmark report at TipOfTree_RefactorVP_SunSpiderV8Kraken_bigmac_20120119_1920_benchReport.txt Benchmark report for SunSpider, V8, and Kraken on bigmac (MacPro5,1). VMs tested: "TipOfTree" at /Volumes/Data/pizlo/quinary/OpenSource/WebKitBuild/Release/jsc (
r105374
) "RefactorVP" at /Volumes/Data/pizlo/OpenSource/WebKitBuild/Release/jsc (
r105374
) 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 RefactorVP SunSpider: 3d-cube 5.8634+-0.0206 ! 6.0485+-0.0439 ! definitely 1.0316x slower 3d-morph 8.6965+-0.1629 ? 8.7333+-0.1215 ? 3d-raytrace 7.7781+-0.0488 7.7672+-0.0717 access-binary-trees 1.6054+-0.0122 ? 1.6197+-0.0168 ? access-fannkuch 7.4979+-0.0440 ? 7.5356+-0.0583 ? access-nbody 3.9902+-0.0066 ? 3.9943+-0.0066 ? access-nsieve 3.1396+-0.0465 3.1328+-0.0464 bitops-3bit-bits-in-byte 1.2701+-0.0112 ? 1.2751+-0.0139 ? bitops-bits-in-byte 5.2411+-0.0167 ? 5.2642+-0.0247 ? bitops-bitwise-and 3.3953+-0.0946 ? 3.3989+-0.1008 ? bitops-nsieve-bits 5.7180+-0.0574 ? 5.7267+-0.0503 ? controlflow-recursive 2.3400+-0.0091 ? 2.3429+-0.0087 ? crypto-aes 7.4993+-0.0653 7.4074+-0.0320 might be 1.0124x faster crypto-md5 2.4998+-0.0167 ? 2.5069+-0.0182 ? crypto-sha1 2.3242+-0.0308 2.3143+-0.0326 date-format-tofte 10.5878+-0.1337 10.5788+-0.1164 date-format-xparb 9.7339+-0.1049 9.5497+-0.1196 might be 1.0193x faster math-cordic 8.3132+-1.2386 7.3278+-0.0618 might be 1.1345x faster math-partial-sums 10.4352+-0.0251 10.4252+-0.0290 math-spectral-norm 2.6544+-0.0053 2.6544+-0.0054 regexp-dna 8.9072+-0.0239 8.8984+-0.0220 string-base64 4.3703+-0.0168 ! 4.4134+-0.0227 ! definitely 1.0099x slower string-fasta 7.2495+-0.0356 ? 7.2813+-0.0320 ? string-tagcloud 12.5367+-0.0348 ? 12.6171+-0.1074 ? string-unpack-code 20.5214+-0.0837 20.4369+-0.0817 string-validate-input 5.7967+-0.0734 ? 5.8595+-0.0446 ? might be 1.0108x slower <arithmetic> * 6.5371+-0.0592 6.5042+-0.0214 might be 1.0051x faster <geometric> 5.3257+-0.0369 5.3145+-0.0213 might be 1.0021x faster <harmonic> 4.2248+-0.0227 ? 4.2283+-0.0205 ? might be 1.0008x slower TipOfTree RefactorVP V8: crypto 77.6710+-0.3253 ? 78.0594+-0.4033 ? deltablue 168.2033+-0.7674 ? 171.0422+-2.6337 ? might be 1.0169x slower earley-boyer 99.8762+-1.4712 ? 100.4837+-1.1987 ? raytrace 51.9744+-0.1112 ! 52.4662+-0.3277 ! definitely 1.0095x slower regexp 102.3581+-0.4396 101.8639+-0.3289 richards 137.6229+-0.7022 ^ 135.6362+-0.4544 ^ definitely 1.0146x faster splay 92.0874+-1.3249 91.7429+-0.9564 <arithmetic> 104.2562+-0.3139 ? 104.4707+-0.4715 ? might be 1.0021x slower <geometric> * 98.1794+-0.3127 ? 98.3765+-0.3653 ? might be 1.0020x slower <harmonic> 92.1321+-0.2796 ? 92.3868+-0.3240 ? might be 1.0028x slower TipOfTree RefactorVP Kraken: ai-astar 820.3124+-10.8860 820.1025+-11.2875 audio-beat-detection 192.1315+-0.9980 ? 193.2688+-0.8973 ? audio-dft 283.5880+-9.3144 278.5317+-2.9456 might be 1.0182x faster audio-fft 121.3906+-1.2264 120.5656+-0.9075 audio-oscillator 288.9685+-3.3290 287.9650+-5.7311 imaging-darkroom 302.6476+-7.2927 301.1763+-6.8883 imaging-desaturate 230.0327+-0.1749 ? 230.1040+-0.1712 ? imaging-gaussian-blur 519.4203+-0.3934 519.3887+-0.3033 json-parse-financial 68.4661+-0.1802 ? 68.5393+-0.2251 ? json-stringify-tinderbox 87.0458+-0.3688 ^ 79.9404+-0.4321 ^ definitely 1.0889x faster stanford-crypto-aes 114.1460+-0.5823 ? 115.0209+-0.5995 ? stanford-crypto-ccm 109.9459+-0.8376 ! 111.9609+-1.0850 ! definitely 1.0183x slower stanford-crypto-pbkdf2 217.7857+-0.6801 ? 218.4054+-0.4090 ? stanford-crypto-sha256-iterative 93.9370+-0.5104 ? 94.6560+-0.7031 ? <arithmetic> * 246.4156+-1.0461 245.6875+-1.2675 might be 1.0030x faster <geometric> 191.0876+-0.6132 190.0781+-0.8218 might be 1.0053x faster <harmonic> 154.8155+-0.4398 ^ 153.4713+-0.5828 ^ definitely 1.0088x faster TipOfTree RefactorVP All benchmarks: <arithmetic> 92.5442+-0.3124 92.3411+-0.3783 might be 1.0022x faster <geometric> 23.8792+-0.1015 23.8211+-0.0861 might be 1.0024x faster <harmonic> 7.4361+-0.0391 ? 7.4415+-0.0357 ? might be 1.0007x slower TipOfTree RefactorVP Geomean of preferred means: <scaled-result> 54.0769+-0.1645 53.9701+-0.1682 might be 1.0020x faster Running locally... 376/376 Generating benchmark report at TipOfTree_RefactorVP_SunSpiderV8Kraken_nitroflex_20120119_1923_benchReport.txt Benchmark report for SunSpider, V8, and Kraken on nitroflex (MacBookPro8,2). VMs tested: "TipOfTree" at /Volumes/Data/pizlo/quinary/OpenSource/WebKitBuild/Release/jsc (
r105374
) "RefactorVP" at /Volumes/Data/pizlo/OpenSource/WebKitBuild/Release/jsc (
r105374
) 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 RefactorVP SunSpider: 3d-cube 5.1460+-0.1321 ? 5.6900+-0.4699 ? might be 1.1057x slower 3d-morph 8.0431+-0.2230 7.9939+-0.1424 3d-raytrace 7.4788+-0.2023 7.4300+-0.1346 access-binary-trees 1.4941+-0.0750 ? 1.6648+-0.2177 ? might be 1.1143x slower access-fannkuch 6.4486+-0.4360 6.1187+-0.1138 might be 1.0539x faster access-nbody 3.4448+-0.2728 3.3485+-0.0754 might be 1.0288x faster access-nsieve 2.6061+-0.0824 2.5866+-0.0860 bitops-3bit-bits-in-byte 1.3897+-0.0294 ? 1.4013+-0.0362 ? bitops-bits-in-byte 2.3449+-0.0467 ? 2.3796+-0.0723 ? might be 1.0148x slower bitops-bitwise-and 3.2294+-0.0595 3.1743+-0.0598 might be 1.0173x faster bitops-nsieve-bits 5.3911+-0.0756 ? 5.4692+-0.1442 ? might be 1.0145x slower controlflow-recursive 2.0558+-0.0327 ^ 1.9791+-0.0378 ^ definitely 1.0387x faster crypto-aes 7.3393+-0.2581 ? 7.4624+-0.2028 ? might be 1.0168x slower crypto-md5 2.4339+-0.0570 2.3905+-0.0524 might be 1.0182x faster crypto-sha1 2.1170+-0.0513 ? 2.1204+-0.0539 ? date-format-tofte 10.3760+-0.1993 10.1305+-0.2197 might be 1.0242x faster date-format-xparb 9.2474+-0.1731 ? 9.2480+-0.1975 ? math-cordic 6.4670+-0.1280 ? 6.5033+-0.1784 ? math-partial-sums 7.6053+-0.1733 ? 7.6195+-0.1632 ? math-spectral-norm 2.3515+-0.0580 ? 2.3708+-0.0637 ? regexp-dna 7.9017+-0.1564 ? 8.3078+-0.3820 ? might be 1.0514x slower string-base64 4.5504+-0.1505 4.5174+-0.1232 string-fasta 6.6874+-0.1184 6.6285+-0.1672 string-tagcloud 11.1461+-0.2172 ? 11.2586+-0.2599 ? might be 1.0101x slower string-unpack-code 18.5671+-0.2287 ? 18.9946+-0.4255 ? might be 1.0230x slower string-validate-input 5.9061+-0.2496 5.8404+-0.3283 might be 1.0112x faster <arithmetic> * 5.8372+-0.0263 ? 5.8703+-0.0571 ? might be 1.0057x slower <geometric> 4.7413+-0.0198 ? 4.7643+-0.0394 ? might be 1.0049x slower <harmonic> 3.8023+-0.0214 ? 3.8286+-0.0379 ? might be 1.0069x slower TipOfTree RefactorVP V8: crypto 70.8071+-0.3390 ? 71.8558+-0.8462 ? might be 1.0148x slower deltablue 151.1672+-1.5456 ? 156.9753+-7.6126 ? might be 1.0384x slower earley-boyer 83.9958+-3.7087 82.8518+-1.9315 might be 1.0138x faster raytrace 49.5077+-1.3787 48.4820+-0.4497 might be 1.0212x faster regexp 89.5554+-1.4171 88.2384+-0.6532 might be 1.0149x faster richards 118.7168+-0.8751 ^ 115.4227+-0.7959 ^ definitely 1.0285x faster splay 78.5892+-1.2981 ? 78.6190+-1.4605 ? <arithmetic> 91.7628+-0.8444 ? 91.7779+-1.2957 ? might be 1.0002x slower <geometric> * 86.7865+-0.8583 86.4775+-0.9001 might be 1.0036x faster <harmonic> 82.1286+-0.8840 81.6316+-0.7246 might be 1.0061x faster TipOfTree RefactorVP Kraken: ai-astar 492.2743+-4.0499 488.2833+-5.4134 audio-beat-detection 172.2378+-0.5194 ? 174.3829+-1.7299 ? might be 1.0125x slower audio-dft 299.0619+-18.2679 ? 306.8655+-16.2793 ? might be 1.0261x slower audio-fft 108.3165+-1.1732 107.8160+-0.7386 audio-oscillator 252.3542+-2.4364 252.3474+-2.1770 imaging-darkroom 270.6131+-5.7337 ? 270.7454+-5.8467 ? imaging-desaturate 207.8335+-1.0322 ? 210.7710+-2.2144 ? might be 1.0141x slower imaging-gaussian-blur 488.8171+-2.6681 ? 496.9054+-9.3358 ? might be 1.0165x slower json-parse-financial 56.4802+-1.3518 55.6299+-1.0906 might be 1.0153x faster json-stringify-tinderbox 72.9771+-0.7455 ? 74.6335+-2.9665 ? might be 1.0227x slower stanford-crypto-aes 99.8975+-4.1310 98.3900+-1.8893 might be 1.0153x faster stanford-crypto-ccm 97.1797+-1.5932 ? 97.6862+-1.3682 ? stanford-crypto-pbkdf2 182.0891+-2.6681 ? 182.5062+-1.3129 ? stanford-crypto-sha256-iterative 81.7224+-0.4930 ? 82.8778+-0.7039 ? might be 1.0141x slower <arithmetic> * 205.8467+-1.3832 ? 207.1315+-1.7042 ? might be 1.0062x slower <geometric> 165.1879+-1.1484 ? 166.0180+-0.9161 ? might be 1.0050x slower <harmonic> 134.0311+-1.1204 ? 134.4238+-0.7649 ? might be 1.0029x slower TipOfTree RefactorVP All benchmarks: <arithmetic> 78.2120+-0.4719 ? 78.6152+-0.4774 ? might be 1.0052x slower <geometric> 21.0509+-0.0941 ? 21.1274+-0.1115 ? might be 1.0036x slower <harmonic> 6.6879+-0.0373 ? 6.7326+-0.0647 ? might be 1.0067x slower TipOfTree RefactorVP Geomean of preferred means: <scaled-result> 47.0676+-0.2541 ? 47.1962+-0.2507 ? might be 1.0027x slower [pizlo@nitroflex bencher]
Sam Weinig
Comment 3
2012-01-19 19:46:02 PST
Comment on
attachment 123243
[details]
the patch View in context:
https://bugs.webkit.org/attachment.cgi?id=123243&action=review
> Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp:1745 > set(getInstruction[1].u.operand, cellConstant(methodCall.cachedFunction.get())); > + > } else
Remove this weird newline.
Filip Pizlo
Comment 4
2012-01-20 12:29:40 PST
Landed in
http://trac.webkit.org/changeset/105533
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