|
160
|
1 /* Copyright Joyent, Inc. and other Node contributors. All rights reserved.
|
|
|
2 *
|
|
|
3 * Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
|
4 * of this software and associated documentation files (the "Software"), to
|
|
|
5 * deal in the Software without restriction, including without limitation the
|
|
|
6 * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
|
|
7 * sell copies of the Software, and to permit persons to whom the Software is
|
|
|
8 * furnished to do so, subject to the following conditions:
|
|
|
9 *
|
|
|
10 * The above copyright notice and this permission notice shall be included in
|
|
|
11 * all copies or substantial portions of the Software.
|
|
|
12 *
|
|
|
13 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
|
14 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
|
15 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
|
16 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
|
17 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
|
18 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
|
|
19 * IN THE SOFTWARE.
|
|
|
20 */
|
|
|
21
|
|
|
22 BENCHMARK_DECLARE (sizes)
|
|
|
23 BENCHMARK_DECLARE (loop_count)
|
|
|
24 BENCHMARK_DECLARE (loop_count_timed)
|
|
|
25 BENCHMARK_DECLARE (loop_alive)
|
|
|
26 BENCHMARK_DECLARE (ping_pongs)
|
|
|
27 BENCHMARK_DECLARE (ping_udp1)
|
|
|
28 BENCHMARK_DECLARE (ping_udp10)
|
|
|
29 BENCHMARK_DECLARE (ping_udp100)
|
|
|
30 BENCHMARK_DECLARE (tcp_write_batch)
|
|
|
31 BENCHMARK_DECLARE (tcp4_pound_100)
|
|
|
32 BENCHMARK_DECLARE (tcp4_pound_1000)
|
|
|
33 BENCHMARK_DECLARE (pipe_pound_100)
|
|
|
34 BENCHMARK_DECLARE (pipe_pound_1000)
|
|
|
35 BENCHMARK_DECLARE (tcp_pump100_client)
|
|
|
36 BENCHMARK_DECLARE (tcp_pump1_client)
|
|
|
37 BENCHMARK_DECLARE (pipe_pump100_client)
|
|
|
38 BENCHMARK_DECLARE (pipe_pump1_client)
|
|
|
39
|
|
|
40 BENCHMARK_DECLARE (tcp_multi_accept2)
|
|
|
41 BENCHMARK_DECLARE (tcp_multi_accept4)
|
|
|
42 BENCHMARK_DECLARE (tcp_multi_accept8)
|
|
|
43
|
|
|
44 /* Run until X packets have been sent/received. */
|
|
|
45 BENCHMARK_DECLARE (udp_pummel_1v1)
|
|
|
46 BENCHMARK_DECLARE (udp_pummel_1v10)
|
|
|
47 BENCHMARK_DECLARE (udp_pummel_1v100)
|
|
|
48 BENCHMARK_DECLARE (udp_pummel_1v1000)
|
|
|
49 BENCHMARK_DECLARE (udp_pummel_10v10)
|
|
|
50 BENCHMARK_DECLARE (udp_pummel_10v100)
|
|
|
51 BENCHMARK_DECLARE (udp_pummel_10v1000)
|
|
|
52 BENCHMARK_DECLARE (udp_pummel_100v100)
|
|
|
53 BENCHMARK_DECLARE (udp_pummel_100v1000)
|
|
|
54 BENCHMARK_DECLARE (udp_pummel_1000v1000)
|
|
|
55
|
|
|
56 /* Run until X seconds have elapsed. */
|
|
|
57 BENCHMARK_DECLARE (udp_timed_pummel_1v1)
|
|
|
58 BENCHMARK_DECLARE (udp_timed_pummel_1v10)
|
|
|
59 BENCHMARK_DECLARE (udp_timed_pummel_1v100)
|
|
|
60 BENCHMARK_DECLARE (udp_timed_pummel_1v1000)
|
|
|
61 BENCHMARK_DECLARE (udp_timed_pummel_10v10)
|
|
|
62 BENCHMARK_DECLARE (udp_timed_pummel_10v100)
|
|
|
63 BENCHMARK_DECLARE (udp_timed_pummel_10v1000)
|
|
|
64 BENCHMARK_DECLARE (udp_timed_pummel_100v100)
|
|
|
65 BENCHMARK_DECLARE (udp_timed_pummel_100v1000)
|
|
|
66 BENCHMARK_DECLARE (udp_timed_pummel_1000v1000)
|
|
|
67
|
|
|
68 BENCHMARK_DECLARE (getaddrinfo)
|
|
|
69 BENCHMARK_DECLARE (fs_stat)
|
|
|
70 BENCHMARK_DECLARE (async1)
|
|
|
71 BENCHMARK_DECLARE (async2)
|
|
|
72 BENCHMARK_DECLARE (async4)
|
|
|
73 BENCHMARK_DECLARE (async8)
|
|
|
74 BENCHMARK_DECLARE (async_pummel_1)
|
|
|
75 BENCHMARK_DECLARE (async_pummel_2)
|
|
|
76 BENCHMARK_DECLARE (async_pummel_4)
|
|
|
77 BENCHMARK_DECLARE (async_pummel_8)
|
|
|
78 BENCHMARK_DECLARE (queue_work)
|
|
|
79 BENCHMARK_DECLARE (spawn)
|
|
|
80 BENCHMARK_DECLARE (thread_create)
|
|
|
81 BENCHMARK_DECLARE (million_async)
|
|
|
82 BENCHMARK_DECLARE (million_timers)
|
|
|
83 HELPER_DECLARE (tcp4_blackhole_server)
|
|
|
84 HELPER_DECLARE (tcp_pump_server)
|
|
|
85 HELPER_DECLARE (pipe_pump_server)
|
|
|
86 HELPER_DECLARE (tcp4_echo_server)
|
|
|
87 HELPER_DECLARE (pipe_echo_server)
|
|
|
88
|
|
|
89 TASK_LIST_START
|
|
|
90 BENCHMARK_ENTRY (sizes)
|
|
|
91 BENCHMARK_ENTRY (loop_count)
|
|
|
92 BENCHMARK_ENTRY (loop_count_timed)
|
|
|
93 BENCHMARK_ENTRY (loop_alive)
|
|
|
94
|
|
|
95 BENCHMARK_ENTRY (ping_pongs)
|
|
|
96 BENCHMARK_HELPER (ping_pongs, tcp4_echo_server)
|
|
|
97
|
|
|
98 BENCHMARK_ENTRY (ping_udp1)
|
|
|
99 BENCHMARK_ENTRY (ping_udp10)
|
|
|
100 BENCHMARK_ENTRY (ping_udp100)
|
|
|
101
|
|
|
102 BENCHMARK_ENTRY (tcp_write_batch)
|
|
|
103 BENCHMARK_HELPER (tcp_write_batch, tcp4_blackhole_server)
|
|
|
104
|
|
|
105 BENCHMARK_ENTRY (tcp_pump100_client)
|
|
|
106 BENCHMARK_HELPER (tcp_pump100_client, tcp_pump_server)
|
|
|
107
|
|
|
108 BENCHMARK_ENTRY (tcp_pump1_client)
|
|
|
109 BENCHMARK_HELPER (tcp_pump1_client, tcp_pump_server)
|
|
|
110
|
|
|
111 BENCHMARK_ENTRY (tcp4_pound_100)
|
|
|
112 BENCHMARK_HELPER (tcp4_pound_100, tcp4_echo_server)
|
|
|
113
|
|
|
114 BENCHMARK_ENTRY (tcp4_pound_1000)
|
|
|
115 BENCHMARK_HELPER (tcp4_pound_1000, tcp4_echo_server)
|
|
|
116
|
|
|
117 BENCHMARK_ENTRY (pipe_pump100_client)
|
|
|
118 BENCHMARK_HELPER (pipe_pump100_client, pipe_pump_server)
|
|
|
119
|
|
|
120 BENCHMARK_ENTRY (pipe_pump1_client)
|
|
|
121 BENCHMARK_HELPER (pipe_pump1_client, pipe_pump_server)
|
|
|
122
|
|
|
123 BENCHMARK_ENTRY (pipe_pound_100)
|
|
|
124 BENCHMARK_HELPER (pipe_pound_100, pipe_echo_server)
|
|
|
125
|
|
|
126 BENCHMARK_ENTRY (pipe_pound_1000)
|
|
|
127 BENCHMARK_HELPER (pipe_pound_1000, pipe_echo_server)
|
|
|
128
|
|
|
129 BENCHMARK_ENTRY (tcp_multi_accept2)
|
|
|
130 BENCHMARK_ENTRY (tcp_multi_accept4)
|
|
|
131 BENCHMARK_ENTRY (tcp_multi_accept8)
|
|
|
132
|
|
|
133 BENCHMARK_ENTRY (udp_pummel_1v1)
|
|
|
134 BENCHMARK_ENTRY (udp_pummel_1v10)
|
|
|
135 BENCHMARK_ENTRY (udp_pummel_1v100)
|
|
|
136 BENCHMARK_ENTRY (udp_pummel_1v1000)
|
|
|
137 BENCHMARK_ENTRY (udp_pummel_10v10)
|
|
|
138 BENCHMARK_ENTRY (udp_pummel_10v100)
|
|
|
139 BENCHMARK_ENTRY (udp_pummel_10v1000)
|
|
|
140 BENCHMARK_ENTRY (udp_pummel_100v100)
|
|
|
141 BENCHMARK_ENTRY (udp_pummel_100v1000)
|
|
|
142 BENCHMARK_ENTRY (udp_pummel_1000v1000)
|
|
|
143
|
|
|
144 BENCHMARK_ENTRY (udp_timed_pummel_1v1)
|
|
|
145 BENCHMARK_ENTRY (udp_timed_pummel_1v10)
|
|
|
146 BENCHMARK_ENTRY (udp_timed_pummel_1v100)
|
|
|
147 BENCHMARK_ENTRY (udp_timed_pummel_1v1000)
|
|
|
148 BENCHMARK_ENTRY (udp_timed_pummel_10v10)
|
|
|
149 BENCHMARK_ENTRY (udp_timed_pummel_10v100)
|
|
|
150 BENCHMARK_ENTRY (udp_timed_pummel_10v1000)
|
|
|
151 BENCHMARK_ENTRY (udp_timed_pummel_100v100)
|
|
|
152 BENCHMARK_ENTRY (udp_timed_pummel_100v1000)
|
|
|
153 BENCHMARK_ENTRY (udp_timed_pummel_1000v1000)
|
|
|
154
|
|
|
155 BENCHMARK_ENTRY (getaddrinfo)
|
|
|
156
|
|
|
157 BENCHMARK_ENTRY (fs_stat)
|
|
|
158
|
|
|
159 BENCHMARK_ENTRY (async1)
|
|
|
160 BENCHMARK_ENTRY (async2)
|
|
|
161 BENCHMARK_ENTRY (async4)
|
|
|
162 BENCHMARK_ENTRY (async8)
|
|
|
163 BENCHMARK_ENTRY (async_pummel_1)
|
|
|
164 BENCHMARK_ENTRY (async_pummel_2)
|
|
|
165 BENCHMARK_ENTRY (async_pummel_4)
|
|
|
166 BENCHMARK_ENTRY (async_pummel_8)
|
|
|
167 BENCHMARK_ENTRY (queue_work)
|
|
|
168
|
|
|
169 BENCHMARK_ENTRY (spawn)
|
|
|
170 BENCHMARK_ENTRY (thread_create)
|
|
|
171 BENCHMARK_ENTRY (million_async)
|
|
|
172 BENCHMARK_ENTRY (million_timers)
|
|
|
173 TASK_LIST_END
|