benchmark-list.h 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  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. BENCHMARK_DECLARE (sizes)
  22. BENCHMARK_DECLARE (loop_count)
  23. BENCHMARK_DECLARE (loop_count_timed)
  24. BENCHMARK_DECLARE (ping_pongs)
  25. BENCHMARK_DECLARE (tcp_write_batch)
  26. BENCHMARK_DECLARE (tcp4_pound_100)
  27. BENCHMARK_DECLARE (tcp4_pound_1000)
  28. BENCHMARK_DECLARE (pipe_pound_100)
  29. BENCHMARK_DECLARE (pipe_pound_1000)
  30. BENCHMARK_DECLARE (tcp_pump100_client)
  31. BENCHMARK_DECLARE (tcp_pump1_client)
  32. BENCHMARK_DECLARE (pipe_pump100_client)
  33. BENCHMARK_DECLARE (pipe_pump1_client)
  34. BENCHMARK_DECLARE (tcp_multi_accept2)
  35. BENCHMARK_DECLARE (tcp_multi_accept4)
  36. BENCHMARK_DECLARE (tcp_multi_accept8)
  37. /* Run until X packets have been sent/received. */
  38. BENCHMARK_DECLARE (udp_pummel_1v1)
  39. BENCHMARK_DECLARE (udp_pummel_1v10)
  40. BENCHMARK_DECLARE (udp_pummel_1v100)
  41. BENCHMARK_DECLARE (udp_pummel_1v1000)
  42. BENCHMARK_DECLARE (udp_pummel_10v10)
  43. BENCHMARK_DECLARE (udp_pummel_10v100)
  44. BENCHMARK_DECLARE (udp_pummel_10v1000)
  45. BENCHMARK_DECLARE (udp_pummel_100v100)
  46. BENCHMARK_DECLARE (udp_pummel_100v1000)
  47. BENCHMARK_DECLARE (udp_pummel_1000v1000)
  48. /* Run until X seconds have elapsed. */
  49. BENCHMARK_DECLARE (udp_timed_pummel_1v1)
  50. BENCHMARK_DECLARE (udp_timed_pummel_1v10)
  51. BENCHMARK_DECLARE (udp_timed_pummel_1v100)
  52. BENCHMARK_DECLARE (udp_timed_pummel_1v1000)
  53. BENCHMARK_DECLARE (udp_timed_pummel_10v10)
  54. BENCHMARK_DECLARE (udp_timed_pummel_10v100)
  55. BENCHMARK_DECLARE (udp_timed_pummel_10v1000)
  56. BENCHMARK_DECLARE (udp_timed_pummel_100v100)
  57. BENCHMARK_DECLARE (udp_timed_pummel_100v1000)
  58. BENCHMARK_DECLARE (udp_timed_pummel_1000v1000)
  59. BENCHMARK_DECLARE (getaddrinfo)
  60. BENCHMARK_DECLARE (fs_stat)
  61. BENCHMARK_DECLARE (async1)
  62. BENCHMARK_DECLARE (async2)
  63. BENCHMARK_DECLARE (async4)
  64. BENCHMARK_DECLARE (async8)
  65. BENCHMARK_DECLARE (async_pummel_1)
  66. BENCHMARK_DECLARE (async_pummel_2)
  67. BENCHMARK_DECLARE (async_pummel_4)
  68. BENCHMARK_DECLARE (async_pummel_8)
  69. BENCHMARK_DECLARE (spawn)
  70. BENCHMARK_DECLARE (thread_create)
  71. BENCHMARK_DECLARE (million_async)
  72. BENCHMARK_DECLARE (million_timers)
  73. HELPER_DECLARE (tcp4_blackhole_server)
  74. HELPER_DECLARE (tcp_pump_server)
  75. HELPER_DECLARE (pipe_pump_server)
  76. HELPER_DECLARE (tcp4_echo_server)
  77. HELPER_DECLARE (pipe_echo_server)
  78. HELPER_DECLARE (dns_server)
  79. TASK_LIST_START
  80. BENCHMARK_ENTRY (sizes)
  81. BENCHMARK_ENTRY (loop_count)
  82. BENCHMARK_ENTRY (loop_count_timed)
  83. BENCHMARK_ENTRY (ping_pongs)
  84. BENCHMARK_HELPER (ping_pongs, tcp4_echo_server)
  85. BENCHMARK_ENTRY (tcp_write_batch)
  86. BENCHMARK_HELPER (tcp_write_batch, tcp4_blackhole_server)
  87. BENCHMARK_ENTRY (tcp_pump100_client)
  88. BENCHMARK_HELPER (tcp_pump100_client, tcp_pump_server)
  89. BENCHMARK_ENTRY (tcp_pump1_client)
  90. BENCHMARK_HELPER (tcp_pump1_client, tcp_pump_server)
  91. BENCHMARK_ENTRY (tcp4_pound_100)
  92. BENCHMARK_HELPER (tcp4_pound_100, tcp4_echo_server)
  93. BENCHMARK_ENTRY (tcp4_pound_1000)
  94. BENCHMARK_HELPER (tcp4_pound_1000, tcp4_echo_server)
  95. BENCHMARK_ENTRY (pipe_pump100_client)
  96. BENCHMARK_HELPER (pipe_pump100_client, pipe_pump_server)
  97. BENCHMARK_ENTRY (pipe_pump1_client)
  98. BENCHMARK_HELPER (pipe_pump1_client, pipe_pump_server)
  99. BENCHMARK_ENTRY (pipe_pound_100)
  100. BENCHMARK_HELPER (pipe_pound_100, pipe_echo_server)
  101. BENCHMARK_ENTRY (pipe_pound_1000)
  102. BENCHMARK_HELPER (pipe_pound_1000, pipe_echo_server)
  103. BENCHMARK_ENTRY (tcp_multi_accept2)
  104. BENCHMARK_ENTRY (tcp_multi_accept4)
  105. BENCHMARK_ENTRY (tcp_multi_accept8)
  106. BENCHMARK_ENTRY (udp_pummel_1v1)
  107. BENCHMARK_ENTRY (udp_pummel_1v10)
  108. BENCHMARK_ENTRY (udp_pummel_1v100)
  109. BENCHMARK_ENTRY (udp_pummel_1v1000)
  110. BENCHMARK_ENTRY (udp_pummel_10v10)
  111. BENCHMARK_ENTRY (udp_pummel_10v100)
  112. BENCHMARK_ENTRY (udp_pummel_10v1000)
  113. BENCHMARK_ENTRY (udp_pummel_100v100)
  114. BENCHMARK_ENTRY (udp_pummel_100v1000)
  115. BENCHMARK_ENTRY (udp_pummel_1000v1000)
  116. BENCHMARK_ENTRY (udp_timed_pummel_1v1)
  117. BENCHMARK_ENTRY (udp_timed_pummel_1v10)
  118. BENCHMARK_ENTRY (udp_timed_pummel_1v100)
  119. BENCHMARK_ENTRY (udp_timed_pummel_1v1000)
  120. BENCHMARK_ENTRY (udp_timed_pummel_10v10)
  121. BENCHMARK_ENTRY (udp_timed_pummel_10v100)
  122. BENCHMARK_ENTRY (udp_timed_pummel_10v1000)
  123. BENCHMARK_ENTRY (udp_timed_pummel_100v100)
  124. BENCHMARK_ENTRY (udp_timed_pummel_100v1000)
  125. BENCHMARK_ENTRY (udp_timed_pummel_1000v1000)
  126. BENCHMARK_ENTRY (getaddrinfo)
  127. BENCHMARK_ENTRY (fs_stat)
  128. BENCHMARK_ENTRY (async1)
  129. BENCHMARK_ENTRY (async2)
  130. BENCHMARK_ENTRY (async4)
  131. BENCHMARK_ENTRY (async8)
  132. BENCHMARK_ENTRY (async_pummel_1)
  133. BENCHMARK_ENTRY (async_pummel_2)
  134. BENCHMARK_ENTRY (async_pummel_4)
  135. BENCHMARK_ENTRY (async_pummel_8)
  136. BENCHMARK_ENTRY (spawn)
  137. BENCHMARK_ENTRY (thread_create)
  138. BENCHMARK_ENTRY (million_async)
  139. BENCHMARK_ENTRY (million_timers)
  140. TASK_LIST_END