[webkit-reviews] review requested: [Bug 74044] DFG CSE should know that CheckFunction is pure : [Attachment 118298] the patch

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Dec 7 18:05:03 PST 2011


Filip Pizlo <fpizlo at apple.com> has asked  for review:
Bug 74044: DFG CSE should know that CheckFunction is pure
https://bugs.webkit.org/show_bug.cgi?id=74044

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

------- Additional Comments from Filip Pizlo <fpizlo at apple.com>
[pizlo at nitroflex bencher] ./bencher
TipOfTree:/Volumes/Data/pizlo/quinary/OpenSource/WebKitBuild/Release/jsc
FixCheckFunc:/Volumes/Data/pizlo/tertiary/OpenSource/WebKitBuild/Release/jsc
--remote oldmac --local
Packaging VM builds for remote hosts...
Sending VM builds to oldmac...
Running on oldmac...
376/376 							  
Generating benchmark report at
TipOfTree_FixCheckFunc_SunSpiderV8Kraken_20111207_1757_benchReport.txt

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

VMs tested:
"TipOfTree" at /Volumes/Data/pizlo/quinary/OpenSource/WebKitBuild/Release/jsc
(r102265)
"FixCheckFunc" at
/Volumes/Data/pizlo/tertiary/OpenSource/WebKitBuild/Release/jsc (r102265)

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		   FixCheckFunc
				 
SunSpider:
   3d-cube				  8.8425+-0.0700    ?	 
9.0314+-0.1357	     ? might be 1.0214x slower
   3d-morph				 10.1451+-0.0579    ?	
10.3418+-0.1855       ? might be 1.0194x slower
   3d-raytrace				  9.2890+-0.0883	 
9.1852+-0.0756	       might be 1.0113x faster
   access-binary-trees			  1.9277+-0.0306    ?	 
1.9650+-0.0351	     ? might be 1.0193x slower
   access-fannkuch			  9.0474+-0.0957	 
8.9778+-0.0149	     
   access-nbody 			  4.7444+-0.0231	 
4.7255+-0.0085	     
   access-nsieve			  3.7167+-0.0071	 
3.7160+-0.0057	     
   bitops-3bit-bits-in-byte		  1.5111+-0.0256	 
1.5004+-0.0185	     
   bitops-bits-in-byte			  6.0357+-0.0952	 
5.9458+-0.0273	       might be 1.0151x faster
   bitops-bitwise-and			  3.9911+-0.0152	 
3.9870+-0.0309	     
   bitops-nsieve-bits			  6.8421+-0.0365    ?	 
6.8648+-0.0693	     ?
   controlflow-recursive		  2.7909+-0.0262	 
2.7741+-0.0164	     
   crypto-aes				  8.9776+-0.2299    ^	 
8.6375+-0.0753	     ^ definitely 1.0394x faster
   crypto-md5				  2.9375+-0.0219	 
2.9295+-0.0200	     
   crypto-sha1				  2.6288+-0.0297	 
2.6057+-0.0264	     
   date-format-tofte			 13.0708+-0.2080    ?	
13.3623+-0.3008       ? might be 1.0223x slower
   date-format-xparb			 12.6484+-0.1782    ?	
12.8515+-0.2025       ? might be 1.0161x slower
   math-cordic				  8.6465+-0.0519    ?	 
8.6788+-0.0573	     ?
   math-partial-sums			 12.7340+-0.1053	
12.6861+-0.0537       
   math-spectral-norm			  3.1787+-0.0413    ^	 
3.1215+-0.0046	     ^ definitely 1.0183x faster
   regexp-dna				 15.7793+-0.1250	
15.7108+-0.0495       
   string-base64			  4.8212+-0.0799    ?	 
4.8616+-0.0897	     ?
   string-fasta 			  8.9178+-0.0492    ?	 
8.9818+-0.1291	     ?
   string-tagcloud			 15.2023+-0.2502	
