1+ {
2+ "suites" : [
3+ {
4+ "name" : " reference before benchmarks" ,
5+ "scenarios" : [
6+ {
7+ "name" : " fibonacci loop" ,
8+ "executions" : 1000000 ,
9+ "time" : 559.685652 ,
10+ "error" : 3.1487334028716933
11+ },
12+ {
13+ "name" : " fibonacci recursive" ,
14+ "executions" : 7934 ,
15+ "time" : 630177.2286362491 ,
16+ "error" : 1.0079477172579856
17+ },
18+ {
19+ "name" : " fibonacci recmemo" ,
20+ "executions" : 629322 ,
21+ "time" : 7945.0529029654135 ,
22+ "error" : 0.5723554930927267
23+ }
24+ ]
25+ },
26+ {
27+ "name" : " bencode" ,
28+ "scenarios" : [
29+ {
30+ "name" : " bencode.encode() [buffer]" ,
31+ "executions" : 35127 ,
32+ "time" : 142342.0572494093 ,
33+ "error" : 1.2212460556968496
34+ },
35+ {
36+ "name" : " bencode.encode() [utf8]" ,
37+ "executions" : 1349 ,
38+ "time" : 3704002.3409933285 ,
39+ "error" : 0.6776323429925276
40+ },
41+ {
42+ "name" : " bencode.encode() [ascii]" ,
43+ "executions" : 1387 ,
44+ "time" : 3604457.93222783 ,
45+ "error" : 0.6959704620115251
46+ },
47+ {
48+ "name" : " bencode.encode() [binary]" ,
49+ "executions" : 1384 ,
50+ "time" : 3611082.62283237 ,
51+ "error" : 0.886904952461389
52+ },
53+ {
54+ "name" : " bencode.decode() [buffer]" ,
55+ "executions" : 42809 ,
56+ "time" : 116795.72767408722 ,
57+ "error" : 0.7320742513453905
58+ },
59+ {
60+ "name" : " bencode.decode() [utf8]" ,
61+ "executions" : 2313 ,
62+ "time" : 2161073.1547773452 ,
63+ "error" : 0.6380497099955478
64+ },
65+ {
66+ "name" : " bencode.decode() [ascii]" ,
67+ "executions" : 2409 ,
68+ "time" : 2074895.296803653 ,
69+ "error" : 0.5471675241633337
70+ },
71+ {
72+ "name" : " bencode.decode() [binary]" ,
73+ "executions" : 2396 ,
74+ "time" : 2086413.753338898 ,
75+ "error" : 0.5403395352166391
76+ }
77+ ]
78+ },
79+ {
80+ "name" : " buffer vs string" ,
81+ "scenarios" : [
82+ {
83+ "name" : " decode buffer" ,
84+ "executions" : 45024 ,
85+ "time" : 111051.06445451315 ,
86+ "error" : 0.5052997397476986
87+ },
88+ {
89+ "name" : " decode string" ,
90+ "executions" : 27973 ,
91+ "time" : 178745.74042827013 ,
92+ "error" : 0.5037603579470834
93+ }
94+ ]
95+ },
96+ {
97+ "name" : " compare decode" ,
98+ "scenarios" : [
99+ {
100+ "name" : " bencode.decode()" ,
101+ "executions" : 44568 ,
102+ "time" : 112188.04153204092 ,
103+ "error" : 0.5311823992431295
104+ },
105+ {
106+ "name" : " bencoding.decode()" ,
107+ "executions" : 54228 ,
108+ "time" : 92203.5159696098 ,
109+ "error" : 0.5519025773079677
110+ },
111+ {
112+ "name" : " bncode.decode()" ,
113+ "executions" : 1570 ,
114+ "time" : 3184351.9987261146 ,
115+ "error" : 4.031632965687692
116+ },
117+ {
118+ "name" : " btparse()" ,
119+ "executions" : 132325 ,
120+ "time" : 37785.48271301719 ,
121+ "error" : 0.49077930951590953
122+ },
123+ {
124+ "name" : " dht.decode()" ,
125+ "executions" : 47400 ,
126+ "time" : 105483.08683544304 ,
127+ "error" : 0.4728875447697615
128+ },
129+ {
130+ "name" : " dhtBencode.decode()" ,
131+ "executions" : 28774 ,
132+ "time" : 173762.59105442412 ,
133+ "error" : 0.4921701716738526
134+ }
135+ ]
136+ },
137+ {
138+ "name" : " compare encode" ,
139+ "scenarios" : [
140+ {
141+ "name" : " bencode.encode()" ,
142+ "executions" : 37666 ,
143+ "time" : 132742.29127064196 ,
144+ "error" : 0.8299521400901717
145+ },
146+ {
147+ "name" : " bencoding.encode()" ,
148+ "executions" : 25 ,
149+ "time" : 195132381.92 ,
150+ "error" : 8.551313598927392
151+ },
152+ {
153+ "name" : " bncode.encode()" ,
154+ "executions" : 1 ,
155+ "time" : 3939521850 ,
156+ "error" : 0
157+ },
158+ {
159+ "name" : " dht.encode()" ,
160+ "executions" : 50 ,
161+ "time" : 99655056.16 ,
162+ "error" : 6.321304669124846
163+ },
164+ {
165+ "name" : " dhtBencode.encode()" ,
166+ "executions" : 14 ,
167+ "time" : 351528698.78571427 ,
168+ "error" : 9.904070184501599
169+ }
170+ ]
171+ },
172+ {
173+ "name" : " encoding length" ,
174+ "scenarios" : [
175+ {
176+ "name" : " bencode.encodingLength(torrent)" ,
177+ "executions" : 162351 ,
178+ "time" : 30797.4295569476 ,
179+ "error" : 2.6093067216240846
180+ },
181+ {
182+ "name" : " bencode.encodingLength(buffer)" ,
183+ "executions" : 1000000 ,
184+ "time" : 1151.522846 ,
185+ "error" : 0.17154410205677803
186+ },
187+ {
188+ "name" : " bencode.encodingLength(string)" ,
189+ "executions" : 1000000 ,
190+ "time" : 4384.510143 ,
191+ "error" : 0.33437787838758865
192+ },
193+ {
194+ "name" : " bencode.encodingLength(number)" ,
195+ "executions" : 1000000 ,
196+ "time" : 557.416746 ,
197+ "error" : 0.29860269449773136
198+ },
199+ {
200+ "name" : " bencode.encodingLength(array<number>)" ,
201+ "executions" : 1000000 ,
202+ "time" : 2784.717913 ,
203+ "error" : 0.20104464676215553
204+ },
205+ {
206+ "name" : " bencode.encodingLength(small object)" ,
207+ "executions" : 311927 ,
208+ "time" : 16029.371202236422 ,
209+ "error" : 0.34310281585091806
210+ }
211+ ]
212+ },
213+ {
214+ "name" : " reference after benchmarks" ,
215+ "scenarios" : [
216+ {
217+ "name" : " fibonacci loop" ,
218+ "executions" : 1000000 ,
219+ "time" : 689.084318 ,
220+ "error" : 0.231909777005114
221+ },
222+ {
223+ "name" : " fibonacci recursive" ,
224+ "executions" : 7080 ,
225+ "time" : 706143.8394067796 ,
226+ "error" : 0.963718658922282
227+ },
228+ {
229+ "name" : " fibonacci recmemo" ,
230+ "executions" : 614393 ,
231+ "time" : 8138.115209645944 ,
232+ "error" : 0.2215156965189563
233+ }
234+ ]
235+ }
236+ ]
237+ }
0 commit comments