summaryrefslogtreecommitdiffstats
path: root/tcllib/examples/csv/Bench.csv
blob: 98f30d9947cc55f9cfdf57e3e4798318c657d1dd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
000,VERSIONS:,1:8.4a3,1:8.3.3,1:8.2.3,1:8.1.1,1:8.0.5,1:7.6p2,1:7.5p1
001,CATCH return ok,11,6,7,4,5,28,17
002,CATCH return error,70,64,275,54,204,146,33
003,CATCH no catch used,10,6,7,13,4,24,9
004,IF if true numeric,17,11,13,7,9,152,61
005,IF elseif true numeric,20,15,16,20,11,299,292
006,IF else true numeric,20,15,16,15,11,318,82
007,IF if true num/num,17,12,281,22,9,329,174
008,IF if false num/num,17,12,13,13,9,202,182
009,IF if false al/num,27,20,20,29,17,467,121
010,IF if true al/al,31,26,26,51,169,292,184
011,IF if false al/al,31,25,25,51,60,217,243
012,IF if true al,32,25,25,42,51,214,76
013,IF elseif true al,47,39,338,89,156,358,154
014,IF else true al,46,40,42,71,51,292,323
015,SWITCH first true,63,42,103,58,73,391,241
016,SWITCH second true,58,39,153,65,62,340,282
017,SWITCH ninth true,67,44,238,73,112,391,284
018,SWITCH default true,62,38,46,73,77,492,292
019,DATA create in a list,4883,4083,15014,12925,7886,40180,29501
020,DATA create in an array,5388,4916,19172,12827,16792,53723,40784
021,DATA access in a list,4028,3546,15346,10386,7024,182889,175028
022,DATA access in an array,3507,3223,14156,6966,7640,43232,39744
023,EVAL cmd eval in list obj var,26,22,52,40,84,27,26
024,EVAL cmd eval as list,24,21,49,88,144,22,52
025,EVAL cmd eval as string,60,50,54,79,90,26,64
026,EVAL cmd and mixed lists,3347,3546,32485,21937,13914,3017,2112
027,EVAL list cmd and mixed lists,3403,3591,40366,19014,14703,2936,2259
028,EVAL list cmd and pure lists,543,582,40115,21974,12611,2653,2245
029,EXPR unbraced,153,167,502,23,331,313,365
030,EXPR braced,29,25,29,53,92,505,386
031,EXPR inline,31,30,40,68,59,321,177
032,EXPR one operand,11,6,158,9,11,47,65
033,EXPR ten operands,18,13,97,13,20,159,141
034,EXPR fifty operands,48,43,45,71,85,708,430
035,EXPR incr with incr,16,11,10,16,22,31,45
036,EXPR incr with expr,11,7,9,11,13,73,74
037,FCOPY std:      160010 bytes,10069,10242,46300,25104,26557
038,FCOPY binary:   160010 bytes,9932,9892,41776,25211,
039,FCOPY encoding: 160010 bytes,9818,9831,44598,25972,
040,KLIST shuffle0 llength 1,144,127,554,271,367
041,KLIST shuffle0 llength 10,457,413,1592,901,728
042,KLIST shuffle0 llength 100,3986,3552,13565,8229,6484
043,KLIST shuffle0 llength 1000,44083,41766,164223,92480,81157
044,KLIST shuffle0 llength 10000,563245,533804,2073612,1214997,1161217
045,KLIST shuffle1 llength 1,84,85,367,163,149
046,KLIST shuffle1 llength 10,358,333,1371,718,634
047,KLIST shuffle1 llength 100,6374,5238,12737,9243,8576
048,KLIST shuffle1 llength 1000,1190696,1194146,1770024,1762135,1736049
049,KLIST shuffle1a llength 1,110,100,94,172,150
050,KLIST shuffle1a llength 10,474,368,404,768,910
051,KLIST shuffle1a llength 100,4667,3625,3833,8986,9480
052,KLIST shuffle1a llength 1000,47818,37340,39248,84798,95305
053,KLIST shuffle1a llength 10000,474513,380522,408005,861405,1004602
054,KLIST shuffle2 llength 1,104,99,108,196,229
055,KLIST shuffle2 llength 10,440,375,481,938,1080
056,KLIST shuffle2 llength 100,3762,3625,4250,8904,9803
057,KLIST shuffle2 llength 1000,39573,37028,45651,95513,116933
058,KLIST shuffle2 llength 10000,474558,433771,527055,1176566,1304458
059,KLIST shuffle3 llength 1,104,98,102,217,170
060,KLIST shuffle3 llength 10,380,335,376,786,832
061,KLIST shuffle3 llength 100,3408,2883,3413,7161,7632
062,KLIST shuffle3 llength 1000,38716,33237,37667,87353,82985
063,KLIST shuffle3 llength 10000,945771,777699,844383,1789387,1732151
064,KLIST shuffle4 llength 1,114,102,100,202,178
065,KLIST shuffle4 llength 10,431,374,416,837,876
066,KLIST shuffle4 llength 100,3871,3250,3758,8572,8278
067,KLIST shuffle4 llength 1000,40201,32119,38186,82985,80450
068,KLIST shuffle4 llength 10000,393369,330472,398724,874454,834612
069,"STR/LIST length, obj shimmer",2390,2767,2333,905,28,2585,2638
070,"LIST length, pure list",18,13,13,21,18,2023,1837
071,STR length of a LIST,15,12,12,529,23,525,400
072,"LIST exact search, first item",19,11,14,17,32,2303,1693
073,"LIST exact search, middle item",69,25,27,46,38,1787,1944
074,"LIST exact search, last item",132,48,50,90,111,2261,2009
075,"LIST exact search, non-item",314,110,121,212,220,2099,2118
076,"LIST sorted search, first item",23,12,12,16,29,1862,1610
077,"LIST sorted search, middle item",24,26,26,42,40,1623,2252
078,"LIST sorted search, last item",24,52,49,84,121,2145,1784
079,"LIST sorted search, non-item",23,111,122,201,257,1999,2057
080,"LIST exact search, untyped item",131,47,51,80,101,2166,2218
081,"LIST exact search, typed item",128,48,49,77,111,2072,1872
082,"LIST sorted search, typed item",19,46,50,93,104,1887,2221
083,LIST sort,3299,3578,3293,6723,7021,10959,9644
084,LIST typed sort,2739,2943,2660,4737,4651,28889,23969
085,LIST remove first element,317,296,363,806,866,625,522
086,LIST remove middle element,325,291,358,692,876,656,677
087,LIST remove last element,318,293,360,689,879,754,675
088,LIST replace first element,310,289,346,722,917,727,978
089,LIST replace middle element,316,286,353,693,1045,1024,876
090,LIST replace last element,316,283,346,963,832,1450,1243
091,LIST replace first el with multiple,333,304,372,819,938,702,612
092,LIST replace middle el with multiple,319,310,351,691,736,1088,1123
093,LIST replace last el with multiple,319,282,347,813,740,1413,1313
094,LIST replace range,294,282,343,744,866,1198,971
095,LIST remove in mixed list,389,374,2195,833,999,829,617
096,LIST replace in mixed list,377,352,2184,1054,925,756,592
097,LIST index first element,18,10,13,16,25,451,375
098,LIST index middle element,17,10,13,16,23,516,536
099,LIST index last element,17,11,13,13,17,622,663
100,LIST insert an item at start,291,298,366,775,805,729,563
101,LIST insert an item at middle,269,266,370,684,667,978,630
102,"LIST insert an item at ""end""",257,254,349,670,1013,1779,1200
103,"LIST small, early range",23,19,16,42,35,500,383
104,"LIST small, late range",23,18,16,28,38,618,685
105,"LIST large, early range",37,29,24,54,108,511,697
106,"LIST large, late range",40,30,21,81,131,567,551
107,LIST append to list,409,401,396,917,1032,737,682
108,LIST join list,1053,1072,1066,1818,1453,3672,3167
109,"LOOP for, iterate list",6616,5198,5372,13766,9653,662376,583297
110,"LOOP foreach, iterate list",1919,1845,1952,3750,3553,11561,12556
111,LOOP for (to 1000),2566,2674,3065,4639,4867,66896,73851
112,LOOP while (to 1000),2568,2942,3065,4551,4637,69891,80404
113,"LOOP for, iterate string",6456,9440,9637,141594,14530,219770,199570
114,"LOOP foreach, iterate string",2240,2249,3955,9099,8147,15468,13206
115,MAP string 1 val,679,5931,6028,9096,(8.2+),(8.2+),(8.2+)
116,MAP string 2 val,1562,6643,6877,12943,(8.2+),(8.2+),(8.2+)
117,MAP string 3 val,1836,7673,7832,12825,(8.2+),(8.2+),(8.2+)
118,MAP string 4 val,2510,8429,8622,17267,(8.2+),(8.2+),(8.2+)
119,MAP string 1 val -nocase,3497,10259,10381,17685,(8.2+),(8.2+),(8.2+)
120,MAP string 2 val -nocase,6218,14570,15024,27379,(8.2+),(8.2+),(8.2+)
121,MAP string 3 val -nocase,8364,19344,18973,35569,(8.2+),(8.2+),(8.2+)
122,MAP string 4 val -nocase,10135,21861,22132,39660,(8.2+),(8.2+),(8.2+)
123,MAP regsub 1 val,3702,3954,4303,9663,1830,4430,3684
124,MAP regsub 2 val,16066,16981,18176,41500,4184,9394,11576
125,MAP regsub 3 val,21671,23258,24817,52315,6075,11441,12456
126,MAP regsub 4 val,26657,29335,31350,67973,8659,15319,13884
127,MAP regsub 1 val -nocase,3686,3913,4332,9463,2766,4729,4488
128,MAP regsub 2 val -nocase,15821,17024,18134,40735,5881,9546,11911
129,MAP regsub 3 val -nocase,20987,23228,24747,52639,8625,12501,14437
130,MAP regsub 4 val -nocase,26227,29397,31314,66937,11664,14510,16818
131,"MAP string, no match",926,7712,8028,14020,(8.2+),(8.2+),(8.2+)
132,"MAP string -nocase, no match",6726,18725,18933,35683,(8.2+),(8.2+),(8.2+)
133,"MAP regsub, no match",1149,2764,2830,6704,1843,3352,4823
134,"MAP regsub -nocase, no match",1151,2785,2890,6609,3563,4499,5249
135,MAP string short,37,41,39,116,(8.2+),(8.2+),(8.2+)
136,MAP regsub short,164,180,193,308,154,244,432
137,MTHD direct ns proc call,10,6,8,3,7
138,MTHD imported ns proc call,11,6,7,5,7
139,MTHD interp alias proc call,25,18,18,18,9
140,MTHD indirect proc eval,36,29,61,56,72
141,MTHD indirect proc eval #2,58,48,57,81,107
142,MTHD array stored proc call,14,9,10,22,19
143,MTHD switch method call,50,38,83,119,172
144,MTHD ns lookup call,99,81,216,374,376
145,MTHD inline call,5,3,3,2,2
146,PROC explicit return,15,7,8,7,7,11,11
147,PROC implicit return,11,6,7,4,11,16,15
148,PROC explicit return (2),12,7,8,13,13,14,10
149,PROC implicit return (2),10,6,7,10,18,21,24
150,PROC explicit return (3),10,7,7,4,14,14,25
151,PROC implicit return (3),10,6,7,3,12,10,18
152,PROC heavily commented,10,5,6,12,5,629,753
153,"PROC do-nothing, no args",8,5,28,38,4,5,2
154,"PROC do-nothing, one arg",10,5,6,9,8,15,21
155,PROC local links with global,1579,1569,1626,3586,4533,7955,11505
156,PROC local links with upvar,1287,1166,1387,2806,2922,8371,10317
157,PROC local links with variable,1195,1101,1334,2614,1050,9091,9212
158,"READ 595K, gets",340064,299797,306109,819327,372526,978472,985676
159,"READ 595K, read",77751,97698,97019,227338,2936958,3774669,3834017
160,"READ 595K, read & size",77606,97909,97074,242255,124776,3696432,3704813
161,"READ 3050b, gets",1869,1641,2052,4118,954,2074,2201
162,"READ 3050b, read",522,494,494,789,748,503,415
163,"READ 3050b, read & size",569,534,530,790,410,467,361
164,"BREAD 595K, gets",350077,292326,304961,833500,365165,953379,979961
165,"BREAD 595K, read",50105,50454,50018,228963,2952787,3640795,3741298
166,"BREAD 595K, read & size",50303,50486,50140,246365,87019,3685978,3688120
167,"BREAD 3050b, gets",2097,1777,1774,5220,1062,2208,2178
168,"BREAD 3050b, read",340,347,334,1310,412,458,359
169,"BREAD 3050b, read & size",396,389,369,1144,1230,390,495
170,REGEXP literal regexp,39,37,38,42,31,26,26
171,REGEXP var-based regexp,41,40,40,55,45,30,61
172,REGEXP count all matches,137,139,530,1280,1332,2277,2776
173,REGEXP extract all matches,169,177,616,1790,1129,3068,3620
174,STARTUP time to launch tclsh,21138,20425,18293,85723,102877,70500,90323
175,STR str [string compare],18,26,24,17,26,199,193
176,STR str [string equal],18,25,23,68,38,160,198
177,"STR str $a equal """"",17,26,24,81,52,670,410
178,"STR str num == """"",19,14,24,36,52,338,419
179,STR str $a eq $b,22,33,31,39,56,231,261
180,STR str $a ne $b,23,31,30,85,47,226,265
181,STR str $a eq $b (same obj),22,33,36,161,53,271,338
182,STR str $a ne $b (same obj),21,33,30,28,57,203,235
183,STR length (==4010),15,14,13,678,17,508,867
184,STR index 0,26,19,19,487,30,522,614
185,STR index 100,21,24,19,500,43,491,601
186,STR index 500,21,18,19,483,42,489,493
187,STR index2 0,21,19,19,494,27,485,583
188,STR index2 100,20,19,19,470,26,557,459
189,STR index2 500,21,19,19,484,40,764,468
190,STR first (success),19,16,15,21,33,533,519
191,STR first (failure),120,56,50,123,117,697,822
192,STR first (total failure),109,42,28,54,57,545,631
193,STR last (success),19,229,224,469,18,815,728
194,STR last (failure),90,99,91,185,201,657,859
195,STR last (total failure),82,90,83,135,151,584,1153
196,"STR match, simple (success early)",17,14,13,25,33,503,489
197,"STR match, simple (success late)",16,14,13,11,27,619,502
198,"STR match, simple (failure)",17,15,13,26,36,421,680
199,"STR match, simple (total failure)",16,18,13,17,30,456,378
200,"STR match, complex (success early)",17,23,22,33,35,466,448
201,"STR match, complex (success late)",145,1020,1040,2173,926,1529,1676
202,"STR match, complex (failure)",122,1011,1010,1785,964,1357,1698
203,"STR match, complex (total failure)",90,994,994,1844,1216,1725,1602
204,"STR range, index 100..200 of 4010",26,21,21,716,25,589,609
205,"STR replace, no replacement",79,270,264,570,166,1217,1315
206,"STR replace, equal replacement",92,277,257,526,140,1560,1263
207,"STR replace, longer replacement",95,270,265,551,103,1563,1309
208,"STR repeat, abcdefghij * 10",19,22,22,21,199,997,963
209,"STR repeat, abcdefghij * 100",39,72,74,120,1267,8488,9065
210,"STR repeat, abcdefghij * 1000",245,565,557,798,12264,81587,86928
211,"STR repeat, 4010 chars * 10",314,797,671,1971,1494,11891,7688
212,"STR repeat, 4010 chars * 100",7347,18287,18194,47967,69328,105423,107290
213,"STR reverse iter1, 100 chars",1285,1628,1425,4104,1871,8459,8704
214,"STR reverse iter1, 100 uchars",1264,1768,1436,4448,1864,8250,9034
215,"STR reverse iter2, 100 chars",808,1252,1168,3860,2099,8379,8292
216,"STR reverse iter2, 100 uchars",807,1259,1096,4086,1602,9513,5431
217,"STR reverse recur1, 100 chars",4092,4770,3998,8749,8470,20868,11271
218,"STR reverse recur1, 100 uchars",4169,5467,4767,8794,9075,21634,13821
219,"STR split, 4010 chars",2663,2138,8847,23626,18954,4372,3169
220,"STR split, 12100 uchars",7207,6395,,,
221,"STR split iter, 4010 chars",9349,9372,16664,39846,35962,52886,48521
222,"STR split iter, 12100 uchars",28171,28299,,,
223,STR append,100,82,71,108,164,1055,1145
224,STR append (1KB + 1KB),65,55,49,96,79,236,290
225,STR append (10KB + 1KB),186,193,196,474,75,215,213
226,STR append (1MB + 2b * 1000),37786,70498,74635,178639,12391,82339,84345
227,STR append (1MB + 1KB),29729,63374,61479,136891,68,215,335
228,STR append (1MB + 1KB * 20),29635,64566,61865,127033,270,1551,1724
229,STR append (1MB + 1KB * 1000),66605,94413,101998,177875,10955,78370,81930
230,STR append (1MB + 1MB * 3),126103,153051,157370,282029,218,248,876
231,STR append (1MB + 1MB * 5),157407,303871,315407,1051814,45,543,342
232,STR append (1MB + (1b + 1K + 1b) * 100),33118,63834,69167,290360,2398,8930,9893
233,STR info locals match,828,818,993,2025,1518,8071,9043
234,TRACE no trace set,35,25,26,18,27,42,91
235,TRACE read,35,26,26,16,59,128,113
236,TRACE write,35,25,26,16,55,78,78
237,TRACE unset,35,26,26,16,70,94,112
238,TRACE all set (rwu),35,25,25,18,59,77,105
239,UNSET var exists,14,8,9,8,16,27,37
240,UNSET catch var exists,16,9,10,52,20,61,58
241,UNSET catch var !exist,69,64,59,191,120,77,96
242,UNSET info check var exists,19,14,13,69,27,80,78
243,UNSET info check var !exist,16,11,11,6,17,73,64
244,UNSET nocomplain var exists,14,9,10,35,20,52,56
245,UNSET nocomplain var !exist,14,64,59,157,122,90,109
246,VAR access locally set,14,8,10,18,20,106,67
247,VAR access local proc arg,14,9,10,6,26,88,110
248,VAR access global,34,25,26,101,61,82,121
249,VAR access upvar,36,29,30,103,65,97,101
250,VAR set scalar,10,6,7,4,11,35,74
251,VAR set array element,18,12,14,9,33,59,35
252,VAR 100 'set's in array,162,133,160,296,292,917,827
253,VAR 'array set' of 100 elems,293,251,264,741,816,1063,993