[webkit-reviews] review requested: [Bug 76682] Bytecode instructions that may have value profiling should have a direct inline link to the ValueProfile instance : [Attachment 123243] the patch

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Jan 19 19:37:51 PST 2012


Filip Pizlo <fpizlo at apple.com> has asked  for review:
Bug 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

Attachment 123243: the patch
https://bugs.webkit.org/attachment.cgi?id=123243&action=review

------- Additional Comments from Filip Pizlo <fpizlo at apple.com>
The performance is neutral.



[pizlo at 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 at nitroflex bencher]


More information about the webkit-reviews mailing list