Tcl Source Code

Artifact [14107ffcbf]
Login

Artifact 14107ffcbfae62e6091d10c40d8ca4b362a70fd7:

Attachment "parse.bench" to ticket [455151ffff] added by msofer 2001-08-28 18:42:27.
TCL_INTERP: 1:8.4a4 2:8.4a4
STARTED 2001-08-27 23:36:47 (runbench.tcl v1.11)
Benchmark 1:8.4a4 /CVS/tcl_SF_clean/unix/tclsh
bbccdeefhkllmmmmprrssstuvw 00:04:11 elapsed
Benchmark 2:8.4a4 /CVS/tcl_455151/unix/tclsh
bbccdeefhkllmmmmprrssstuvw 00:04:10 elapsed
000 VERSIONS:                               1:8.4a4 2:8.4a4
001 BASE64 decode 10                            404     403
002 BASE64 decode 100                          3230    3197
003 BASE64 decode 1000                        31424   31002
004 BASE64 decode 10000                      314784  311368
005 BASE64 decode2 10                           439     375
006 BASE64 decode2 100                         3083    3056
007 BASE64 decode2 1000                       31733   30437
008 BASE64 decode2 10000                     300530  298094
009 BASE64 encode 10                            289     291
010 BASE64 encode 100                          2374    2405
011 BASE64 encode 1000                        23665   23374
012 BASE64 encode 10000                      233310  235119
013 BASE64 encode2 10                           262     266
014 BASE64 encode2 100                         2103    2382
015 BASE64 encode2 1000                       20875   21045
016 BASE64 encode2 10000                     207169  209608
017 BIN bitset-v1 1000 chars                  12735   12613
018 BIN bitset-v1 5000 chars                  61574   61688
019 BIN bitset-v1 10000 chars                123284  123447
020 BIN bitset-v2 1000 chars                   6112    5963
021 BIN bitset-v2 5000 chars                  31039   30703
022 BIN bitset-v2 10000 chars                 63476   63060
023 BIN bitset-v3 1000 chars                   2086    2090
024 BIN bitset-v3 5000 chars                  11974   11981
025 BIN bitset-v3 10000 chars                 27298   27205
026 BIN c scan, 1000b                           326     325
027 BIN c scan, 5000b                          1691    1697
028 BIN c scan, 10000b                         4590    4600
029 CATCH no catch used                           3       3
030 CATCH return error                           27      27
031 CATCH return ok                               3       3
032 DATA access in a list                      1414    1362
033 DATA access in an array                    2056    2003
034 DATA create in a list                       945     973
035 DATA create in an array                    2579    2498
036 EVAL cmd and mixed lists                   1242    1484
037 EVAL cmd eval as list                         9       9
038 EVAL cmd eval as string                      21      22
039 EVAL cmd eval in list obj var                10      10
040 EVAL list cmd and mixed lists              1236    1510
041 EVAL list cmd and pure lists                 97      97
042 EXPR braced                                  11      11
043 EXPR fifty operands                          20      19
044 EXPR incr with expr                           3       3
045 EXPR incr with incr                           4       4
046 EXPR inline                                  12      12
047 EXPR one operand                              3       3
048 EXPR ten operands                             6       6
049 EXPR unbraced                                75      80
050 FCOPY binary: 160K                         6359    6380
051 FCOPY encoding: 160K                      23404   23188
052 FCOPY std: 160K                            6445    6494
053 HEAPSORT size 10                            498     497
054 HEAPSORT size 50                           3480    3448
055 HEAPSORT size 100                          7885    7823
056 IF else true al                              17      16
057 IF else true numeric                          7       7
058 IF elseif true al                            16      16
059 IF elseif true numeric                        8       8
060 IF if false al/al                            11      11
061 IF if false al/num                            9       9
062 IF if false num/num                           6       6
063 IF if true al                                11      11
064 IF if true al/al                             11      11
065 IF if true num/num                            6       6
066 IF if true numeric                            6       6
067 IF multi 1st true                             6       6
068 IF multi 2nd true                             7       7
069 IF multi 9th true                            15      15
070 IF multi default true                        15      15
071 KLIST shuffle0 llength 1                     46      46
072 KLIST shuffle0 llength 10                   128     138
073 KLIST shuffle0 llength 100                 1060    1029
074 KLIST shuffle0 llength 1000               11625   11515
075 KLIST shuffle0 llength 10000             185158  184034
076 KLIST shuffle1-s llength 1                   38      38
077 KLIST shuffle1-s llength 10                 178     173
078 KLIST shuffle1-s llength 100               2430    2408
079 KLIST shuffle1-s llength 1000             92259   92397
080 KLIST shuffle1a llength 1                    45      44
081 KLIST shuffle1a llength 10                  196     194
082 KLIST shuffle1a llength 100                1864    1813
083 KLIST shuffle1a llength 1000              18685   18272
084 KLIST shuffle1a llength 10000            193028  188615
085 KLIST shuffle2 llength 1                     42      42
086 KLIST shuffle2 llength 10                   218     218
087 KLIST shuffle2 llength 100                 2060    2034
088 KLIST shuffle2 llength 1000               20861   21000
089 KLIST shuffle2 llength 10000             241484  242878
090 KLIST shuffle3 llength 1                     34      34
091 KLIST shuffle3 llength 10                   146     144
092 KLIST shuffle3 llength 100                 1350    1341
093 KLIST shuffle3 llength 1000               15866   15583
094 KLIST shuffle3 llength 10000             407577  405191
095 KLIST shuffle4 llength 1                     36      41
096 KLIST shuffle4 llength 10                   156     152
097 KLIST shuffle4 llength 100                 1457    1394
098 KLIST shuffle4 llength 1000               14242   13898
099 KLIST shuffle4 llength 10000             147995  144804
100 KLIST shuffle5-s llength 1                   17      18
101 KLIST shuffle5-s llength 10                 120     119
102 KLIST shuffle5-s llength 100               1366    1319
103 KLIST shuffle5-s llength 1000             33046   33011
104 KLIST shuffle5a llength 1                    21      20
105 KLIST shuffle5a llength 10                  129     124
106 KLIST shuffle5a llength 100                1231    1148
107 KLIST shuffle5a llength 1000              14370   13902
108 KLIST shuffle5a llength 10000            389763  385894
109 LIST append to list                         294     300
110 LIST exact search, first item                 7       6
111 LIST exact search, last item                 31      31
112 LIST exact search, middle item               13      14
113 LIST exact search, non-item                  83      84
114 LIST exact search, typed item                21      21
115 LIST exact search, untyped item              31      32
116 LIST index first element                      5       5
117 LIST index last element                       5       5
118 LIST index middle element                     5       5
119 LIST insert an item at "end"                 42      42
120 LIST insert an item at middle                52      52
121 LIST insert an item at start                 53      53
122 LIST iterate list                          2104    2116
123 LIST join list                              529     533
124 LIST large, early range                      13      13
125 LIST large, late range                       13      14
126 LIST length, pure list                        5       4
127 LIST remove first element                    52      57
128 LIST remove in mixed list                    60      55
129 LIST remove last element                     50      51
130 LIST remove middle element                   52      52
131 LIST replace first el with multiple          55      55
132 LIST replace first element                   43      42
133 LIST replace in mixed list                   46      47
134 LIST replace last el with multiple           44      44
135 LIST replace last element                    42      43
136 LIST replace middle el with multiple         49      50
137 LIST replace middle element                  49      43
138 LIST replace range                           51      51
139 LIST small, early range                       9       9
140 LIST small, late range                        9       9
141 LIST sort                                  1301    1305
142 LIST sorted search, first item                7       8
143 LIST sorted search, last item                 7       8
144 LIST sorted search, middle item               7       7
145 LIST sorted search, non-item                  8       7
146 LIST sorted search, typed item                7       7
147 LIST typed sort                            1133    1132
148 LOOP for (to 1000)                         1465    1470
149 LOOP for, iterate list                     1902    1887
150 LOOP for, iterate string                   2674    2689
151 LOOP foreach, iterate list                 1113    1119
152 LOOP foreach, iterate string               1323    1336
153 LOOP while (to 1000)                       1463    1467
154 MAP regsub -nocase, no match                689     670
155 MAP regsub 1 val                           2256    2282
156 MAP regsub 1 val -nocase                   2286    2271
157 MAP regsub 2 val                          10249   10228
158 MAP regsub 2 val -nocase                  10247   10275
159 MAP regsub 3 val                          13762   13774
160 MAP regsub 3 val -nocase                  13723   13734
161 MAP regsub 4 val                          17198   17257
162 MAP regsub 4 val -nocase                  17179   17228
163 MAP regsub short                             97      97
164 MAP regsub, no match                        669     687
165 MAP string -nocase, no match               2627    2588
166 MAP string 1 val                            289     286
167 MAP string 1 val -nocase                   1345    1344
168 MAP string 2 val                            896     788
169 MAP string 2 val -nocase                   2582    2556
170 MAP string 3 val                           1010     965
171 MAP string 3 val -nocase                   3737    3751
172 MAP string 4 val                           1238    1213
173 MAP string 4 val -nocase                   4457    4450
174 MAP string short                             16      15
175 MAP string, no match                        480     482
176 MATRIX mult 5x5                             450     452
177 MATRIX mult 10x10                          2888    2879
178 MATRIX mult 15x15                          9149    9170
179 MATRIX transposition-0                     3638    3725
180 MATRIX transposition-1                     2746    2839
181 MD5 msg len 10                             1315    1310
182 MD5 msg len 100                            2367    2474
183 MD5 msg len 1000                          17051   16760
184 MD5 msg len 10000                        171490  165185
185 MTHD array stored proc call                   5       5
186 MTHD direct ns proc call                      3       3
187 MTHD imported ns proc call                    3       3
188 MTHD indirect proc eval                      13      14
189 MTHD indirect proc eval #2                   21      23
190 MTHD inline call                              1       1
191 MTHD interp alias proc call                  10       9
192 MTHD ns lookup call                          39      39
193 MTHD switch method call                      19      32
194 PROC do-nothing, no args                      2       2
195 PROC do-nothing, one arg                      3       2
196 PROC explicit return                          3       2
197 PROC explicit return (2)                      2       3
198 PROC explicit return (3)                      2       2
199 PROC heavily commented                        2       2
200 PROC implicit return                          3       3
201 PROC implicit return (2)                      3       3
202 PROC implicit return (3)                      2       2
203 PROC local links with global                450     442
204 PROC local links with upvar                 406     402
205 PROC local links with variable              400     391
206 RE 1-char long-end                           51      51
207 RE 1-char long-end catching                  88      88
208 RE 1-char long-middle                        32      37
209 RE 1-char long-middle catching               69      69
210 RE 1-char long-start                         14      14
211 RE 1-char long-start catching                51      50
212 RE 1-char short                              15      14
213 RE 1-char short catching                     51      50
214 RE basic                                     12      13
215 RE basic catching                            55      56
216 RE c-comment long                            61      61
217 RE c-comment long catching                  169     168
218 RE c-comment long nomatch                    98      91
219 RE c-comment long nomatch catching           91      91
220 RE c-comment long pmatch                     99      99
221 RE c-comment long pmatch catching           100     104
222 RE c-comment many *s                        102     103
223 RE c-comment many *s catching               275     276
224 RE c-comment nomatch                         18      18
225 RE c-comment nomatch catching                18      18
226 RE c-comment simple                          31      31
227 RE c-comment simple catching                119     124
228 RE count all matches                         93      92
229 RE extract all matches                      109     108
230 RE literal regexp                            21      21
231 RE n-char long-end                           51      51
232 RE n-char long-end catching                  97      97
233 RE n-char long-middle                        38      33
234 RE n-char long-middle catching               78      78
235 RE n-char long-start                         15      15
236 RE n-char long-start catching                59      60
237 RE n-char short                              15      15
238 RE n-char short catching                     58      59
239 RE var-based regexp                          22      22
240 READ 595K, gets                          166089  164922
241 READ 595K, read                           37079   37151
242 READ 595K, read & dyn buffer              39007   38648
243 READ 595K, read & size                    37085   37056
244 READ 595K, read & small buffer           158430  153100
245 READ 3050b, gets                            888     908
246 READ 3050b, read                            224     223
247 READ 3050b, read & dyn buffer               249     251
248 READ 3050b, read & size                     242     243
249 READ 3050b, read & small buffer             832     811
250 READ bin 595K, gets                      173066  171441
251 READ bin 595K, read                       11459   11066
252 READ bin 595K, read & dyn buffer          12605   12564
253 READ bin 595K, read & size                11487   11089
254 READ bin 595K, read & small buffer       124402  124077
255 READ bin 3050b, gets                        948     940
256 READ bin 3050b, read                         90      88
257 READ bin 3050b, read & dyn buffer           112     112
258 READ bin 3050b, read & size                  97     108
259 READ bin 3050b, read & small buffer         679     673
260 SHA sha1 msg len 10                        3385    3319
261 SHA sha1 msg len 100                       6323    6177
262 SHA sha1 msg len 1000                     48161   46652
263 SHA sha1 msg len 10000                   467242  455128
264 SHA sha1DF msg len 10                      1509    1440
265 SHA sha1DF msg len 100                     2765    2772
266 SHA sha1DF msg len 1000                   21329   21393
267 SHA sha1DF msg len 10000                 210542  211595
268 STARTUP time to launch tclsh               9652    9642
269 STR append                                   30      30
270 STR append (1KB + 1KB)                       19      19
271 STR append (1MB + (1b + 1K + 1b) * 100)    8183    7946
272 STR append (1MB + 1KB * 20)                6835    6781
273 STR append (1MB + 1KB * 1000)             14859   15037
274 STR append (1MB + 1KB)                     6701    6656
275 STR append (1MB + 1MB * 3)                28313   27860
276 STR append (1MB + 1MB * 5)                35048   35042
277 STR append (1MB + 2b * 1000)               8564    8528
278 STR append (10KB + 1KB)                      31      25
279 STR first (failure)                          65      65
280 STR first (success)                           7       7
281 STR first (total failure)                    56      60
282 STR index 0                                   9       8
283 STR index 100                                 8       9
284 STR index 500                                 9       8
285 STR info locals match                       389     392
286 STR last (failure)                           54      54
287 STR last (success)                            6       6
288 STR last (total failure)                     40      40
289 STR length (==4010)                           5       5
290 STR length of a LIST                          5       5
291 STR length static str                         3       3
292 STR match, complex (failure)                 62      62
293 STR match, complex (success early)            8       7
294 STR match, complex (success late)            82      76
295 STR match, complex (total failure)           47      47
296 STR match, simple (failure)                   6       6
297 STR match, simple (success early)             6       6
298 STR match, simple (success late)              7       6
299 STR match, simple (total failure)             6       6
300 STR range, index 100..200 of 4010            10      10
301 STR repeat, 4010 chars * 10                  52      53
302 STR repeat, 4010 chars * 100               1642    1677
303 STR repeat, abcdefghij * 10                   7       7
304 STR repeat, abcdefghij * 100                 29      24
305 STR repeat, abcdefghij * 1000               191     198
306 STR replace, equal replacement               26      26
307 STR replace, longer replacement              27      37
308 STR replace, no replacement                  25      26
309 STR reverse iter/append, 10 c                39      38
310 STR reverse iter/append, 10 uc               39      38
311 STR reverse iter/append, 100 c              265     260
312 STR reverse iter/append, 100 uc             264     259
313 STR reverse iter/append, 400 c             1015    1012
314 STR reverse iter/append, 400 uc            1006     997
315 STR reverse iter/set, 10 c                   43      44
316 STR reverse iter/set, 10 uc                  44      43
317 STR reverse iter/set, 100 c                 375     360
318 STR reverse iter/set, 100 uc                371     362
319 STR reverse iter/set, 400 c                1504    1492
320 STR reverse iter/set, 400 uc               1513    1499
321 STR reverse recursive, 10 c                 106     104
322 STR reverse recursive, 10 uc                 94      93
323 STR reverse recursive, 100 c                985     954
324 STR reverse recursive, 100 uc               917     910
325 STR reverse recursive, 400 c               5338    5335
326 STR reverse recursive, 400 uc              6322    6346
327 STR split iter, 4000 uchars                5530    5545
328 STR split iter, 4010 chars                 5522    5514
329 STR split iter, rand 100 c                  265     266
330 STR split iter, rand 1000 c                1774    1751
331 STR split iter, rand 10000 c              14604   14561
332 STR split, 4000 uchars                     1115    1116
333 STR split, 4010 chars                      1051    1053
334 STR split, rand 100 c                       151     151
335 STR split, rand 1000 c                      659     645
336 STR split, rand 10000 c                    3296    3340
337 STR str $a eq $b                             10      10
338 STR str $a eq $b (same obj)                   9       9
339 STR str $a equal ""                           7       7
340 STR str $a ne $b                             10      10
341 STR str $a ne $b (same obj)                   9       9
342 STR str num == ""                             7       7
343 STR string compare                           10      10
344 STR string compare ""                         9       8
345 STR string compare long                     221     214
346 STR string compare mixed long               490     489
347 STR string compare uni long                 213     220
348 STR string equal ""                           7       7
349 STR/LIST length, obj shimmer               1106    1089
350 SWITCH 1st true                              15      14
351 SWITCH 2nd true                              15      15
352 SWITCH 9th true                              17      17
353 SWITCH default true                          18      18
354 TRACE all set (rwu)                          14      14
355 TRACE no trace set                           14      15
356 TRACE read                                   14      15
357 TRACE unset                                  14      14
358 TRACE write                                  14      15
359 UNSET catch var !exist                       35      30
360 UNSET catch var exists                        5       5
361 UNSET info check var !exist                   5       5
362 UNSET info check var exists                   7       7
363 UNSET nocomplain var !exist                   4       4
364 UNSET nocomplain var exists                   5       5
365 UNSET var exists                              5       5
366 VAR 'array set' of 100 elems                158     161
367 VAR 100 'set's in array                      78      78
368 VAR access global                            15      15
369 VAR access local proc arg                     5       5
370 VAR access locally set                        5       5
371 VAR access upvar                             17      16
372 VAR set array element                         7       7
373 VAR set scalar                                3       3
374 WORDCOUNT wc1                              2615    2625
375 WORDCOUNT wc2                               666     680
376 WORDCOUNT wc3                               605     606
376 BENCHMARKS                              1:8.4a4 2:8.4a4
FINISHED 2001-08-27 23:45:08