Version 12 of Tcl Normalized Benchmarks

Updated 2007-11-16 23:25:23 by JH

Jeffrey Hobbs: These are the normalized benchmarks, using 8.4 as the base. These numbers correspond to the ones in Tcl Benchmarks.

After each interp run, the elapsed time (%H:%M:%S) taken for that interp is shown, to give an overview of the whole run. Note that not all tests run on all interpreters, and the code isn't always equal between versions (the functionality of the code should be).


Note: Lower numbers mean faster performance.


 TCL_INTERP: 1:8.5b2.1 2:8.4.17 3:8.3.5 4:8.2.3 5:8.0.5 6:7.6p2
 STARTED 2007-11-16 11:21:08 (runbench.tcl v1.20)
 Benchmark 1:8.5b2.1 /home/jeffh/install/linux-ix86/bin/canon8.5
 abbccdeeeffghkllmmmmnpprrssstuvw 00:02:08 elapsed
 124194 milliseconds
 Benchmark 2:8.4.17 /home/jeffh/install/linux-ix86/bin/canon8.4
 abbccdeeeffghkllmmmmnpprrssstuvw 00:02:25 elapsed
 140805 milliseconds
 Benchmark 3:8.3.5 /home/jeffh/install/linux-ix86/bin/canon8.3
 abbccdeeeffghkllmmmmnpprrssstuvw 00:04:01 elapsed
 239211 milliseconds
 Benchmark 4:8.2.3 /home/jeffh/install/linux-ix86/bin/canon8.2
 abbccdeeeffghkllmmmmnpprrssstuvw 00:03:56 elapsed
 235704 milliseconds
 Benchmark 5:8.0.5 /home/jeffh/install/linux-ix86/bin/canon8.0
 abbccdeeeffghkllmmmmnpprrssstuvw 00:02:52 elapsed
 164640 milliseconds
 Benchmark 6:7.6p2 /home/jeffh/install/linux-ix86/bin/canon7.6
 abbccdeeeffghkllmmmmnpprrssstuvw 00:07:01 elapsed
 411967 milliseconds