15.0227+-0.2046 	might be 1.0120x faster
   string-unpack-code			 26.3980+-0.3502	
25.9903+-0.1485 	might be 1.0157x faster
   string-validate-input		  6.9392+-0.0900	 
6.8581+-0.0728	       might be 1.0118x faster

   <arithmetic> *			  8.1448+-0.0382	 
8.1274+-0.0348	       might be 1.0021x faster
   <geometric>				  6.4959+-0.0252	 
6.4841+-0.0246	       might be 1.0018x faster
   <harmonic>				  5.0587+-0.0199	 
5.0489+-0.0237	       might be 1.0019x faster

					    TipOfTree		   FixCheckFunc
				 
V8:
   crypto				 92.3939+-0.4966    ?	
93.1374+-0.5456       ?
   deltablue				204.9910+-1.0846    ?  
206.3839+-0.9171       ?
   earley-boyer 			121.7526+-1.6036    ?  
123.2366+-1.5073       ? might be 1.0122x slower
   raytrace				 69.8208+-0.2921    ?	
70.0296+-0.4666       ?
   regexp				149.4363+-0.6177       
149.2242+-0.9202       
   richards				168.2800+-2.0180    ?  
169.4922+-3.2537       ?
   splay				110.3434+-0.8908    ^  
108.0634+-1.2010       ^ definitely 1.0211x faster

   <arithmetic> 			131.0026+-0.5490    ?  
131.3668+-0.5300       ? might be 1.0028x slower
   <geometric> *			123.8347+-0.4860    ?  
124.0901+-0.4773       ? might be 1.0021x slower
   <harmonic>				116.7824+-0.4443    ?  
116.9734+-0.4461       ? might be 1.0016x slower

					    TipOfTree		   FixCheckFunc
				 
Kraken:
   ai-astar				899.5897+-0.8491    !  
903.2278+-2.4389       ! definitely 1.0040x slower
   audio-beat-detection 		249.0234+-1.0104    ?  
249.1777+-1.0923       ?
   audio-dft				329.5744+-13.7973      
324.9010+-13.0897	 might be 1.0144x faster
   audio-fft				160.6459+-0.5296    ?  
161.0761+-0.6340       ?
   audio-oscillator			344.8350+-7.1896       
344.6023+-8.4341       
   imaging-darkroom			404.2031+-5.6120       
403.7540+-5.7959       
   imaging-desaturate			290.1854+-0.9942    ^  
288.6604+-0.4480       ^ definitely 1.0053x faster
   imaging-gaussian-blur		739.8452+-2.2079    ?  
740.0225+-1.4430       ?
   json-parse-financial 		 86.2863+-0.5058    ?	
86.6719+-0.6711       ?
   json-stringify-tinderbox		 99.4345+-0.2757    ?	
99.7361+-0.3391       ?
   stanford-crypto-aes			145.0492+-0.9806    ^  
142.8023+-0.8076       ^ definitely 1.0157x faster
   stanford-crypto-ccm			139.4911+-2.0648       
138.6611+-1.6733       
   stanford-crypto-pbkdf2		277.9355+-1.8993    ?  
281.4521+-2.0659       ? might be 1.0127x slower
   stanford-crypto-sha256-iterative	114.2836+-0.5304    ?  
114.9241+-0.5582       ?

   <arithmetic> *			305.7416+-1.2262       
305.6907+-1.0980	 might be 1.0002x faster
   <geometric>				238.7170+-0.9603       
238.5501+-0.7456	 might be 1.0007x faster
   <harmonic>				192.7428+-0.6204       
192.6929+-0.4938	 might be 1.0003x faster

					    TipOfTree		   FixCheckFunc
				 
All benchmarks:
   <arithmetic> 			115.0886+-0.4388    ?  
115.1181+-0.3160       ? might be 1.0003x slower
   <geometric>				 29.4816+-0.1017	
