[webkit-reviews] review requested: [Bug 71978] Multiple CodeBlock should be able to share the same instruction stream without copying : [Attachment 114423] the patch

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Nov 9 19:46:03 PST 2011


Filip Pizlo <fpizlo at apple.com> has asked  for review:
Bug 71978: Multiple CodeBlock should be able to share the same instruction
stream without copying
https://bugs.webkit.org/show_bug.cgi?id=71978

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

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



Benchmark report for SunSpider, V8, and Kraken on oldmac.local (MacPro4,1).

VMs tested:
"TipOfTree" at /Volumes/Data/pizlo/quinary/OpenSource/WebKitBuild/Release/jsc
(r99793)
"IndirectInsts" at
/Volumes/Data/pizlo/octonary/OpenSource/WebKitBuild/Release/jsc (r99793)

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		  IndirectInsts
				 
SunSpider:
   3d-cube				  9.1951+-0.0298    ?	 
9.2127+-0.0350	     ?
   3d-morph				 10.1246+-0.0311    ?	
10.1445+-0.0849       ?
   3d-raytrace				  9.7039+-0.0634    ^	 
9.5737+-0.0527	     ^ definitely 1.0136x faster
   access-binary-trees			  1.9889+-0.0085	 
1.9777+-0.0087	     
   access-fannkuch			  9.3314+-0.0087	 
9.3194+-0.0114	     
   access-nbody 			  5.2766+-0.0053    ?	 
5.2810+-0.0100	     ?
   access-nsieve			  3.7737+-0.0150    ?	 
3.7801+-0.0368	     ?
   bitops-3bit-bits-in-byte		  1.5518+-0.0143    ?	 
1.5562+-0.0138	     ?
   bitops-bits-in-byte			  6.1937+-0.0236	 
6.1742+-0.0306	     
   bitops-bitwise-and			  3.9955+-0.0058    ?	 
4.0000+-0.0102	     ?
   bitops-nsieve-bits			  6.8383+-0.0437	 
6.8377+-0.0442	     
   controlflow-recursive		  2.8435+-0.0244	 
2.8108+-0.0220	       might be 1.0116x faster
   crypto-aes				  9.3641+-0.0693	 
9.2476+-0.0653	       might be 1.0126x faster
   crypto-md5				  3.2962+-0.0134    ?	 
3.2994+-0.0118	     ?
   crypto-sha1				  3.0110+-0.0174	 
3.0017+-0.0198	     
   date-format-tofte			 12.7474+-0.0831    !	
12.9870+-0.1199       ! definitely 1.0188x slower
   date-format-xparb			 12.1318+-0.1432	
11.9993+-0.1692 	might be 1.0110x faster
   math-cordic				  9.3523+-0.3521	 
9.3190+-0.3537	     
   math-partial-sums			 12.7053+-0.0681	
12.6480+-0.0430       
   math-spectral-norm			  3.3212+-0.0053    ?	 
3.3224+-0.0043	     ?
   regexp-dna				 16.5074+-0.1241	
16.4670+-0.1331       
   string-base64			  5.0440+-0.0464	 
5.0155+-0.0444	     
   string-fasta 			  8.5750+-0.0239	 
8.5691+-0.0282	     
   string-tagcloud			 16.5642+-0.1475	
16.3738+-0.1338 	might be 1.0116x faster
   string-unpack-code			 28.5391+-0.0661	
28.3653+-0.1138       
   string-validate-input		  6.8285+-0.0597    ?	 
6.8602+-0.0820	     ?

   <arithmetic> *			  8.4156+-0.0223	 
8.3901+-0.0378	     
   <geometric>				  6.7202+-0.0159	 
6.7043+-0.0270	     
   <harmonic>				  5.2664+-0.0144	 
5.2560+-0.0168	     

					    TipOfTree		  IndirectInsts
				 
V8:
   crypto				 96.5999+-0.2638    ?	
96.7124+-0.2736       ?
   deltablue				217.9875+-1.8447       
217.1872+-1.2473       
   earley-boyer 			131.0454+-1.0592       
130.8345+-0.9018       
   raytrace				 81.5071+-0.4068    ^	
80.1075+-0.4319       ^ definitely 1.0175x faster
   regexp				149.8364+-0.4580       
149.7071+-0.5024       
   richards				171.2393+-0.3957       
171.2251+-0.1753       
   splay				108.3594+-1.1757       
107.0159+-1.2419	 might be 1.0126x faster

   <arithmetic> 			136.6536+-0.4019       
136.1128+-0.3722       
   <geometric> *			129.9313+-0.3875       
129.2864+-0.3757       
   <harmonic>				123.7063+-0.3872       
122.9385+-0.3845       

					    TipOfTree		  IndirectInsts
				 
Kraken:
   ai-astar				896.4506+-0.5545    ?  
896.6738+-0.4127       ?
   audio-beat-detection 		256.4160+-1.0621    ?  
258.0401+-2.1476       ?
   audio-dft				314.3094+-3.1101    ?  
314.4966+-2.7991       ?
   audio-fft				167.0367+-0.5979       
166.6711+-0.1535       
   audio-oscillator			352.6297+-1.3368    ?  
352.6809+-2.5037       ?
   imaging-darkroom			408.2399+-7.4025       
402.0354+-6.0704	 might be 1.0154x faster
   imaging-desaturate			291.2936+-0.1506       
291.2023+-0.0605       
   imaging-gaussian-blur		750.9313+-0.3272       
750.8042+-0.1390       
   json-parse-financial 		 86.9584+-0.1951	
86.6275+-0.4613       
   json-stringify-tinderbox		 96.3491+-0.2609    ^	
94.7587+-0.3953       ^ definitely 1.0168x faster
   stanford-crypto-aes			141.4608+-1.5955    ^  
139.2627+-0.5583       ^ definitely 1.0158x faster
   stanford-crypto-ccm			139.7091+-0.8157    ^  
137.7735+-0.5919       ^ definitely 1.0140x faster
   stanford-crypto-pbkdf2		282.4020+-2.4379    !  
290.3719+-4.6501       ! definitely 1.0282x slower
   stanford-crypto-sha256-iterative	118.3429+-0.3506    ?  
119.2543+-0.5738       ?

   <arithmetic> *			307.3235+-0.5651       
307.1895+-0.6239       
   <geometric>				239.9820+-0.4241       
239.5484+-0.4258       
   <harmonic>				193.5401+-0.3173    ^  
192.7567+-0.2960       ^ definitely 1.0041x faster

					    TipOfTree		  IndirectInsts
				 
All benchmarks:
   <arithmetic> 			116.5513+-0.1557       
116.4167+-0.1931       
   <geometric>				 30.3039+-0.0469	
30.2254+-0.0720       
   <harmonic>				  9.2777+-0.0248	 
9.2587+-0.0290	     

					    TipOfTree		  IndirectInsts
				 
Geomean of preferred means:
   <scaled-result>			 69.5230+-0.0962	
69.3275+-0.1339


More information about the webkit-reviews mailing list