000VERSIONS:1:8.5b2.12:8.4.173:8.3.54:8.2.35:8.0.56:7.6p2
001ARRAY genKeys 501.001.131.281.211.121.57
002ARRAY genKeys 5001.001.160.960.830.751.30
003ARRAY makeHash 500 501.000.920.921.171.051.23
004BASE64 decode 101.001.191.461.411.29-=-
005BASE64 decode 1001.001.171.441.491.31-=-
006BASE64 decode 10001.001.151.441.481.41-=-
007BASE64 decode 100001.001.181.481.551.35-=-
008BASE64 decode2 101.001.251.461.491.26-=-
009BASE64 decode2 1001.001.151.421.471.28-=-
010BASE64 decode2 10001.001.171.461.551.33-=-
011BASE64 decode2 100001.001.171.451.541.34-=-
012BASE64 decode3 101.001.071.501.521.29-=-
013BASE64 decode3 1001.001.171.791.781.56-=-
014BASE64 decode3 10001.001.161.861.861.65-=-
015BASE64 decode3 100001.001.191.901.911.69-=-
016BASE64 encode 101.001.021.421.471.34-=-
017BASE64 encode 1001.001.001.591.621.66-=-
018BASE64 encode 10001.001.001.631.661.66-=-
019BASE64 encode 100001.000.981.601.691.64-=-
020BASE64 encode2 101.001.271.811.762.11-=-
021BASE64 encode2 1001.001.282.182.162.91-=-
022BASE64 encode2 10001.001.252.182.172.97-=-
023BASE64 encode2 100001.001.252.182.252.97-=-
024BASE64 encode3 101.001.031.341.291.10-=-
025BASE64 encode3 1001.001.252.072.001.76-=-
026BASE64 encode3 10001.001.282.242.141.88-=-
027BASE64 encode3 100001.001.272.332.211.97-=-
028BIN bitset-v1 1000 chars1.001.161.301.381.15-=-
029BIN bitset-v1 5000 chars1.001.181.341.491.27-=-
030BIN bitset-v1 10000 chars1.001.161.311.421.25-=-
031BIN bitset-v2 1000 chars1.001.051.261.161.08-=-
032BIN bitset-v2 5000 chars1.001.101.351.241.16-=-
033BIN bitset-v2 10000 chars1.001.001.251.161.07-=-
034BIN bitset-v3 1000 chars1.000.931.811.721.45-=-
035BIN bitset-v3 5000 chars1.000.821.851.711.47-=-
036BIN bitset-v3 10000 chars1.000.821.871.731.53-=-
037BIN c scan, 1000b1.000.990.460.470.36-=-
038BIN c scan, 5000b1.001.120.690.700.53-=-
039BIN c scan, 10000b1.000.930.800.810.65-=-
040BIN chars, 10000b1.000.962.172.071.76-=-
041BIN u char, 10000b1.00-=--=--=--=--=-
042CATCH error, complex1.000.520.500.390.340.45
043CATCH no catch used1.000.640.520.690.520.69
044CATCH return error1.000.560.390.390.330.50
045CATCH return except1.000.700.630.630.420.84
046CATCH return ok1.000.630.650.480.480.81
047DATA access in a list1.001.403.423.293.0566.86
048DATA access in an array1.000.751.271.281.173.43
049DATA create in a list1.000.983.412.983.047.75
050DATA create in an array1.000.841.131.121.502.57
051ENC iso2022-jp, gets1.0038.9713.4413.34-=--=-
052ENC iso2022-jp, read1.0051.8317.2117.18-=--=-
053ENC iso2022-jp, read & size1.0048.9016.4316.60-=--=-
054ENC iso8859-2, gets1.001.440.990.86-=--=-
055ENC iso8859-2, read1.001.540.880.84-=--=-
056ENC iso8859-2, read & size1.001.570.920.88-=--=-
057EVAL cmd and mixed lists1.001.060.812.281.660.24
058EVAL cmd eval as list1.000.961.211.811.811.21
059EVAL cmd eval as string1.000.800.600.700.600.30
060EVAL cmd eval in list obj var1.000.830.591.771.380.79
061EVAL list cmd and mixed lists1.001.060.852.321.660.25
062EVAL list cmd and pure lists1.000.860.5924.6617.652.58
063EXPR $a != $b int1.001.140.920.920.924.15
064EXPR $a != $b str (!= len)1.001.101.031.031.033.09
065EXPR $a != $b str (== len)1.001.251.441.241.032.89
066EXPR $a == $b int1.001.220.970.970.974.83
067EXPR $a == $b str (!= len)1.001.131.081.081.083.02
068EXPR $a == $b str (== len)1.001.260.860.861.032.57
069EXPR braced1.000.801.200.680.683.77
070EXPR fifty operands1.000.931.161.040.813.70
071EXPR incr with expr1.000.921.160.580.581.74
072EXPR incr with incr1.000.981.270.640.641.91
073EXPR inline1.000.990.800.800.641.60
074EXPR one operand1.000.980.610.610.611.21
075EXPR ten operands1.001.021.111.110.742.95
076EXPR unbraced1.000.520.430.380.290.28
077FCOPY binary: 160K1.000.991.021.04-=--=-
078FCOPY encoding: 160K1.000.970.340.36-=--=-
079FCOPY std: 160K1.001.001.001.021.211.15
080FILE exec interp1.000.800.750.640.700.37
081FILE exec interp: pkg require1.000.660.530.470.300.16
082FILE exists tmpfile (obj)1.001.080.980.980.740.74
083FILE exists ~1.001.0626.7225.290.861.72
084FILE exists! tmpfile (obj)1.001.091.101.100.830.83
085FILE exists! tmpfile (str)1.002.240.500.500.300.30
086FILE glob tmpdir (60 entries)1.001.220.931.030.730.72
087FILE glob / all subcommands1.001.040.990.990.790.76
088FILE glob / atime1.000.980.390.430.320.38
089FILE glob / attributes1.000.890.590.660.46-=-
090FILE glob / dirname1.003.041.441.791.491.54
091FILE glob / executable1.001.000.380.430.310.35
092FILE glob / exists1.001.000.360.430.310.35
093FILE glob / extension1.001.480.861.180.961.01
094FILE glob / isdirectory1.001.010.370.430.320.35
095FILE glob / isfile1.000.990.370.440.330.35
096FILE glob / mtime1.001.000.370.430.320.54
097FILE glob / owned1.001.010.380.440.340.36
098FILE glob / readable1.001.000.360.420.320.35
099FILE glob / rootname1.001.430.841.130.930.98
100FILE glob / size1.000.990.370.430.320.37
101FILE glob / tail1.002.341.261.621.361.37
102FILE glob / writable1.001.010.360.430.320.34
103FILE recurse / -dir1.001.250.840.880.850.82
104FILE recurse / cd1.001.820.740.750.760.71
105GCCont_cpb::cGCC 501.000.952.262.241.70-=-
106GCCont_cpb::cGCC 5001.000.862.642.722.28-=-
107GCCont_cpb::cGCC 50001.000.792.572.702.29-=-
108GCCont_cpbre1::cGCC 501.001.051.06-=--=--=-
109GCCont_cpbre1::cGCC 5001.001.020.92-=--=--=-
110GCCont_cpbre1::cGCC 50001.001.020.90-=--=--=-
111GCCont_cpbre2::cGCC 501.001.061.04-=--=--=-
112GCCont_cpbre2::cGCC 5001.001.120.97-=--=--=-
113GCCont_cpbre2::cGCC 50001.001.100.96-=--=--=-
114GCCont_cpbrs2::cGCC 501.001.072.982.98-=--=-
115GCCont_cpbrs2::cGCC 5001.001.035.635.77-=--=-
116GCCont_cpbrs2::cGCC 50001.001.016.576.88-=--=-
117GCCont_cpbrs::cGCC1 501.001.093.053.051.64-=-
118GCCont_cpbrs::cGCC1 5001.001.035.545.711.21-=-
119GCCont_cpbrs::cGCC1 50001.001.026.676.920.90-=-
120GCCont_cpbrs::cGCC2 501.001.103.473.431.74-=-
121GCCont_cpbrs::cGCC2 5001.001.046.256.491.22-=-
122GCCont_cpbrs::cGCC2 50001.001.037.597.790.88-=-
123GCCont_cpbrs_trap::cGCC 501.001.061.021.090.64-=-
124GCCont_cpbrs_trap::cGCC 5001.001.080.981.070.57-=-
125GCCont_cpbrs_trap::cGCC 50001.001.080.981.060.54-=-
126GCCont_expr::cGCC 501.000.890.810.79-=--=-
127GCCont_expr::cGCC 5001.002.342.222.20-=--=-
128GCCont_expr::cGCC 50001.0020.0016.6414.92-=--=-
129GCCont_i::cGCC1 501.002.072.482.421.85-=-
130GCCont_i::cGCC1 5001.002.412.872.782.39-=-
131GCCont_i::cGCC1 50001.002.422.872.832.46-=-
132GCCont_i::cGCC2 501.000.961.591.761.23-=-
133GCCont_i::cGCC2 5001.000.931.631.821.57-=-
134GCCont_i::cGCC2 50001.000.941.651.871.62-=-
135GCCont_i::cGCC3 501.000.941.551.841.27-=-
136GCCont_i::cGCC3 5001.000.911.701.911.66-=-
137GCCont_i::cGCC3 50001.000.901.681.981.72-=-
138GCCont_r1::cGCC 501.002.223.192.872.23-=-
139GCCont_r1::cGCC 5001.002.293.282.912.30-=-
140GCCont_r1::cGCC 50001.002.273.272.872.27-=-
141GCCont_r2::cGCC 501.002.352.762.622.01-=-
142GCCont_r2::cGCC 5001.002.452.912.812.29-=-
143GCCont_r2::cGCC 50001.002.462.872.872.38-=-
144GCCont_r3::cGCC 501.002.182.512.511.88-=-
145GCCont_r3::cGCC 5001.002.362.772.722.26-=-
146GCCont_r3::cGCC 50001.002.372.772.772.28-=-
147GCCont_rsf1::cGCC 501.000.971.321.62-=--=-
148GCCont_rsf1::cGCC 5001.000.901.281.78-=--=-
149GCCont_rsf1::cGCC 50001.000.881.271.83-=--=-
150GCCont_rsf2::cGCC1 501.001.011.361.63-=--=-
151GCCont_rsf2::cGCC1 5001.000.941.491.91-=--=-
152GCCont_rsf2::cGCC1 50001.000.911.501.98-=--=-
153GCCont_rsf2::cGCC2 501.001.021.231.45-=--=-
154GCCont_rsf2::cGCC2 5001.000.931.411.86-=--=-
155GCCont_rsf2::cGCC2 50001.000.891.441.94-=--=-
156GCCont_rsf3::cGCC 501.000.991.181.44-=--=-
157GCCont_rsf3::cGCC 5001.000.951.441.88-=--=-
158GCCont_rsf3::cGCC 50001.000.911.451.95-=--=-
159GCCont_turing::cGCC 501.001.221.511.51-=--=-
160GCCont_turing::cGCC 5001.001.021.821.84-=--=-
161GCCont_turing::cGCC 50001.001.041.982.00-=--=-
162HEAPSORT size 101.000.891.161.1412.276.40
163HEAPSORT size 501.000.851.091.088.155.88
164HEAPSORT size 1001.000.871.091.077.045.76
165HEAPSORT2 size 101.001.32-=--=--=--=-
166HEAPSORT2 size 501.001.38-=--=--=--=-
167HEAPSORT2 size 1001.001.40-=--=--=--=-
168IF 1/0 check1.000.991.161.161.164.07
169IF else true al1.001.541.721.431.154.01
170IF else true numeric1.001.561.261.261.265.02
171IF elseif true al1.001.311.401.401.403.91
172IF elseif true numeric1.001.171.641.641.644.92
173IF if false al/al1.001.451.491.491.123.72
174IF if false al/num1.001.091.051.051.054.56
175IF if false num/num1.001.121.300.870.874.33
176IF if true al1.001.141.511.131.133.77
177IF if true al/al1.001.251.511.511.133.77
178IF if true num/num1.001.101.330.880.884.42
179IF if true numeric1.000.720.600.600.602.99
180IF multi 1st true1.001.050.870.870.876.93
181IF multi 2nd true1.001.031.231.231.236.97
182IF multi 9th true1.001.231.741.741.459.28
183IF multi default true1.001.151.631.631.638.72
184KLIST shuffle0 llength 11.001.051.711.621.458.0+
185KLIST shuffle0 llength 101.001.071.871.791.698.0+
186KLIST shuffle0 llength 1001.001.001.721.691.478.0+
187KLIST shuffle0 llength 10001.000.991.621.571.388.0+
188KLIST shuffle0 llength 100001.001.041.231.211.04-=-
189KLIST shuffle1-s llength 11.001.101.461.250.944.28
190KLIST shuffle1-s llength 101.001.391.721.201.115.04
191KLIST shuffle1-s llength 1001.001.001.310.880.824.55
192KLIST shuffle1-s llength 10001.001.131.080.690.734.39
193KLIST shuffle1a llength 11.001.041.191.110.793.18
194KLIST shuffle1a llength 101.001.041.171.110.974.75
195KLIST shuffle1a llength 1001.001.031.101.090.979.07
196KLIST shuffle1a llength 10001.001.031.091.100.9847.07
197KLIST shuffle1a llength 100001.001.011.081.091.03-=-
198KLIST shuffle2 llength 11.000.891.311.161.313.16
199KLIST shuffle2 llength 101.000.710.970.911.243.17
200KLIST shuffle2 llength 1001.000.670.920.851.153.03
201KLIST shuffle2 llength 10001.000.690.900.811.072.76
202KLIST shuffle2 llength 100001.000.720.880.811.04-=-
203KLIST shuffle3 llength 11.001.071.451.451.033.20
204KLIST shuffle3 llength 101.000.951.321.211.124.60
205KLIST shuffle3 llength 1001.000.961.191.201.026.21
206KLIST shuffle3 llength 10001.000.951.201.191.0418.51
207KLIST shuffle3 llength 100001.000.971.121.241.11-=-
208KLIST shuffle4 llength 11.001.131.531.531.123.27
209KLIST shuffle4 llength 101.000.971.461.311.224.90
210KLIST shuffle4 llength 1001.000.981.331.271.147.98
211KLIST shuffle4 llength 10001.000.981.321.271.1234.14
212KLIST shuffle4 llength 100001.001.001.321.251.13-=-
213KLIST shuffle5-s llength 11.000.920.970.970.814.22
214KLIST shuffle5-s llength 101.001.061.340.900.824.25
215KLIST shuffle5-s llength 1001.001.151.460.850.813.88
216KLIST shuffle5-s llength 10001.001.131.350.730.773.02
217KLIST shuffle5a llength 11.001.021.110.970.834.02
218KLIST shuffle5a llength 101.000.940.950.870.754.06
219KLIST shuffle5a llength 1001.000.950.910.820.725.20
220KLIST shuffle5a llength 10001.000.940.910.810.7313.94
221KLIST shuffle5a llength 100001.000.960.970.920.89-=-
222KLIST shuffle6 llength 11.000.95-=--=--=--=-
223KLIST shuffle6 llength 101.000.94-=--=--=--=-
224KLIST shuffle6 llength 1001.000.88-=--=--=--=-
225KLIST shuffle6 llength 10001.000.88-=--=--=--=-
226KLIST shuffle6 llength 100001.000.91-=--=--=--=-
227LIST append to list1.001.011.601.601.201.20
228LIST concat APPEND 2x101.001.031.661.080.830.50
229LIST concat APPEND 2x1001.001.101.301.130.980.26
230LIST concat APPEND 2x10001.001.071.251.130.950.20
231LIST concat APPEND 2x100001.001.081.221.090.960.17
232LIST concat CONCAT 2x101.001.121.202.651.931.69
233LIST concat CONCAT 2x1001.001.151.1614.7412.424.64
234LIST concat CONCAT 2x10001.001.281.2028.8024.346.98
235LIST concat CONCAT 2x100001.001.081.2524.5521.555.43
236LIST concat EVAL/LAPPEND 2x101.001.361.622.501.761.47
237LIST concat EVAL/LAPPEND 2x1001.000.980.992.892.403.46
238LIST concat EVAL/LAPPEND 2x10001.000.830.733.913.635.44
239LIST concat EVAL/LAPPEND 2x100001.000.950.765.043.394.92
240LIST concat FOREACH/LAPPEND 2x101.001.462.152.031.432.39
241LIST concat FOREACH/LAPPEND 2x1001.000.752.522.212.112.81
242LIST concat FOREACH/LAPPEND 2x10001.000.762.272.172.042.57
243LIST concat FOREACH/LAPPEND 2x100001.000.752.292.171.932.55
244LIST concat SET 2x101.001.011.140.950.850.57
245LIST concat SET 2x1001.001.061.151.090.950.29
246LIST concat SET 2x10001.001.061.171.090.910.23
247LIST concat SET 2x100001.001.021.211.050.930.21
248LIST exact search, first item1.001.050.710.710.7155.36
249LIST exact search, last item1.000.970.900.900.8211.59
250LIST exact search, middle item1.000.980.850.850.6331.92
251LIST exact search, non-item1.000.990.940.940.884.29
252LIST exact search, typed item1.001.151.641.641.5120.96
253LIST exact search, untyped item1.001.000.900.900.9011.35
254LIST index first element1.001.140.960.960.9614.83
255LIST index last element1.001.080.850.850.8520.76
256LIST index middle element1.001.080.910.910.9119.18
257LIST insert an item at "end"1.001.071.141.020.846.75
258LIST insert an item at middle1.001.181.261.131.013.59
259LIST insert an item at start1.001.211.331.211.022.98
260LIST iterate list1.001.322.862.632.82280.32
261LIST join list1.001.141.011.000.761.15
262LIST large, early range1.001.090.940.940.758.29
263LIST large, late range1.001.160.970.970.789.34
264LIST length, pure list1.001.080.960.960.9681.34
265LIST list1.000.951.090.950.812.31
266LIST lset foreach l1.001.12=8.4=8.4=8.4=8.4
267LIST lset foreach list1.001.11=8.4=8.4=8.4=8.4
268LIST lset foreach ""s l1.001.22=8.4=8.4=8.4=8.4
269LIST lset foreach ""s list1.001.21=8.4=8.4=8.4=8.4
270LIST regexp search, first item1.001.821.622.270.6550.65
271LIST regexp search, last item1.006.536.346.401.084.61
272LIST regexp search, non-item1.007.217.027.010.872.60
273LIST remove first element1.001.161.301.120.992.67
274LIST remove in mixed list1.001.441.4826.141.233.45
275LIST remove last element1.001.181.311.060.943.87
276LIST remove middle element1.001.141.251.121.003.43
277LIST replace first el with multiple1.001.141.261.080.962.95
278LIST replace first element1.001.061.170.990.862.90
279LIST replace in mixed list1.001.351.4125.871.223.61
280LIST replace last el with multiple1.001.051.130.950.897.69
281LIST replace last element1.001.041.150.970.856.82
282LIST replace middle el with multiple1.001.111.201.080.965.45
283LIST replace middle element1.001.051.080.960.845.26
284LIST replace range1.004.344.484.302.6915.05
285LIST small, early range1.001.110.950.950.6311.11
286LIST small, late range1.001.180.980.980.6515.03
287LIST sort1.000.920.920.860.821.10
288LIST sorted search, first item1.000.950.600.600.6045.92
289LIST sorted search, last item1.001.064.193.873.5550.00
290LIST sorted search, middle item1.001.071.331.331.0049.50
291LIST sorted search, non-item1.001.1111.4811.4810.8250.82
292LIST sorted search, typed item1.001.104.034.033.6950.67
293LIST typed sort1.001.081.460.930.844.89
294LOOP for (to 1000)1.001.132.042.142.1612.85
295LOOP for, iterate list1.001.402.753.042.64127.57
296LOOP for, iterate string1.001.142.222.121.9212.09
297LOOP foreach, iterate list1.000.671.011.061.012.85
298LOOP foreach, iterate string1.000.700.991.721.682.40
299LOOP while (to 1000)1.001.152.062.172.1712.82
300LOOP while 1 (to 1000)1.001.322.322.532.6417.28
301MAP (chars)-case regsub1.000.910.810.900.190.27
302MAP http mapReply1.001.591.451.491.270.58
303MAP regsub -nocase, no match1.000.972.172.030.900.99
304MAP regsub 1 val1.001.033.953.920.671.18
305MAP regsub 1 val -nocase1.000.962.582.540.720.91
306MAP regsub 2 val1.001.006.666.610.631.02
307MAP regsub 2 val -nocase1.001.105.004.930.670.88
308MAP regsub 3 val1.001.086.286.260.580.94
309MAP regsub 3 val -nocase1.000.954.694.670.580.81
310MAP regsub 4 val1.000.986.156.090.580.90
311MAP regsub 4 val -nocase1.000.954.664.610.600.80
312MAP regsub short1.001.263.443.890.801.95
313MAP regsub, no match1.000.987.246.881.742.28
314MAP string -nocase, no match1.000.919.119.22nomapnomap
315MAP string 1 val1.000.996.926.61nomapnomap
316MAP string 1 val -nocase1.001.017.537.70nomapnomap
317MAP string 2 val1.001.023.603.54nomapnomap
318MAP string 2 val -nocase1.000.985.605.63nomapnomap
319MAP string 3 val1.001.123.683.76nomapnomap
320MAP string 3 val -nocase1.001.445.875.90nomapnomap
321MAP string 4 val1.001.003.103.17nomapnomap
322MAP string 4 val -nocase1.000.974.934.99nomapnomap
323MAP string short1.000.930.850.85nomapnomap
324MAP string, no match1.000.998.878.96nomapnomap
325MAP |-case regsub1.000.980.850.940.250.38
326MAP |-case strmap1.001.011.251.25nomapnomap
327MATRIX mult 5x51.000.901.481.491.426.18
328MATRIX mult 10x101.000.891.421.421.276.69
329MATRIX mult 15x151.000.881.341.341.217.08
330MATRIX transposition-01.000.842.352.312.015.17
331MATRIX transposition-11.001.313.513.863.2636.60
332MD5 msg len 101.000.951.000.97-=--=-
333MD5 msg len 1001.000.920.960.93-=--=-
334MD5 msg len 10001.000.900.940.90-=--=-
335MD5 msg len 100001.000.890.930.89-=--=-
336MTHD array stored proc call1.001.000.810.810.40-=-
337MTHD call absolute1.000.981.081.080.86-=-
338MTHD call relative1.001.011.100.920.92-=-
339MTHD direct ns proc call1.000.950.581.160.58-=-
340MTHD imported ns proc call1.001.021.131.130.56-=-
341MTHD indirect proc eval1.001.041.041.871.87-=-
342MTHD indirect proc eval #21.001.761.921.921.92-=-
343MTHD inline call1.000.871.161.161.16-=-
344MTHD interp alias proc call1.001.101.491.491.00-=-
345MTHD ns lookup call1.001.050.821.311.10-=-
346MTHD switch method call1.000.810.701.281.05-=-
347NS alternating1.001.010.891.270.55-=-
348PARSE html form upload (7978)1.001.111.471.351.13-=-
349PARSE html form upload (993570)1.001.081.491.391.18-=-
350PROC do-nothing, no args1.000.990.702.820.700.70
351PROC do-nothing, one arg1.001.110.660.660.660.66
352PROC empty, no args1.000.932.228.892.222.22
353PROC empty, use args1.001.004.262.132.132.13
354PROC explicit return1.000.680.780.390.390.78
355PROC explicit return (2)1.001.031.311.311.311.96
356PROC explicit return (3)1.001.040.650.650.650.65
357PROC heavily commented1.000.960.640.640.6446.15
358PROC implicit return1.001.661.190.600.601.19
359PROC implicit return (2)1.001.040.640.640.641.27
360PROC implicit return (3)1.000.970.650.650.650.65
361PROC local links with global1.001.972.432.051.948.84
362PROC local links with upvar1.001.802.281.841.779.00
363PROC local links with variable1.001.722.201.761.089.14
364RE 1-char long-end1.001.441.250.9914.0914.42
365RE 1-char long-end catching1.001.341.401.199.269.72
366RE 1-char long-middle1.001.191.011.0110.8511.56
367RE 1-char long-middle catching1.001.181.231.236.296.71
368RE 1-char long-start1.001.100.950.950.713.07
369RE 1-char long-start catching1.001.191.281.280.901.73
370RE 1-char short1.001.111.150.920.690.92
371RE 1-char short catching1.001.161.321.320.930.77
372RE basic1.001.021.020.770.771.02
373RE basic catching1.001.261.251.250.830.69
374RE c-comment long1.001.080.880.880.881.39
375RE c-comment long catching1.001.021.021.040.520.83
376RE c-comment long nomatch1.001.261.100.990.140.78
377RE c-comment long nomatch catching1.001.251.020.980.170.75
378RE c-comment long pmatch1.001.231.021.024.514.51
379RE c-comment long pmatch catching1.001.200.990.994.104.62
380RE c-comment many *s1.001.211.020.991.081.61
381RE c-comment many *s catching1.001.091.051.080.530.97
382RE c-comment nomatch1.001.071.011.010.500.67
383RE c-comment nomatch catching1.001.050.880.880.440.88
384RE c-comment simple1.001.040.960.960.570.67
385RE c-comment simple catching1.001.021.111.130.350.32
386RE count all matches1.001.100.962.482.654.65
387RE extract all matches1.001.080.952.922.235.15
388RE literal regexp1.001.261.130.990.560.56
389RE n-char long-end1.001.261.021.2813.9714.09
390RE n-char long-end catching1.001.161.121.268.028.13
391RE n-char long-middle1.001.231.001.0011.1311.63
392RE n-char long-middle catching1.001.211.241.195.555.87
393RE n-char long-start1.001.240.900.900.683.17
394RE n-char long-start catching1.001.151.251.250.751.56
395RE n-char short1.001.100.860.860.640.86
396RE n-char short catching1.001.111.281.210.770.64
397RE static anchored match1.000.973.163.161.271.90
398RE static anchored match dot1.003.522.692.691.081.61
399RE static anchored nomatch1.000.991.851.231.231.85
400RE static anchored nomatch dot1.001.691.651.101.101.65
401RE static l-anchored match1.001.091.722.301.151.72
402RE static l-anchored nomatch1.001.091.221.221.221.22
403RE static long match1.001.052.412.411.543.51
404RE static long nomatch1.001.152.972.801.222.62
405RE static r-anchored match1.000.962.662.131.061.60
406RE static r-anchored nomatch1.000.972.092.091.051.57
407RE static short match1.000.962.702.161.081.62
408RE static short nomatch1.000.981.671.671.111.11
409RE var ***= directive match1.003.112.702.70ERRERR
410RE var ***= directive nomatch1.003.482.832.83ERRERR
411RE var . match1.001.781.631.630.812.44
412RE var ^$ nomatch1.001.421.171.171.172.73
413RE var-based regexp1.001.110.921.050.790.92
414READ 595K, cat1.001.051.881.550.721.00
415READ 595K, gets1.001.112.311.870.951.52
416READ 595K, glob-grep match1.001.071.831.730.931.59
417READ 595K, glob-grep nomatch1.001.082.452.291.171.65
418READ 595K, read1.001.012.222.1915.3616.05
419READ 595K, read & size1.001.002.192.190.8115.97
420READ 595K, read dyn buf1.000.992.168.3+8.3+8.3+
421READ 595K, read small buf1.000.981.108.3+8.3+8.3+
422READ 3050b, cat1.001.101.671.520.710.99
423READ 3050b, gets1.001.072.081.770.981.51
424READ 3050b, glob-grep match1.001.311.831.660.941.56
425READ 3050b, glob-grep nomatch1.001.122.222.121.121.58
426READ 3050b, read1.000.971.571.540.721.12
427READ 3050b, read & size1.000.941.511.510.701.04
428READ 3050b, read dyn buf1.000.991.628.3+8.3+8.3+
429READ 3050b, read small buf1.001.031.148.3+8.3+8.3+
430READ bin 595K, cat1.001.902.702.371.051.48
431READ bin 595K, gets1.001.903.632.911.482.39
432READ bin 595K, glob-grep match1.002.213.483.241.783.03
433READ bin 595K, glob-grep nomatch1.002.024.223.972.042.88
434READ bin 595K, read1.002.092.082.0752.4654.82
435READ bin 595K, read & size1.002.082.072.072.7754.42
436READ bin 595K, read dyn buf1.002.002.018.3+8.3+8.3+
437READ bin 595K, read small buf1.001.031.038.3+8.3+8.3+
438READ bin 3050b, cat1.001.672.311.930.881.20
439READ bin 3050b, gets1.001.662.902.461.311.99
440READ bin 3050b, glob-grep match1.001.301.891.861.061.63
441READ bin 3050b, glob-grep nomatch1.001.342.432.361.211.67
442READ bin 3050b, read1.001.041.151.121.331.85
443READ bin 3050b, read & size1.001.101.021.071.201.72
444READ bin 3050b, read dyn buf1.000.970.918.3+8.3+8.3+
445READ bin 3050b, read small buf1.001.001.008.3+8.3+8.3+
446SHA (A) msg len 101.001.181.521.44-=--=-
447SHA (A) msg len 1001.001.171.521.43-=--=-
448SHA (A) msg len 10001.001.201.581.49-=--=-
449SHA (A) msg len 100001.001.211.581.49-=--=-
450SHA (B) msg len 10-=-635.91850.00807.00-=--=-
451SHA (B) msg len 100-=-1136.331549.001485.00-=--=-
452SHA (B) msg len 1000-=-8333.7511358.0010988.00-=--=-
453SHA (B) msg len 10000-=-79133.80109731.0106398.0-=--=-
454SPLIT iter, 4000 uchars1.000.720.981.521.391.99
455SPLIT iter, 4010 chars1.000.680.941.551.361.95
456SPLIT iter, rand 100 c1.000.961.330.950.73-=-
457SPLIT iter, rand 1000 c1.000.911.191.381.13-=-
458SPLIT iter, rand 10000 c1.000.821.251.861.50-=-
459SPLIT on 'c', 4000 uchars1.000.872.272.861.054.02
460SPLIT on 'c', 4010 chars1.000.832.122.541.083.54
461SPLIT on 'cz', 4000 uchars1.000.981.591.990.811.95
462SPLIT on 'cz', 4010 chars1.000.971.732.050.862.04
463SPLIT on 'cû', 4000 uchars1.001.001.431.730.711.74
464SPLIT on 'cû', 4010 chars1.000.991.641.950.591.83
465SPLIT, 4000 uchars1.000.890.912.932.440.70
466SPLIT, 4010 chars1.000.690.762.612.190.61
467SPLIT, rand 100 c1.001.391.420.720.53-=-
468SPLIT, rand 1000 c1.000.960.981.250.99-=-
469SPLIT, rand 10000 c1.000.970.993.002.38-=-
470STR append1.001.101.381.221.145.19
471STR append (1KB + 1KB)1.001.081.651.491.166.12
472STR append (1MB + (1b + 1K + 1b) * 100)1.001.011.881.881.868.24
473STR append (1MB + 1KB * 20)1.001.001.981.971.979.25
474STR append (1MB + 1KB * 1000)1.001.001.631.611.596.24
475STR append (1MB + 1KB)1.001.002.012.011.999.18
476STR append (1MB + 1MB * 3)1.001.001.261.261.256.19
477STR append (1MB + 1MB * 5)1.001.002.002.002.006.80
478STR append (1MB + 2b * 1000)1.001.012.112.082.068.08
479STR append (10KB + 1KB)1.001.011.201.200.9214.22
480STR first (failure)1.001.100.930.930.863.56
481STR first (failure) utf1.001.044.144.060.873.48
482STR first (success)1.001.101.441.080.7211.51
483STR first (success) utf1.001.121.461.090.7311.68
484STR first (total failure)1.001.080.530.360.363.83
485STR first (total failure) utf1.001.020.620.440.354.06
486STR index 01.000.931.001.000.6711.71
487STR index 1001.001.001.061.060.7013.73
488STR index 5001.000.900.980.980.6512.05
489STR info locals match1.001.081.151.100.943.79
490STR last (failure)1.001.010.930.930.642.01
491STR last (success)1.001.1118.7518.750.6918.40
492STR last (total failure)1.001.000.870.870.462.66
493STR length (==4010)1.001.050.930.930.9316.74
494STR length growing (1000)1.001.032.522.572.476.29
495STR length growing uc (1000)1.001.022.612.572.326.32
496STR length of a LIST1.001.091.011.011.0115.66
497STR length static str1.000.991.221.221.223.05
498STR match, complex (failure 2)1.001.0912.2912.314.004.02
499STR match, complex (failure)1.001.0210.9510.903.605.37
500STR match, complex (success early)1.001.101.631.630.8213.47
501STR match, complex (success late)1.001.008.118.112.824.06
502STR match, complex (total failure)1.001.0515.0315.035.067.59
503STR match, exact (failure)1.001.021.251.250.621.25
504STR match, exact (success)1.000.971.211.210.611.21
505STR match, exact -nocase (failure)1.001.021.161.161.161.73
506STR match, exact -nocase (success)1.001.101.151.150.771.15
507STR match, simple (failure)1.000.981.111.110.561.67
508STR match, simple (success)1.001.111.151.150.571.72
509STR range, index 100..200 of 40101.001.110.850.850.5611.55
510STR repeat, 4010 chars * 101.001.010.991.431.6310.83
511STR repeat, 4010 chars * 1001.001.011.022.112.249.93
512STR repeat, abcdefghij * 101.001.020.881.174.0911.99
513STR repeat, abcdefghij * 1001.001.000.951.7911.9136.04
514STR repeat, abcdefghij * 10001.001.011.301.7415.1747.53
515STR replace, equal replacement1.001.044.854.930.976.71
516STR replace, longer replacement1.001.074.994.910.926.41
517STR replace, no replacement1.001.035.575.481.107.58
518STR reverse iter/append, 10 c1.001.102.001.921.573.66
519STR reverse iter/append, 10 uc1.001.021.981.891.553.62
520STR reverse iter/append, 100 c1.001.022.142.131.744.51
521STR reverse iter/append, 100 uc1.001.042.182.161.744.55
522STR reverse iter/append, 400 c1.001.012.322.281.936.75
523STR reverse iter/append, 400 uc1.001.082.142.081.756.13
524STR reverse iter/set, 10 c1.001.131.571.491.183.54
525STR reverse iter/set, 10 uc1.001.091.451.451.233.37
526STR reverse iter/set, 100 c1.001.191.611.551.223.87
527STR reverse iter/set, 100 uc1.001.221.501.421.123.62
528STR reverse iter/set, 400 c1.001.101.511.391.194.78
529STR reverse iter/set, 400 uc1.001.081.411.361.144.36
530STR reverse recursive, 10 c1.001.111.231.200.962.21
531STR reverse recursive, 10 uc1.001.101.261.230.982.26
532STR reverse recursive, 100 c1.001.121.261.200.912.18
533STR reverse recursive, 100 uc1.001.091.981.590.902.22
534STR reverse recursive, 400 c1.001.041.171.140.978.0+
535STR reverse recursive, 400 uc1.001.112.502.270.968.0+
536STR str $a eq $b1.001.091.611.611.614.84
537STR str $a eq $b (same obj)1.001.101.611.611.614.84
538STR str $a equal ""1.001.091.781.781.336.22
539STR str $a ne $b1.001.231.831.521.524.27
540STR str $a ne $b (same obj)1.001.071.591.591.594.46
541STR str num == ""1.000.991.121.121.125.20
542STR string compare1.001.171.641.311.311.97
543STR string compare ""1.001.001.541.231.233.70
544STR string compare long1.000.991.021.020.994.43
545STR string compare long (same obj)1.001.2113.3613.3613.0158.56
546STR string compare mixed long1.001.060.780.730.712.75
547STR string compare uni long1.001.050.991.020.863.73
548STR string equal ""1.001.211.561.561.564.67
549STR string equal long (!= len)1.001.075.585.455.4526.39
550STR string equal long (== len)1.001.001.051.051.025.61
551STR string equal long (same obj)1.001.1012.5412.2312.2367.71
552STR string equal mixed long1.001.0711.8311.8311.5461.83
553STR string equal uni long1.001.011.051.050.914.31
554STR/LIST length, obj shimmer1.001.011.211.170.010.47
555SWITCH 1st true1.002.462.261.811.817.24
556SWITCH 2nd true1.002.782.461.971.977.88
557SWITCH 9th true1.002.962.502.502.008.00
558SWITCH default true1.003.123.052.542.548.12
559TRACE all set (rwu)1.001.311.020.760.761.53
560TRACE no trace set1.000.950.970.770.771.16
561TRACE read1.001.621.050.790.791.83
562TRACE unset1.001.250.990.740.741.49
563TRACE write1.001.321.011.011.011.51
564UNSET catch var !exist1.000.620.490.550.370.37
565UNSET catch var exists1.001.691.870.930.931.40
566UNSET info check var !exist1.001.361.111.111.111.67
567UNSET info check var exists1.001.610.940.940.941.88
568UNSET nocomplain var !exist1.001.233.763.762.822.82
569UNSET nocomplain var exists1.001.090.930.930.931.39
570UNSET var exists1.000.650.590.590.290.59
571VAR 'array set' of 100 elems1.001.171.811.771.543.11
572VAR 100 'set's in array1.001.030.870.870.992.54
573VAR access global1.001.081.821.821.461.82
574VAR access local proc arg1.000.670.620.620.621.85
575VAR access locally set1.001.431.021.021.022.54
576VAR access upvar1.001.231.561.561.562.34
577VAR incr global var 1000x1.000.881.461.361.488.02
578VAR incr local var 1000x1.000.851.451.401.488.02
579VAR incr upvar var 1000x1.000.901.421.381.497.86
580VAR mset1.001.341.951.631.635.54
581VAR mset (foreach)1.001.091.170.780.783.11
582VAR ref absolute1.000.650.930.950.728.0+
583VAR ref local1.001.402.272.382.278.0+
584VAR ref variable1.001.284.654.834.208.0+
585VAR set array element1.001.250.850.850.851.28
586VAR set scalar1.001.050.620.620.621.25
587WORDCOUNT wc11.001.091.121.060.430.59
588WORDCOUNT wc21.001.042.622.661.171.58
589WORDCOUNT wc31.001.032.642.701.131.24
589BENCHMARKS1:8.5b2.12:8.4.173:8.3.54:8.2.35:8.0.56:7.6p2
 FINISHED 2007-11-16 11:43:32

Category Performance