29.4546+-0.0797 	might be 1.0009x faster
   <harmonic>				  8.9145+-0.0346	 
8.8980+-0.0410	       might be 1.0019x faster

					    TipOfTree		   FixCheckFunc
				 
Geomean of preferred means:
   <scaled-result>			 67.5600+-0.2497	
67.5543+-0.1671 	might be 1.0001x faster

Running locally...
376/376 							  
Generating benchmark report at
TipOfTree_FixCheckFunc_SunSpiderV8Kraken_20111207_1759_benchReport.txt

Benchmark report for SunSpider, V8, and Kraken on nitroflex.local
(MacBookPro8,2).

VMs tested:
"TipOfTree" at /Volumes/Data/pizlo/quinary/OpenSource/WebKitBuild/Release/jsc
(r102265)
"FixCheckFunc" at
/Volumes/Data/pizlo/tertiary/OpenSource/WebKitBuild/Release/jsc (r102265)

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		   FixCheckFunc
				 
SunSpider:
   3d-cube				  6.8899+-0.1386    ?	 
7.1365+-0.1505	     ? might be 1.0358x slower
   3d-morph				  8.0201+-0.1344	 
7.9624+-0.4518	     
   3d-raytrace				  7.5278+-0.7369	 
7.3101+-0.1787	       might be 1.0298x faster
   access-binary-trees			  1.5192+-0.0502    ?	 
1.7136+-0.1961	     ? might be 1.1280x slower
   access-fannkuch			  6.3875+-0.1212	 
6.3581+-0.1264	     
   access-nbody 			  3.2196+-0.1223	 
3.2078+-0.1177	     
   access-nsieve			  2.5877+-0.0725	 
2.5254+-0.0554	       might be 1.0247x faster
   bitops-3bit-bits-in-byte		  1.4965+-0.2983	 
1.2812+-0.0438	       might be 1.1681x faster
   bitops-bits-in-byte			  2.4380+-0.1032    ?	 
2.4528+-0.0543	     ?
   bitops-bitwise-and			  3.4106+-0.0724    ?	 
3.4286+-0.0948	     ?
   bitops-nsieve-bits			  5.3475+-0.1088    ?	 
5.3834+-0.1086	     ?
   controlflow-recursive		  2.3991+-0.3355	 
2.0915+-0.0417	       might be 1.1471x faster
   crypto-aes				  7.0035+-0.1998    ?	 
7.0536+-0.2225	     ?
   crypto-md5				  2.3787+-0.0703	 
2.3477+-0.0702	       might be 1.0132x faster
   crypto-sha1				  2.2092+-0.2976	 
2.0689+-0.0543	       might be 1.0678x faster
   date-format-tofte			 10.3803+-0.2436	
10.1929+-0.2797 	might be 1.0184x faster
   date-format-xparb			  9.7166+-0.1690    ?	
10.5225+-1.1023       ? might be 1.0829x slower
   math-cordic				  6.3753+-0.1160	 
6.3509+-0.1195	     
   math-partial-sums			  7.5838+-0.2547	 
7.4843+-0.1347	       might be 1.0133x faster
   math-spectral-norm			  2.5770+-0.2835	 
2.4160+-0.1813	       might be 1.0666x faster
   regexp-dna				 11.0499+-0.1973    ?	
11.2826+-0.2442       ? might be 1.0211x slower
   string-base64			  3.8561+-0.0719    ?	 
3.9455+-0.1203	     ? might be 1.0232x slower
   string-fasta 			  6.8028+-0.1733	 
6.7981+-0.1935	     
   string-tagcloud			 11.5268+-0.6967	
11.4124+-0.2823 	might be 1.0100x faster
   string-unpack-code			 19.4170+-0.3565	
19.4005+-0.3156       
   string-validate-input		  5.4187+-0.1903    ?	 
