History log of /freebsd-10.1-release/tools/tools/syscall_timing/syscall_timing.c
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 272461 02-Oct-2014 gjb

Copy stable/10@r272459 to releng/10.1 as part of
the 10.1-RELEASE process.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

# 260627 14-Jan-2014 pluknet

MFC r257705:

Clean up -Wtautological-compare -Wformat warnings.


# 256281 10-Oct-2013 gjb

Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


# 236690 06-Jun-2012 kib

Do not execute a needed statement with side-effect in assert().

MFC after: 3 days


# 236686 06-Jun-2012 kib

Add gettimeofday() test.

MFC after: 3 days


# 214261 24-Oct-2010 rwatson

Add microbenchmark for create/unlink of a zero-byte file.

Sponsored by: Google, Inc.
MFC after: 2 weeks


# 214202 22-Oct-2010 rwatson

Validate syscall_timing test names before starting to provide earlier
feedback regarding user error.

Provide default loop and timing settings.

Add a new test that just times pread() without the open()/close().

Mark tests requiring a path argument so we can provide better feedback
to the user than EFAULT on (null).

Sponsored by: Google, Inc.
MFC after: 2 weeks


# 214185 21-Oct-2010 rwatson

Universally use uintmax_t in syscall_timing; rearrange arithmetic to
suffer fewer rounding errors with smaller numbers; fix argc validation
so multiple tests run on a single command line.

Sponsored by: Google, Inc.
MFC after: 2 weeks


# 214154 21-Oct-2010 rwatson

Add Cambridge/Google tag since the copyright has been updated.

MFC after: 2 weeks


# 214151 21-Oct-2010 rwatson

Further syscall_timing improvements: allow an arbitrary "path" string
argument to be passed on the command line, allowing file-related tests
to be pointed at wherever desired.

Sponsored by: Google, Inc.
MFC after: 2 weeks


# 214145 21-Oct-2010 rwatson

Fix bug in recent syscall_timing change: measure the number of iterations
each loop, rather than once up front. The distinction is unimportant
when doing a fix iteration count, but when using a timer, it should vary.

Sponsored by: Google, Inc.
MFC after: 2 weeks


# 214142 21-Oct-2010 rwatson

Further enhancements to syscall_timing:

- Use getopt rather than hand-parsed arguments
- Allow iterations to be specified and/or a new number of seconds bound
on the number of iterations
- Fix printout of timer resolution
- Add new tests, such as TCP and UDP socket creation, and open/read/close
of /dev/zero and /dev/null.

Sponsored by: Google, Inc.
MFC after: 2 weeks


# 214135 21-Oct-2010 rwatson

Improve the structure and implementation of the syscall_timing
microbenchmark suite:

- Use common benchmark_start/benchmark_stop routines to simplify
individual benchmarks.
- Add a central table of tests with names, where new tests can be
hooked in easily.
- Add new benchmarks for dup, shm_open, shm_open + fstat, fork,
vfork, vfork + exec, chroot, setuid.
- Accept a number of loops, not just a number of iterations.
- Report results more usefully in a table.

Sponsored by: Google, Inc.
MFC after: 2 weeks


# 148681 03-Aug-2005 rwatson

Add a few more system call timing cases:

Rename current socket creation test to socket_stream.
Add new socket_dgram test.
Add new socketpair_stream test.
Add new socketpair_dgram test.


# 144850 10-Apr-2005 rwatson

Centralize usage in usage(), and use in preference to fprintf().

List possible tests in usage().

When running a test, print the test name.


# 135952 30-Sep-2004 rwatson

Add syscall_timing, a simple timing micro-benchmark for some
characteristic system calls. I've been sending this to people for
a while, and figured it would be more efficient to just put it in
CVS.