lmbench.8 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. .\" $Id$
  2. .TH LMBENCH 8 "$Date$" "(c)1994 Larry McVoy" "LMBENCH"
  3. .SH NAME
  4. lmbench \- system benchmarks
  5. .SH DESCRIPTION
  6. .B lmbench
  7. is a series of micro benchmarks intended to measure basic operating
  8. system and hardware system metrics. The benchmarks fall into three
  9. general classes: bandwidth, latency, and ``other''.
  10. .SH BANDWIDTH MEASUREMENTS
  11. Data movement is fundemental to the performance on most computer systems.
  12. The bandwidth measurements are intended to show how the system can move
  13. data. The results of the bandwidth metrics can be compared but care
  14. must be taken to understand what it is that is being compared. The
  15. bandwidth benchmarks can be reduced to two main components: operating
  16. system overhead and memory speeds. The bandwidth benchmarks report
  17. their results as megabytes moved per second but please note that the
  18. data moved is \fBnot\fP necessarily the same as the memory bandwidth
  19. used to move the data. Consult the individual man pages for more
  20. information.
  21. .P
  22. Each of the bandwidth benchmarks is listed below with a brief overview of the
  23. intent of the benchmark.
  24. .TP 14
  25. bw_file_rd
  26. reading and summing of a file via the read(2) interface.
  27. .TP
  28. bw_mem
  29. memory bandwidth (read, write, copy).
  30. .TP
  31. bw_mmap_rd
  32. reading and summing of a file via the memory mapping mmap(2) interface.
  33. .TP
  34. bw_pipe
  35. copying data via a pipe.
  36. .TP
  37. bw_unix
  38. copying data via a Unix socket.
  39. .TP
  40. bw_tcp
  41. reading of data via a TCP/IP socket.
  42. .SH LATENCY MEASUREMENTS
  43. Control messages are also fundemental to the performance on most
  44. computer systems. The latency measurements are intended to show how fast
  45. a system can be told to do some operation. The results of the
  46. latency metrics can be compared to each other
  47. for the most part. In particular, the
  48. pipe, rpc, tcp, and udp transactions are all identical benchmarks
  49. carried out over different system abstractions.
  50. .P
  51. Latency numbers here should mostly be in microseconds per operation.
  52. .TP 14
  53. lat_connect
  54. the time it takes to establish a TCP/IP connection.
  55. .TP
  56. lat_connect_unix
  57. the time it takes to establish a Unix connection.
  58. .TP
  59. lat_ctx
  60. context switching; the number and size of processes is varied.
  61. .TP
  62. lat_fs
  63. creating and deleting small files.
  64. .TP
  65. lat_pagefault
  66. the time it takes to fault in a page from a file.
  67. .TP
  68. lat_mem_rd
  69. memory read latency (accurate to the ~2-5 nanosecond range,
  70. reported in nanoseconds).
  71. .TP
  72. lat_mmap
  73. time to set up a memory mapping.
  74. .TP
  75. lat_pipe
  76. ``hot potato'' transaction through a Unix pipe.
  77. .TP
  78. lat_proc
  79. process creation times (various sorts).
  80. .TP
  81. lat_rpc
  82. ``hot potato'' transaction through Sun RPC over UDP or TCP.
  83. .TP
  84. lat_syscall
  85. non trivial entry into the system.
  86. .TP
  87. lat_tcp
  88. ``hot potato'' transaction through TCP.
  89. .TP
  90. lat_udp
  91. ``hot potato'' transaction through UDP.
  92. .SH OTHER MEASUREMENTS
  93. .TP 14
  94. mhz
  95. processor cycle time.
  96. .TP
  97. disk
  98. seek latencies and zone bandwidths.
  99. .TP
  100. clock
  101. timing subsystem parameters.
  102. .TP
  103. enough
  104. timing interval duration required for accurate timing results.
  105. .TP
  106. timing_o
  107. overhead incurred by gettimeofday() to measure timing intervals.
  108. .TP
  109. loop_o
  110. for() loop overhead.
  111. .SH ACKNOWLEDGEMENT
  112. Funding for the development of these tools was provided by Sun
  113. Microsystems Computer Corporation.
  114. .SH COPYING
  115. The benchmarking code is distributed under the GPL with additional
  116. restrictions, see the COPYING file.
  117. .SH "SEE ALSO"
  118. lmbench(3), timing(3), results(3), reporting(3),
  119. bargraph(1), graph(1), pgraph(1),
  120. disk(8), clock(8), enough(8), timing_o(8), loop_o(8),
  121. bw_file_rd(8), bw_mem(8), bw_mmap_rd(8), bw_pipe(8), bw_unix(8),
  122. lat_connect(8), lat_ctx(8), lat_fcntl(8), lat_fifo(8), lat_fs(8),
  123. lat_http(8), lat_mem_rd(8), lat_mmap(8), lat_pagefault(8),
  124. lat_pipe(8), lat_proc(8), lat_rpc(8), lat_select(8), lat_syscall(8),
  125. lat_tcp(8), lat_udp(8), lat_unix(8), lat_unix_connect(8).