5.4762+-0.1854	     ? might be 1.0106x slower

   <arithmetic> *			  6.0592+-0.0449    ?	 
6.0617+-0.0568	     ? might be 1.0004x slower
   <geometric>				  4.8778+-0.0512	 
4.8453+-0.0494	       might be 1.0067x faster
   <harmonic>				  3.8865+-0.0764	 
3.8339+-0.0599	       might be 1.0137x faster

					    TipOfTree		   FixCheckFunc
				 
V8:
   crypto				 71.2986+-0.6848	
70.8310+-0.8543       
   deltablue				149.3018+-1.3442       
148.5317+-0.6460       
   earley-boyer 			 85.2736+-1.4637	
84.6163+-2.0638       
   raytrace				 54.4495+-2.6654	
52.7010+-1.1609 	might be 1.0332x faster
   regexp				107.2549+-2.5278       
106.3236+-1.3451       
   richards				118.0904+-3.1343       
115.2541+-0.4266	 might be 1.0246x faster
   splay				 75.4466+-1.8272    ?	
76.3017+-1.9505       ? might be 1.0113x slower

   <arithmetic> 			 94.4451+-0.7325	
93.5085+-0.4354 	might be 1.0100x faster
   <geometric> *			 89.7816+-0.8662	
88.8688+-0.4729 	might be 1.0103x faster
   <harmonic>				 85.3896+-1.1069	
84.4532+-0.5128 	might be 1.0111x faster

					    TipOfTree		   FixCheckFunc
				 
Kraken:
   ai-astar				501.6880+-3.3387       
498.2480+-3.6935       
   audio-beat-detection 		185.5088+-1.3534       
184.9064+-1.2457       
   audio-dft				292.2868+-8.7709       
281.4146+-5.0894	 might be 1.0386x faster
   audio-fft				122.3843+-2.7231       
120.4536+-1.1730	 might be 1.0160x faster
   audio-oscillator			250.6638+-3.9515    ?  
252.3063+-3.5651       ?
   imaging-darkroom			306.1458+-4.6104       
304.4572+-4.1356       
   imaging-desaturate			217.5283+-1.1451    ?  
218.3009+-1.8705       ?
   imaging-gaussian-blur		552.4730+-3.4193    ?  
555.2720+-5.8729       ?
   json-parse-financial 		 57.2575+-0.3659	
56.8653+-0.3398       
   json-stringify-tinderbox		 74.2972+-0.4058    ?	
74.2980+-0.4882       ?
   stanford-crypto-aes			 97.6599+-0.4222	
96.9200+-0.7324       
   stanford-crypto-ccm			101.6598+-1.4779    ?  
102.0497+-1.6383       ?
   stanford-crypto-pbkdf2		189.6759+-0.7736    ?  
190.4033+-0.8665       ?
   stanford-crypto-sha256-iterative	 81.3322+-1.1897    ?	
81.3838+-1.5974       ?

   <arithmetic> *			216.4686+-0.8229       
215.5199+-0.7205	 might be 1.0044x faster
   <geometric>				172.0731+-0.6614       
171.3384+-0.4272	 might be 1.0043x faster
   <harmonic>				138.2870+-0.4907       
137.7556+-0.3821	 might be 1.0039x faster

					    TipOfTree		   FixCheckFunc
				 
All benchmarks:
   <arithmetic> 			 81.8982+-0.2992	
81.4775+-0.2316 	might be 1.0052x faster
   <geometric>				 21.7549+-0.1412	
21.6141+-0.1184 	might be 1.0065x faster
   <harmonic>				  6.8382+-0.1310	 
6.7468+-0.1026	       might be 1.0136x faster

					    TipOfTree		   FixCheckFunc
				 
Geomean of preferred means:
   <scaled-result>			 49.0133+-0.1969	
48.7820+-0.1450 	might be 1.0047x faster

[pizlo at nitroflex bencher]


More information about the webkit-reviews mailing list