]>
git.saurik.com Git - apple/xnu.git/blob - tools/tests/libMicro/bench.sh
6 # The contents of this file are subject to the terms
7 # of the Common Development and Distribution License
8 # (the "License"). You may not use this file except
9 # in compliance with the License.
11 # You can obtain a copy of the license at
12 # src/OPENSOLARIS.LICENSE
13 # or http://www.opensolaris.org/os/licensing.
14 # See the License for the specific language governing
15 # permissions and limitations under the License.
17 # When distributing Covered Code, include this CDDL
18 # HEADER in each file and include the License file at
19 # usr/src/OPENSOLARIS.LICENSE. If applicable,
20 # add the following below this CDDL HEADER, with the
21 # fields enclosed by brackets "[]" replaced with your
22 # own identifying information: Portions Copyright [yyyy]
23 # [name of copyright owner]
29 # Copyright 2007 Sun Microsystems, Inc. All rights reserved.
30 # Use is subject to license terms.
34 # usage function - defines all the options that can be given to this script.
37 echo "$0 [-l] [-h] [name of test]"
38 echo "-l : This option runs the lmbench tests along with the default libmicro tests."
39 echo "-h : Help. This option displays information on how to run the script. "
40 echo "[name of test] : This option runs only the test that is specified"
43 echo "$0 : This is the defualt execution. This will run only the default libmicro tests."
44 echo "$0 -l : This will run the lmbench tests too "
45 echo "$0 getppid : This will run only the getppid tests"
52 lmbench
=2 # to check if only a single test is to be run. e.g, ./bench.sh getppid
54 lmbench
=0 # to run the default libMicro tests, without the lmbench tests.
57 while getopts "lh" OPT_LIST
60 l
) lmbench
=1;; # to run the libmicro tests including the lmbench tests.
71 libmicro_version
=`$tattle -V`
73 case $libmicro_version in
77 echo "ERROR: libMicro version doesn't match 'bench' script version"
81 TMPROOT
=/private
/tmp
/libmicro.$$
82 VARROOT
=/private
/var
/tmp
/libmicro.$$
85 trap "rm -rf $TMPROOT $VARROOT && exit" 0 2
89 TDIR1
=$TMPROOT/0/1/2/3/4/5/6/7/8/9
90 TDIR2
=$TMPROOT/1/2/3/4/5/6/7/8/9/0
92 VDIR1
=$VARROOT/0/1/2/3/4/5/6/7/8/9
93 VDIR2
=$VARROOT/1/2/3/4/5/6/7/8/9/0
96 OPTS
="-E -C 200 -L -S -W"
98 dd if=/dev
/zero of
=$TFILE bs
=1024k count
=10 2>/dev
/null
99 dd if=/dev
/zero of
=$VFILE bs
=1024k count
=10 2>/dev
/null
100 mkdir -p $TDIR1 $TDIR2
101 mkdir -p $VDIR1 $VDIR2
104 /usr
/bin
/touch /private
/var
/tmp
/lmbench
107 # produce benchmark header for easier comparisons
111 if [ -f /usr
/sbin
/psrinfo
]; then
112 p_count
=`psrinfo|wc -l`
113 p_mhz
=`psrinfo -v | awk '/operates/{print $6 "MHz"; exit }'`
114 p_type
=`psrinfo -vp 2>/dev/null | awk '{if (NR == 3) {print $0; exit}}'`
115 p_ipaddr
=`getent hosts $hostname | awk '{print $1}'`
118 if [ -f /proc
/cpuinfo
]; then
119 p_count
=`egrep processor /proc/cpuinfo | wc -l`
120 p_mhz
=`awk -F: '/cpu MHz/{printf("%5.0f00Mhz\n",$2/100); exit}' /proc/cpuinfo`
121 p_type
=`awk -F: '/model name/{print $2; exit}' /proc/cpuinfo`
122 p_ipaddr
=`getent hosts $hostname | awk '{print $1}'`
124 ## Mac OS X specific stuff
125 # first, get ugly output, in case pretty output isn't available
127 p_count
=`sysctl -n hw.physicalcpu`
128 p_mhz
=`sysctl -n hw.cpufrequency`
129 p_type
=`sysctl -n hw.model`
131 if [ -x /usr
/sbin
/system_profiler
]; then
132 # <rdar://4655981> requires this hunk of work-around
133 # grep the XML for the characteristic we need. The key appears twice, so grep for the useful key (with 'string')
134 # use sed to strip off the <string></string> and the tabs in front of the string. So much work for so little result.
136 p_mhz
=`system_profiler -xml -detailLevel mini SPHardwareDataType | \
137 grep -A1 current_processor_speed | grep string | \
138 sed -E 's/<string>(.+)<\/string>/\1/' | sed 's- --g'`
139 p_type
=`system_profiler -xml -detailLevel mini SPHardwareDataType | \
140 grep -A1 cpu_type | grep string | \
141 sed -E 's/<string>(.+)<\/string>/\1/' | sed 's- --g'`
144 # look for en0 (usually ethernet) if that isn't there try en1 (usually wireless) else give up
145 p_ipaddr
=`ipconfig getpacket en0 | grep yiaddr | tr "= " "\n" | grep [0-9]`
146 if [ ! $p_ipaddr ]; then
147 p_ipaddr
=`ipconfig getpacket en1 | grep yiaddr | tr "= " "\n" | grep [0-9]`
148 elif [ ! $p_ipaddr ]; then
153 printf "\n\n!Libmicro_#: %30s\n" $libmicro_version
154 printf "!Options: %30s\n" "$OPTS"
155 printf "!Machine_name: %30s\n" "$hostname"
156 printf "!OS_name: %30s\n" `uname -s`
157 printf "!OS_release: %30s\n" `sw_vers -productVersion`
158 printf "!OS_build: %30.18s\n" "`sw_vers -buildVersion`"
159 printf "!Kernel: %30.50s\n" "`uname -v|cut -d ' ' -f 11`"
160 printf "!Processor: %30s\n" `arch`
161 printf "!#CPUs: %30s\n" $p_count
162 printf "!CPU_MHz: %30s\n" "$p_mhz"
163 printf "!CPU_NAME: %30s\n" "$p_type"
164 printf "!IP_address: %30s\n" "$p_ipaddr"
165 printf "!Run_by: %30s\n" $LOGNAME
166 printf "!Date: %30s\n" "`date '+%D %R'`"
167 printf "!Compiler: %30s\n" `$tattle -c`
168 printf "!Compiler Ver.:%30s\n" "`$tattle -v`"
169 printf "!sizeof(long): %30s\n" `$tattle -s`
170 printf "!extra_CFLAGS: %30s\n" "`$tattle -f`"
171 printf "!TimerRes: %30s\n\n\n" "`$tattle -r`"
173 bin_dir
="$TMPROOT/bin"
176 cp bin
-*/exec_bin
$bin_dir/$A
178 cp .
/apple
/bin
-*/posix_spawn_bin
$bin_dir/$A
183 # Everything below the while loop is input for the while loop if
184 # you have any tests which can't run in the while loop, put
185 # them above this comment
189 # $A contains the command, $B contains the arguments
190 # we echo blank lines and comments
191 # we skip anything which fails to match *$1* (useful if
192 # we only want to test one case, but a nasty hack)
202 if [ $newline -eq 1 ]
213 # Default execution without the lmbench tests.
214 # checks if there is no argument passed by the user.
215 if [ $lmbench -eq 0 ]
218 if [ "${A:0:7}" == "$string" ]
227 if [ $lmbench -ne 1 ]
234 if [ ! -f $bin_dir/$A ]
236 cp bin
-*/$A $bin_dir/$A
241 (cd $TMPROOT && eval "bin/$A $B")
248 # Obligatory null system call: use very short time
249 # for default since SuSe implements this "syscall" in userland
252 getpid
$OPTS -N "getpid" -I 5
253 getppid
$OPTS -N "getppid" -I 5
255 getenv
$OPTS -N "getenv" -s 100 -I 100
256 getenv
$OPTS -N "getenvT2" -s 100 -I 100 -T 2
258 gettimeofday
$OPTS -N "gettimeofday"
260 log
$OPTS -N "log" -I 20 -B 300000
261 exp
$OPTS -N "exp" -I 20 -B 100000
262 lrand48
$OPTS -N "lrand48"
264 memset
$OPTS -N "memset_10" -s 10 -I 10
265 memset
$OPTS -N "memset_256" -s 256 -I 20
266 memset
$OPTS -N "memset_256_u" -s 256 -a 1 -I 20
267 memset
$OPTS -N "memset_1k" -s 1k
-I 100 -B 2000
268 memset
$OPTS -N "memset_4k" -s 4k
-I 250 -B 500
269 memset
$OPTS -N "memset_4k_uc" -s 4k
-u -I 400
271 memset
$OPTS -N "memset_10k" -s 10k
-I 600 -B 500
272 memset
$OPTS -N "memset_1m" -s 1m
-I 200000
273 memset
$OPTS -N "memset_10m" -s 10m
-I 2000000
274 memset
$OPTS -N "memsetP2_10m" -s 10m
-P 2 -I 2000000
276 memrand
$OPTS -N "memrand" -s 40m
-B 10000
278 # This is an elided test and is not ported yet.
279 # Check Makefile.darwin for list of elided tests
280 # cachetocache $OPTS -N "cachetocache" -s 100k -T 2 -I 200
282 isatty
$OPTS -N "isatty_yes"
283 isatty
$OPTS -N "isatty_no" -f $IFILE
285 malloc
$OPTS -N "malloc_10" -s 10 -g 10 -I 50
286 malloc
$OPTS -N "malloc_100" -s 100 -g 10 -I 50
287 malloc
$OPTS -N "malloc_1k" -s 1k
-g 10 -I 50
288 malloc
$OPTS -N "malloc_10k" -s 10k
-g 10 -I 50
289 malloc
$OPTS -N "malloc_100k" -s 100k
-g 10 -I 2000
291 malloc
$OPTS -N "mallocT2_10" -s 10 -g 10 -T 2 -I 200
292 malloc
$OPTS -N "mallocT2_100" -s 100 -g 10 -T 2 -I 200
293 malloc
$OPTS -N "mallocT2_1k" -s 1k
-g 10 -T 2 -I 200
294 malloc
$OPTS -N "mallocT2_10k" -s 10k
-g 10 -T 2 -I 200
295 malloc
$OPTS -N "mallocT2_100k" -s 100k
-g 10 -T 2 -I 10000
297 close
$OPTS -N "close_bad" -B 96 -b
298 close
$OPTS -N "close_tmp" -B 64 -f $TFILE
299 close
$OPTS -N "close_usr" -B 64 -f $VFILE
300 close
$OPTS -N "close_zero" -B 64 -f /dev
/zero
301 close_tcp
$OPTS -N "close_tcp" -B 32
303 memcpy
$OPTS -N "memcpy_10" -s 10 -I 10
304 memcpy
$OPTS -N "memcpy_1k" -s 1k
-I 50
305 memcpy
$OPTS -N "memcpy_10k" -s 10k
-I 800
306 memcpy
$OPTS -N "memcpy_1m" -s 1m
-I 500000
307 memcpy
$OPTS -N "memcpy_10m" -s 10m
-I 5000000
309 strcpy
$OPTS -N "strcpy_10" -s 10 -I 5
310 strcpy
$OPTS -N "strcpy_1k" -s 1k
-I 100
312 strlen
$OPTS -N "strlen_10" -s 10 -I 5
313 strlen
$OPTS -N "strlen_1k" -s 1k
-I 100
315 strchr
$OPTS -N "strchr_10" -s 10 -I 5
316 strchr
$OPTS -N "strchr_1k" -s 1k
-I 200
317 strcmp
$OPTS -N "strcmp_10" -s 10 -I 10
318 strcmp
$OPTS -N "strcmp_1k" -s 1k
-I 200
320 strcasecmp
$OPTS -N "scasecmp_10" -s 10 -I 50 -B 2000
321 strcasecmp
$OPTS -N "scasecmp_1k" -s 1k
-I 20000 -B 100
323 strtol
$OPTS -N "strtol" -I 20
325 # This is an elided test and is not ported yet.
326 # Check Makefile.darwin for list of elided tests
327 # getcontext $OPTS -N "getcontext" -I 100
329 # This is an elided test and is not ported yet.
330 # Check Makefile.darwin for list of elided tests
331 # setcontext $OPTS -N "setcontext" -I 100
333 mutex
$OPTS -N "mutex_st" -I 10
334 mutex
$OPTS -N "mutex_mt" -t -I 10
335 mutex
$OPTS -N "mutex_T2" -T 2 -I 100
337 longjmp
$OPTS -N "longjmp" -I 10
338 siglongjmp
$OPTS -N "siglongjmp" -I 20
340 getrusage
$OPTS -N "getrusage" -I 200
342 times $OPTS -N "times" -I 200
343 time $OPTS -N "time" -I 50
344 localtime_r
$OPTS -N "localtime_r" -I 200
345 strftime
$OPTS -N "strftime" -I 10000 -B 100
347 mktime
$OPTS -N "mktime" -I 500
348 mktime
$OPTS -N "mktimeT2" -T 2 -I 1000
350 cascade_mutex
$OPTS -N "c_mutex_1" -I 50
351 cascade_mutex
$OPTS -N "c_mutex_10" -T 10 -I 5000
352 cascade_mutex
$OPTS -N "c_mutex_200" -T 200 -I 2000000
354 cascade_cond
$OPTS -N "c_cond_1" -I 100
355 cascade_cond
$OPTS -N "c_cond_10" -T 10 -I 3000
356 cascade_cond
$OPTS -N "c_cond_200" -T 200 -I 2000000
358 cascade_lockf
$OPTS -N "c_lockf_1" -I 1000
359 cascade_lockf
$OPTS -N "c_lockf_10" -P 10 -I 50000
360 cascade_lockf
$OPTS -N "c_lockf_200" -P 200 -I 5000000
362 cascade_flock
$OPTS -N "c_flock" -I 1000
363 cascade_flock
$OPTS -N "c_flock_10" -P 10 -I 50000
364 cascade_flock
$OPTS -N "c_flock_200" -P 200 -I 5000000
366 cascade_fcntl
$OPTS -N "c_fcntl_1" -I 2000
367 cascade_fcntl
$OPTS -N "c_fcntl_10" -P 10 -I 20000
368 cascade_fcntl
$OPTS -N "c_fcntl_200" -P 200 -I 5000000
370 file_lock
$OPTS -N "file_lock" -I 1000
372 getsockname
$OPTS -N "getsockname" -I 100
373 getpeername
$OPTS -N "getpeername" -I 100
375 chdir
$OPTS -N "chdir_tmp" -I 2000 $TDIR1 $TDIR2
376 chdir
$OPTS -N "chdir_usr" -I 2000 $VDIR1 $VDIR2
378 chdir
$OPTS -N "chgetwd_tmp" -I 3000 -g $TDIR1 $TDIR2
379 chdir
$OPTS -N "chgetwd_usr" -I 3000 -g $VDIR1 $VDIR2
381 realpath
$OPTS -N "realpath_tmp" -I 3000 -f $TDIR1
382 realpath
$OPTS -N "realpath_usr" -I 3000 -f $VDIR1
384 stat
$OPTS -N "stat_tmp" -I 1000 -f $TFILE
385 stat
$OPTS -N "stat_usr" -I 1000 -f $VFILE
387 lmbench_stat
$OPTS -N "lmbench_stat_tmp" -I 1000 -f $TFILE
388 lmbench_stat
$OPTS -N "lmbench_stat_usr" -I 10000 -B 100 -f /private
/var
/tmp
/lmbench
391 # lmbench uses a touched empty file in /private/var/tmp
392 # libMicro uses a 1M file in a directory off /private/var/tmp
393 # performance difference is ~ 0.2 usecs/call
395 # why? - walking the dir tree, empty file vs. non-empty file, non-empty dir
396 # in the case of libMicro, etc., etc.
399 lmbench_stat
$OPTS -N "lmbench_stat_usr - Default" -I 10000 -B 100 -f /private
/var
/tmp
/lmbench
401 lmbench_fstat
$OPTS -N "lmbench_fstat_tmp" -I 1000 -f $TFILE
402 lmbench_fstat
$OPTS -N "lmbench_fstat_usr" -I 10000 -B 100 -f /private
/var
/tmp
/lmbench
404 # see stat test to understand why we are using /private/var/tmp/lmbench
406 lmbench_fstat
$OPTS -N "lmbench_fstat_usr - Default" -I 10000 -B 100 -f /private
/var
/tmp
/lmbench
408 lmbench_openclose
$OPTS -N "lmbench_openclose - Default" -I 10000 -B 100 -f /private
/var
/tmp
/lmbench
410 lmbench_select_file
$OPTS -N "lmbench_select_file_10" -n 10 -B 100
411 lmbench_select_file
$OPTS -N "lmbench_select_file_100" -n 100 -B 100
412 lmbench_select_file
$OPTS -N "lmbench_select_file_250" -n 250 -B 100
413 lmbench_select_file
$OPTS -N "lmbench_select_file_500" -n 500 -B 100
415 lmbench_select_tcp
$OPTS -N "lmbench_select_tcp_10" -n 10 -B 100
416 lmbench_select_tcp
$OPTS -N "lmbench_select_tcp_100" -n 100 -B 100
417 lmbench_select_tcp
$OPTS -N "lmbench_select_tcp_250" -n 250 -B 100
418 lmbench_select_tcp
$OPTS -N "lmbench_select_tcp_500" -n 500 -B 100
420 fcntl
$OPTS -N "fcntl_tmp" -I 100 -f $TFILE
421 fcntl
$OPTS -N "fcntl_usr" -I 100 -f $VFILE
422 fcntl_ndelay
$OPTS -N "fcntl_ndelay" -I 100
424 lseek
$OPTS -N "lseek_t8k" -s 8k
-I 50 -f $TFILE
425 lseek
$OPTS -N "lseek_u8k" -s 8k
-I 50 -f $VFILE
427 open
$OPTS -N "open_tmp" -B 256 -f $TFILE
428 open
$OPTS -N "open_usr" -B 256 -f $VFILE
429 open
$OPTS -N "open_zero" -B 256 -f /dev
/zero
431 dup
$OPTS -N "dup" -B 512
433 socket
$OPTS -N "socket_u" -B 256
434 socket
$OPTS -N "socket_i" -B 256 -f PF_INET
436 socketpair
$OPTS -N "socketpair" -B 256
438 setsockopt
$OPTS -N "setsockopt" -I 200
440 bind $OPTS -N "bind" -B 100
442 listen
$OPTS -N "listen" -B 100
444 #connection $OPTS -N "connection" -B 256
446 poll
$OPTS -N "poll_10" -n 10 -I 500
447 poll
$OPTS -N "poll_100" -n 100 -I 1000
448 poll
$OPTS -N "poll_1000" -n 1000 -I 5000
450 poll
$OPTS -N "poll_w10" -n 10 -I 500 -w 1
451 poll
$OPTS -N "poll_w100" -n 100 -I 2000 -w 10
452 poll
$OPTS -N "poll_w1000" -n 1000 -I 40000 -w 100
454 select $OPTS -N "select_10" -n 10 -I 500
455 select $OPTS -N "select_100" -n 100 -I 1000
456 select $OPTS -N "select_1000" -n 1000 -I 5000
458 select $OPTS -N "select_w10" -n 10 -I 500 -w 1
459 select $OPTS -N "select_w100" -n 100 -I 2000 -w 10
460 select $OPTS -N "select_w1000" -n 1000 -I 40000 -w 100
462 semop
$OPTS -N "semop" -I 200
464 sigaction
$OPTS -N "sigaction" -I 100
465 signal
$OPTS -N "signal" -I 1000
466 sigprocmask
$OPTS -N "sigprocmask" -I 200
468 lmbench_lat_sig_install
$OPTS -N "lmbench_siginstall"
469 # sigcatch and sigsend need to be evaluated together
470 # lmbench framework will allow multiple measurements within the same
471 # benchmark test which allow them to factor out the cost of sending
472 # a signal from catching one
474 # for our purposes sigcatch results - sigsend results yield
475 # lmbench sig handler overhead measurements
476 lmbench_lat_sig_catch
$OPTS -N "lmbench_sigcatch"
477 lmbench_lat_sig_send
$OPTS -N "lmbench_sigsend"
480 pthread_create
$OPTS -N "pthread_8" -B 8
481 pthread_create
$OPTS -N "pthread_32" -B 32
482 pthread_create
$OPTS -N "pthread_128" -B 128
483 pthread_create
$OPTS -N "pthread_512" -B 512
485 fork
$OPTS -N "fork_10" -B 10
486 fork
$OPTS -N "fork_100" -B 100 -C 100
488 #fork $OPTS -N "fork_1000" -B 1000 -C 50
490 exit $OPTS -N "exit_10" -B 10
491 exit $OPTS -N "exit_100" -B 100
493 #exit $OPTS -N "exit_1000" -B 1000 -C 50
495 exit $OPTS -N "exit_10_nolibc" -e -B 10
497 exec $OPTS -N "exec" -B 10
499 posix_spawn
$OPTS -N "posix_spawn" -B 10
501 system
$OPTS -N "system" -I 1000000
503 recurse
$OPTS -N "recurse" -B 512
505 read $OPTS -N "read_t1k" -s 1k
-B 50 -f $TFILE
506 read $OPTS -N "read_t10k" -s 10k
-B 16 -f $TFILE
507 read $OPTS -N "read_t100k" -s 100k
-B 4 -f $TFILE
509 read $OPTS -N "read_u1k" -s 1k
-B 50 -f $VFILE
510 read $OPTS -N "read_u10k" -s 10k
-B 16 -f $VFILE
511 read $OPTS -N "read_u100k" -s 100k
-B 4 -f $VFILE
513 read $OPTS -N "read_z1k" -s 1k
-B 100 -f /dev
/zero
514 read $OPTS -N "read_z10k" -s 10k
-B 30 -f /dev
/zero
515 read $OPTS -N "read_z100k" -s 100k
-B 4 -f /dev
/zero
516 read $OPTS -N "read_zw100k" -s 100k
-B 4 -w -f /dev
/zero
518 lmbench_read
$OPTS -N "read_t1b" -s 1 -B 50 -f $TFILE
519 lmbench_read
$OPTS -N "read_t1k" -s 1k
-B 50 -f $TFILE
520 lmbench_read
$OPTS -N "read_t10k" -s 10k
-B 16 -f $TFILE
521 lmbench_read
$OPTS -N "read_t100k" -s 100k
-B 4 -f $TFILE
523 lmbench_read
$OPTS -N "read_u1b" -s 1 -B 50 -f $VFILE
524 lmbench_read
$OPTS -N "read_u1k" -s 1k
-B 50 -f $VFILE
525 lmbench_read
$OPTS -N "read_u10k" -s 10k
-B 16 -f $VFILE
526 lmbench_read
$OPTS -N "read_u100k" -s 100k
-B 4 -f $VFILE
528 lmbench_read
$OPTS -N "read_z1b - Default" -s 1 -B 100 -f /dev
/zero
529 lmbench_read
$OPTS -N "read_z1k" -s 1k
-B 100 -f /dev
/zero
530 lmbench_read
$OPTS -N "read_z10k" -s 10k
-B 30 -f /dev
/zero
531 lmbench_read
$OPTS -N "read_z100k" -s 100k
-B 4 -f /dev
/zero
532 lmbench_read
$OPTS -N "read_zw100k" -s 100k
-B 4 -w -f /dev
/zero
534 write $OPTS -N "write_t1k" -s 1k
-B 50 -f $TFILE
535 write $OPTS -N "write_t10k" -s 10k
-B 25 -f $TFILE
536 write $OPTS -N "write_t100k" -s 100k
-B 4 -f $TFILE
538 write $OPTS -N "write_u1k" -s 1k
-B 50 -f $VFILE
539 write $OPTS -N "write_u10k" -s 10k
-B 25 -f $VFILE
540 write $OPTS -N "write_u100k" -s 100k
-B 4 -f $VFILE
542 write $OPTS -N "write_n1k" -s 1k
-I 100 -B 0 -f /dev
/null
543 write $OPTS -N "write_n10k" -s 10k
-I 100 -B 0 -f /dev
/null
544 write $OPTS -N "write_n100k" -s 100k
-I 100 -B 0 -f /dev
/null
546 lmbench_write
$OPTS -N "lmbench_write_t1b" -s 1 -B 50 -f $TFILE
547 lmbench_write
$OPTS -N "lmbench_write_t1k" -s 1k
-B 50 -f $TFILE
548 lmbench_write
$OPTS -N "lmbench_write_t10k" -s 10k
-B 25 -f $TFILE
549 lmbench_write
$OPTS -N "lmbench_write_t100k" -s 100k
-B 4 -f $TFILE
551 lmbench_write
$OPTS -N "lmbench_write_u1b" -s 1 -B 50 -f $VFILE
552 lmbench_write
$OPTS -N "lmbench_write_u1k" -s 1k
-B 50 -f $VFILE
553 lmbench_write
$OPTS -N "lmbench_write_u10k" -s 10k
-B 25 -f $VFILE
554 lmbench_write
$OPTS -N "lmbench_write_u100k" -s 100k
-B 4 -f $VFILE
556 lmbench_write
$OPTS -N "lmbench_write_n1b - Default" -s 1 -I 100 -B 0 -f /dev
/null
557 lmbench_write
$OPTS -N "lmbench_write_n1k" -s 1k
-I 100 -B 0 -f /dev
/null
558 lmbench_write
$OPTS -N "lmbench_write_n10k" -s 10k
-I 100 -B 0 -f /dev
/null
559 lmbench_write
$OPTS -N "lmbench_write_n100k" -s 100k
-I 100 -B 0 -f /dev
/null
561 writev
$OPTS -N "writev_t1k" -s 1k
-B 20 -f $TFILE
562 writev
$OPTS -N "writev_t10k" -s 10k
-B 4 -f $TFILE
563 writev
$OPTS -N "writev_t100k" -s 100k
-f $TFILE
565 writev
$OPTS -N "writev_u1k" -s 1k
-B 20 -f $VFILE
566 writev
$OPTS -N "writev_u10k" -s 10k
-B 4 -f $VFILE
567 writev
$OPTS -N "writev_u100k" -s 100k
-f $VFILE
569 writev
$OPTS -N "writev_n1k" -s 1k
-I 100 -B 0 -f /dev
/null
570 writev
$OPTS -N "writev_n10k" -s 10k
-I 100 -B 0 -f /dev
/null
571 writev
$OPTS -N "writev_n100k" -s 100k
-I 100 -B 0 -f /dev
/null
573 pread
$OPTS -N "pread_t1k" -s 1k
-I 300 -f $TFILE
574 pread
$OPTS -N "pread_t10k" -s 10k
-I 1000 -f $TFILE
575 pread
$OPTS -N "pread_t100k" -s 100k
-I 10000 -f $TFILE
577 pread
$OPTS -N "pread_u1k" -s 1k
-I 300 -f $VFILE
578 pread
$OPTS -N "pread_u10k" -s 10k
-I 1000 -f $VFILE
579 pread
$OPTS -N "pread_u100k" -s 100k
-I 10000 -f $VFILE
581 pread
$OPTS -N "pread_z1k" -s 1k
-I 300 -f /dev
/zero
582 pread
$OPTS -N "pread_z10k" -s 10k
-I 1000 -f /dev
/zero
583 pread
$OPTS -N "pread_z100k" -s 100k
-I 2000 -f /dev
/zero
584 pread
$OPTS -N "pread_zw100k" -s 100k
-w -I 10000 -f /dev
/zero
586 pwrite
$OPTS -N "pwrite_t1k" -s 1k
-I 500 -f $TFILE
587 pwrite
$OPTS -N "pwrite_t10k" -s 10k
-I 1000 -f $TFILE
588 pwrite
$OPTS -N "pwrite_t100k" -s 100k
-I 10000 -f $TFILE
590 pwrite
$OPTS -N "pwrite_u1k" -s 1k
-I 500 -f $VFILE
591 pwrite
$OPTS -N "pwrite_u10k" -s 10k
-I 1000 -f $VFILE
592 pwrite
$OPTS -N "pwrite_u100k" -s 100k
-I 20000 -f $VFILE
594 pwrite
$OPTS -N "pwrite_n1k" -s 1k
-I 100 -f /dev
/null
595 pwrite
$OPTS -N "pwrite_n10k" -s 10k
-I 100 -f /dev
/null
596 pwrite
$OPTS -N "pwrite_n100k" -s 100k
-I 100 -f /dev
/null
598 mmap
$OPTS -N "mmap_z8k" -l 8k
-I 1000 -B 50 -f /dev
/zero
599 mmap
$OPTS -N "mmap_z128k" -l 128k
-I 2000 -B 100 -f /dev
/zero
600 mmap
$OPTS -N "mmap_t8k" -l 8k
-I 1000 -f $TFILE
601 mmap
$OPTS -N "mmap_t128k" -l 128k
-I 1000 -f $TFILE
602 mmap
$OPTS -N "mmap_u8k" -l 8k
-I 1000 -f $VFILE
603 mmap
$OPTS -N "mmap_u128k" -l 128k
-I 1000 -f $VFILE
604 mmap
$OPTS -N "mmap_a8k" -l 8k
-I 200 -f MAP_ANON
605 mmap
$OPTS -N "mmap_a128k" -l 128k
-I 200 -f MAP_ANON
608 mmap
$OPTS -N "mmap_rz8k" -l 8k
-I 2000 -r -f /dev
/zero
609 mmap
$OPTS -N "mmap_rz128k" -l 128k
-I 2000 -r -f /dev
/zero
610 mmap
$OPTS -N "mmap_rt8k" -l 8k
-I 2000 -r -f $TFILE
611 mmap
$OPTS -N "mmap_rt128k" -l 128k
-I 20000 -r -f $TFILE
612 mmap
$OPTS -N "mmap_ru8k" -l 8k
-I 2000 -r -f $VFILE
613 mmap
$OPTS -N "mmap_ru128k" -l 128k
-I 20000 -r -f $VFILE
614 mmap
$OPTS -N "mmap_ra8k" -l 8k
-I 2000 -r -f MAP_ANON
615 mmap
$OPTS -N "mmap_ra128k" -l 128k
-I 20000 -r -f MAP_ANON
617 mmap
$OPTS -N "mmap_wz8k" -l 8k
-I 5000 -w -B 50 -f /dev
/zero
618 mmap
$OPTS -N "mmap_wz128k" -l 128k
-I 50000 -w -B 50 -f /dev
/zero
619 mmap
$OPTS -N "mmap_wt8k" -l 8k
-I 5000 -w -f $TFILE
620 mmap
$OPTS -N "mmap_wt128k" -l 128k
-I 50000 -w -f $TFILE
621 mmap
$OPTS -N "mmap_wu8k" -l 8k
-I 5000 -w -f $VFILE
622 mmap
$OPTS -N "mmap_wu128k" -l 128k
-I 500000 -w -f $VFILE
623 mmap
$OPTS -N "mmap_wa8k" -l 8k
-I 3000 -w -f MAP_ANON
624 mmap
$OPTS -N "mmap_wa128k" -l 128k
-I 50000 -w -f MAP_ANON
626 munmap
$OPTS -N "unmap_z8k" -l 8k
-I 500 -f /dev
/zero
627 munmap
$OPTS -N "unmap_z128k" -l 128k
-I 500 -B 100 -f /dev
/zero
628 munmap
$OPTS -N "unmap_t8k" -l 8k
-I 500 -f $TFILE
629 munmap
$OPTS -N "unmap_t128k" -l 128k
-I 500 -f $TFILE
630 munmap
$OPTS -N "unmap_u8k" -l 8k
-I 500 -f $VFILE
631 munmap
$OPTS -N "unmap_u128k" -l 128k
-I 500 -f $VFILE
632 munmap
$OPTS -N "unmap_a8k" -l 8k
-I 500 -f MAP_ANON
633 munmap
$OPTS -N "unmap_a128k" -l 128k
-I 500 -f MAP_ANON
635 munmap
$OPTS -N "unmap_rz8k" -l 8k
-I 1000 -r -f /dev
/zero
636 munmap
$OPTS -N "unmap_rz128k" -l 128k
-I 2000 -r -B 100 -f /dev
/zero
637 munmap
$OPTS -N "unmap_rt8k" -l 8k
-I 1000 -r -f $TFILE
638 munmap
$OPTS -N "unmap_rt128k" -l 128k
-I 3000 -r -f $TFILE
639 munmap
$OPTS -N "unmap_ru8k" -l 8k
-I 1000 -r -f $VFILE
640 munmap
$OPTS -N "unmap_ru128k" -l 128k
-I 3000 -r -f $VFILE
641 munmap
$OPTS -N "unmap_ra8k" -l 8k
-I 1000 -r -f MAP_ANON
642 munmap
$OPTS -N "unmap_ra128k" -l 128k
-I 2000 -r -f MAP_ANON
644 connection
$OPTS -N "conn_connect" -B 256 -c
646 munmap
$OPTS -N "unmap_wz8k" -l 8k
-I 1000 -w -f /dev
/zero
647 munmap
$OPTS -N "unmap_wz128k" -l 128k
-I 8000 -w -B 100 -f /dev
/zero
648 munmap
$OPTS -N "unmap_wt8k" -l 8k
-I 1000 -w -f $TFILE
649 munmap
$OPTS -N "unmap_wt128k" -l 128k
-I 10000 -w -f $TFILE
650 munmap
$OPTS -N "unmap_wu8k" -l 8k
-I 1000 -w -f $VFILE
651 munmap
$OPTS -N "unmap_wu128k" -l 128k
-I 50000 -w -B 10 -f $VFILE
652 munmap
$OPTS -N "unmap_wa8k" -l 8k
-I 1000 -w -f MAP_ANON
653 munmap
$OPTS -N "unmap_wa128k" -l 128k
-I 10000 -w -f MAP_ANON
656 mprotect
$OPTS -N "mprot_z8k" -l 8k
-I 300 -f /dev
/zero
657 mprotect
$OPTS -N "mprot_z128k" -l 128k
-I 500 -f /dev
/zero
658 mprotect
$OPTS -N "mprot_wz8k" -l 8k
-I 500 -w -f /dev
/zero
659 mprotect
$OPTS -N "mprot_wz128k" -l 128k
-I 1000 -w -f /dev
/zero
660 mprotect
$OPTS -N "mprot_twz8k" -l 8k
-I 1000 -w -t -f /dev
/zero
661 mprotect
$OPTS -N "mprot_tw128k" -l 128k
-I 2000 -w -t -f /dev
/zero
662 mprotect
$OPTS -N "mprot_tw4m" -l 4m
-w -t -B 1 -f /dev
/zero
664 pipe
$OPTS -N "pipe_pst1" -s 1 -I 1000 -x pipe
-m st
665 pipe
$OPTS -N "pipe_pmt1" -s 1 -I 8000 -x pipe
-m mt
666 pipe
$OPTS -N "pipe_pmp1" -s 1 -I 8000 -x pipe
-m mp
667 pipe
$OPTS -N "pipe_pst4k" -s 4k
-I 1000 -x pipe
-m st
668 pipe
$OPTS -N "pipe_pmt4k" -s 4k
-I 8000 -x pipe
-m mt
669 pipe
$OPTS -N "pipe_pmp4k" -s 4k
-I 8000 -x pipe
-m mp
671 pipe
$OPTS -N "pipe_sst1" -s 1 -I 1000 -x sock
-m st
672 pipe
$OPTS -N "pipe_smt1" -s 1 -I 8000 -x sock
-m mt
673 pipe
$OPTS -N "pipe_smp1" -s 1 -I 8000 -x sock
-m mp
674 pipe
$OPTS -N "pipe_sst4k" -s 4k
-I 1000 -x sock
-m st
675 pipe
$OPTS -N "pipe_smt4k" -s 4k
-I 8000 -x sock
-m mt
676 pipe
$OPTS -N "pipe_smp4k" -s 4k
-I 8000 -x sock
-m mp
678 pipe
$OPTS -N "pipe_tst1" -s 1 -I 1000 -x tcp
-m st
679 pipe
$OPTS -N "pipe_tmt1" -s 1 -I 8000 -x tcp
-m mt
680 pipe
$OPTS -N "pipe_tmp1" -s 1 -I 8000 -x tcp
-m mp
681 pipe
$OPTS -N "pipe_tst4k" -s 4k
-I 1000 -x tcp
-m st
682 pipe
$OPTS -N "pipe_tmt4k" -s 4k
-I 8000 -x tcp
-m mt
683 pipe
$OPTS -N "pipe_tmp4k" -s 4k
-I 8000 -x tcp
-m mp
685 #connection $OPTS -N "conn_accept" -B 256 -a
687 lmbench_bw_unix
-B 11 -L -W
689 lmbench_bw_mem
$OPTS -N lmbench_bcopy_512
-s 512 -x bcopy
690 lmbench_bw_mem
$OPTS -N lmbench_bcopy_1k
-s 1k
-x bcopy
691 lmbench_bw_mem
$OPTS -N lmbench_bcopy_2k
-s 2k
-x bcopy
692 lmbench_bw_mem
$OPTS -N lmbench_bcopy_4k
-s 4k
-x bcopy
693 lmbench_bw_mem
$OPTS -N lmbench_bcopy_8k
-s 8k
-x bcopy
694 lmbench_bw_mem
$OPTS -N lmbench_bcopy_16k
-s 16k
-x bcopy
695 lmbench_bw_mem
$OPTS -N lmbench_bcopy_32k
-s 32k
-x bcopy
696 lmbench_bw_mem
$OPTS -N lmbench_bcopy_64k
-s 64k
-x bcopy
697 lmbench_bw_mem
$OPTS -N lmbench_bcopy_128k
-s 128k
-x bcopy
698 lmbench_bw_mem
$OPTS -N lmbench_bcopy_256k
-s 256k
-x bcopy
699 lmbench_bw_mem
$OPTS -N lmbench_bcopy_512k
-s 512k
-x bcopy
700 lmbench_bw_mem
$OPTS -N lmbench_bcopy_1m
-s 1m
-x bcopy
701 lmbench_bw_mem
$OPTS -N lmbench_bzero_512
-s 512 -x bzero
702 lmbench_bw_mem
$OPTS -N lmbench_bzero_1k
-s 1k
-x bzero
703 lmbench_bw_mem
$OPTS -N lmbench_bzero_2k
-s 2k
-x bzero
704 lmbench_bw_mem
$OPTS -N lmbench_bzero_4k
-s 4k
-x bzero
705 lmbench_bw_mem
$OPTS -N lmbench_bzero_8k
-s 8k
-x bzero
706 lmbench_bw_mem
$OPTS -N lmbench_bzero_16k
-s 16k
-x bzero
707 lmbench_bw_mem
$OPTS -N lmbench_bzero_32k
-s 32k
-x bzero
708 lmbench_bw_mem
$OPTS -N lmbench_bzero_64k
-s 64k
-x bzero
709 lmbench_bw_mem
$OPTS -N lmbench_bzero_128k
-s 128k
-x bzero
710 lmbench_bw_mem
$OPTS -N lmbench_bzero_256k
-s 256k
-x bzero
711 lmbench_bw_mem
$OPTS -N lmbench_bzero_512k
-s 512k
-x bzero
712 lmbench_bw_mem
$OPTS -N lmbench_bzero_1m
-s 1m
-x bzero
713 lmbench_bw_mem
$OPTS -N lmbench_bzero_512
-s 512 -x fcp
714 lmbench_bw_mem
$OPTS -N lmbench_bzero_1k
-s 1k
-x fcp
715 lmbench_bw_mem
$OPTS -N lmbench_bzero_2k
-s 2k
-x fcp
716 lmbench_bw_mem
$OPTS -N lmbench_bzero_4k
-s 4k
-x fcp
717 lmbench_bw_mem
$OPTS -N lmbench_bzero_8k
-s 8k
-x fcp
718 lmbench_bw_mem
$OPTS -N lmbench_bzero_16k
-s 16k
-x fcp
719 lmbench_bw_mem
$OPTS -N lmbench_bzero_32k
-s 32k
-x fcp
720 lmbench_bw_mem
$OPTS -N lmbench_bzero_64k
-s 64k
-x fcp
721 lmbench_bw_mem
$OPTS -N lmbench_bzero_128k
-s 128k
-x fcp
722 lmbench_bw_mem
$OPTS -N lmbench_bzero_256k
-s 256k
-x fcp
723 lmbench_bw_mem
$OPTS -N lmbench_bzero_512k
-s 512k
-x fcp
724 lmbench_bw_mem
$OPTS -N lmbench_bzero_1m
-s 1m
-x fcp
725 lmbench_bw_mem
$OPTS -N lmbench_cp_512
-s 512 -x cp
726 lmbench_bw_mem
$OPTS -N lmbench_cp_1k
-s 1k
-x cp
727 lmbench_bw_mem
$OPTS -N lmbench_cp_2k
-s 2k
-x cp
728 lmbench_bw_mem
$OPTS -N lmbench_cp_4k
-s 4k
-x cp
729 lmbench_bw_mem
$OPTS -N lmbench_cp_8k
-s 8k
-x cp
730 lmbench_bw_mem
$OPTS -N lmbench_cp_16k
-s 16k
-x cp
731 lmbench_bw_mem
$OPTS -N lmbench_cp_32k
-s 32k
-x cp
732 lmbench_bw_mem
$OPTS -N lmbench_cp_64k
-s 64k
-x cp
733 lmbench_bw_mem
$OPTS -N lmbench_cp_128k
-s 128k
-x cp
734 lmbench_bw_mem
$OPTS -N lmbench_cp_256k
-s 256k
-x cp
735 lmbench_bw_mem
$OPTS -N lmbench_cp_512k
-s 512k
-x cp
736 lmbench_bw_mem
$OPTS -N lmbench_cp_1m
-s 1m
-x cp
737 lmbench_bw_mem
$OPTS -N lmbench_frd_512
-s 512 -x frd
738 lmbench_bw_mem
$OPTS -N lmbench_frd_1k
-s 1k
-x frd
739 lmbench_bw_mem
$OPTS -N lmbench_frd_2k
-s 2k
-x frd
740 lmbench_bw_mem
$OPTS -N lmbench_frd_4k
-s 4k
-x frd
741 lmbench_bw_mem
$OPTS -N lmbench_frd_8k
-s 8k
-x frd
742 lmbench_bw_mem
$OPTS -N lmbench_frd_16k
-s 16k
-x frd
743 lmbench_bw_mem
$OPTS -N lmbench_frd_32k
-s 32k
-x frd
744 lmbench_bw_mem
$OPTS -N lmbench_frd_64k
-s 64k
-x frd
745 lmbench_bw_mem
$OPTS -N lmbench_frd_128k
-s 128k
-x frd
746 lmbench_bw_mem
$OPTS -N lmbench_frd_256k
-s 256k
-x frd
747 lmbench_bw_mem
$OPTS -N lmbench_frd_512k
-s 512k
-x frd
748 lmbench_bw_mem
$OPTS -N lmbench_frd_1m
-s 1m
-x frd
749 lmbench_bw_mem
$OPTS -N lmbench_rd_512
-s 512 -x rd
750 lmbench_bw_mem
$OPTS -N lmbench_rd_1k
-s 1k
-x rd
751 lmbench_bw_mem
$OPTS -N lmbench_rd_2k
-s 2k
-x rd
752 lmbench_bw_mem
$OPTS -N lmbench_rd_4k
-s 4k
-x rd
753 lmbench_bw_mem
$OPTS -N lmbench_rd_8k
-s 8k
-x rd
754 lmbench_bw_mem
$OPTS -N lmbench_rd_16k
-s 16k
-x rd
755 lmbench_bw_mem
$OPTS -N lmbench_rd_32k
-s 32k
-x rd
756 lmbench_bw_mem
$OPTS -N lmbench_rd_64k
-s 64k
-x rd
757 lmbench_bw_mem
$OPTS -N lmbench_rd_128k
-s 128k
-x rd
758 lmbench_bw_mem
$OPTS -N lmbench_rd_256k
-s 256k
-x rd
759 lmbench_bw_mem
$OPTS -N lmbench_rd_512k
-s 512k
-x rd
760 lmbench_bw_mem
$OPTS -N lmbench_rd_1m
-s 1m
-x rd
761 lmbench_bw_mem
$OPTS -N lmbench_fwr_512
-s 512 -x fwr
762 lmbench_bw_mem
$OPTS -N lmbench_fwr_1k
-s 1k
-x fwr
763 lmbench_bw_mem
$OPTS -N lmbench_fwr_2k
-s 2k
-x fwr
764 lmbench_bw_mem
$OPTS -N lmbench_fwr_4k
-s 4k
-x fwr
765 lmbench_bw_mem
$OPTS -N lmbench_fwr_8k
-s 8k
-x fwr
766 lmbench_bw_mem
$OPTS -N lmbench_fwr_16k
-s 16k
-x fwr
767 lmbench_bw_mem
$OPTS -N lmbench_fwr_32k
-s 32k
-x fwr
768 lmbench_bw_mem
$OPTS -N lmbench_fwr_64k
-s 64k
-x fwr
769 lmbench_bw_mem
$OPTS -N lmbench_fwr_128k
-s 128k
-x fwr
770 lmbench_bw_mem
$OPTS -N lmbench_fwr_256k
-s 256k
-x fwr
771 lmbench_bw_mem
$OPTS -N lmbench_fwr_512k
-s 512k
-x fwr
772 lmbench_bw_mem
$OPTS -N lmbench_fwr_1m
-s 1m
-x fwr
773 lmbench_bw_mem
$OPTS -N lmbench_wr_512
-s 512 -x wr
774 lmbench_bw_mem
$OPTS -N lmbench_wr_1k
-s 1k
-x wr
775 lmbench_bw_mem
$OPTS -N lmbench_wr_2k
-s 2k
-x wr
776 lmbench_bw_mem
$OPTS -N lmbench_wr_4k
-s 4k
-x wr
777 lmbench_bw_mem
$OPTS -N lmbench_wr_8k
-s 8k
-x wr
778 lmbench_bw_mem
$OPTS -N lmbench_wr_16k
-s 16k
-x wr
779 lmbench_bw_mem
$OPTS -N lmbench_wr_32k
-s 32k
-x wr
780 lmbench_bw_mem
$OPTS -N lmbench_wr_64k
-s 64k
-x wr
781 lmbench_bw_mem
$OPTS -N lmbench_wr_128k
-s 128k
-x wr
782 lmbench_bw_mem
$OPTS -N lmbench_wr_256k
-s 256k
-x wr
783 lmbench_bw_mem
$OPTS -N lmbench_wr_512k
-s 512k
-x wr
784 lmbench_bw_mem
$OPTS -N lmbench_wr_1m
-s 1m
-x wr
785 lmbench_bw_mem
$OPTS -N lmbench_rdwr_512
-s 512 -x rdwr
786 lmbench_bw_mem
$OPTS -N lmbench_rdwr_1k
-s 1k
-x rdwr
787 lmbench_bw_mem
$OPTS -N lmbench_rdwr_2k
-s 2k
-x rdwr
788 lmbench_bw_mem
$OPTS -N lmbench_rdwr_4k
-s 4k
-x rdwr
789 lmbench_bw_mem
$OPTS -N lmbench_rdwr_8k
-s 8k
-x rdwr
790 lmbench_bw_mem
$OPTS -N lmbench_rdwr_16k
-s 16k
-x rdwr
791 lmbench_bw_mem
$OPTS -N lmbench_rdwr_32k
-s 32k
-x rdwr
792 lmbench_bw_mem
$OPTS -N lmbench_rdwr_64k
-s 64k
-x rdwr
793 lmbench_bw_mem
$OPTS -N lmbench_rdwr_128k
-s 128k
-x rdwr
794 lmbench_bw_mem
$OPTS -N lmbench_rdwr_256k
-s 256k
-x rdwr
795 lmbench_bw_mem
$OPTS -N lmbench_rdwr_512k
-s 512k
-x rdwr
796 lmbench_bw_mem
$OPTS -N lmbench_rdwr_1m
-s 1m
-x rdwr
798 lmbench_bw_mmap_rd
$OPTS -N bw_mmap_rd_512
-s 512 -f $TFILE
799 lmbench_bw_mmap_rd
$OPTS -N bw_mmap_rd_1k
-s 1k
-f $TFILE
800 lmbench_bw_mmap_rd
$OPTS -N bw_mmap_rd_2k
-s 2k
-f $TFILE
801 lmbench_bw_mmap_rd
$OPTS -N bw_mmap_rd_4k
-s 4k
-f $TFILE
802 lmbench_bw_mmap_rd
$OPTS -N bw_mmap_rd_8k
-s 8k
-f $TFILE
803 lmbench_bw_mmap_rd
$OPTS -N bw_mmap_rd_16k
-s 16k
-f $TFILE
804 lmbench_bw_mmap_rd
$OPTS -N bw_mmap_rd_32k
-s 32k
-f $TFILE
805 lmbench_bw_mmap_rd
$OPTS -N bw_mmap_rd_64k
-s 64k
-f $TFILE
806 lmbench_bw_mmap_rd
$OPTS -N bw_mmap_rd_128k
-s 128k
-f $TFILE
807 lmbench_bw_mmap_rd
$OPTS -N bw_mmap_rd_256k
-s 256k
-f $TFILE
808 lmbench_bw_mmap_rd
$OPTS -N bw_mmap_rd_512k
-s 512k
-f $TFILE
809 lmbench_bw_mmap_rd
$OPTS -N bw_mmap_rd_1m
-s 1m
-f $TFILE