1#!/bin/sh
2#
3#
4# CDDL HEADER START
5#
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.
10#
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.
16#
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]
24#
25# CDDL HEADER END
26#
27
28#
29# Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
30# Use is subject to license terms.
31#
32
33bench_version=0.4.0
34libmicro_version=`bin/tattle -V`
35
36case $libmicro_version in
37$bench_version)
38	;;
39*)
40	echo "ERROR: libMicro version doesn't match 'bench' script version"
41	exit 1
42esac
43
44TMPROOT=/tmp/libmicro.$$
45VARROOT=/var/tmp/libmicro.$$
46mkdir -p $TMPROOT
47mkdir -p $VARROOT
48trap "rm -rf $TMPROOT $VARROOT" 0 2
49
50TFILE=$TMPROOT/data
51IFILE=$TMPROOT/ifile
52TDIR1=$TMPROOT/0/1/2/3/4/5/6/7/8/9
53TDIR2=$TMPROOT/1/2/3/4/5/6/7/8/9/0
54VFILE=$VARROOT/data
55VDIR1=$VARROOT/0/1/2/3/4/5/6/7/8/9
56VDIR2=$VARROOT/1/2/3/4/5/6/7/8/9/0
57
58
59#OPTS="-E -C 200 -L -S -W"
60echo "FIXME: adding -1 to the original opts, (possible pthread issue?)"
61OPTS="-1 -E -C 200 -L -S -W"
62
63dd if=/dev/zero of=$TFILE bs=1024k count=10 2>/dev/null
64dd if=/dev/zero of=$VFILE bs=1024k count=10 2>/dev/null
65mkdir -p $TDIR1 $TDIR2
66mkdir -p $VDIR1 $VDIR2
67
68touch $IFILE
69
70ARCH=`uname -m`
71
72# produce benchmark header for easier comparisons
73
74hostname=`uname -n`
75
76if [ -f /usr/sbin/psrinfo ]; then
77	p_count=`psrinfo|wc -l`
78	p_mhz=`psrinfo -v | awk '/operates/{print $6 "MHz"; exit }'`
79	p_type=`psrinfo -vp 2>/dev/null | awk '{if (NR == 3) {print $0; exit}}'` 
80fi
81
82if [ -f /proc/cpuinfo ]; then
83	p_count=`egrep processor /proc/cpuinfo | wc -l`
84	p_mhz=`awk -F: '/cpu MHz/{printf("%5.0f00Mhz\n",$2/100); exit}' /proc/cpuinfo`
85	p_type=`awk -F: '/model name/{print $2; exit}' /proc/cpuinfo`
86fi
87
88printf "!Libmicro_#:   %30s\n" $libmicro_version
89printf "!Options:      %30s\n" "$OPTS"
90printf "!Machine_name: %30s\n" $hostname
91printf "!OS_name:      %30s\n" `uname -s`
92printf "!OS_release:   %30s\n" `uname -r`
93printf "!OS_build:     %30.18s\n" "`uname -v`"
94printf "!Processor:    %30s\n" `uname -m`
95printf "!#CPUs:        %30s\n" $p_count
96printf "!CPU_MHz:      %30s\n" $p_mhz
97printf "!CPU_NAME:     %30s\n" "$p_type"
98printf "!IP_address:   %30s\n" `getent hosts $hostname | awk '{print $1}'`
99printf "!Run_by:       %30s\n" $LOGNAME
100printf "!Date:	       %30s\n" "`date '+%D %R'`"
101printf "!Compiler:     %30s\n" `bin/tattle -c`
102printf "!Compiler Ver.:%30s\n" "`bin/tattle -v`"
103printf "!sizeof(long): %30s\n" `bin/tattle -s`
104printf "!extra_CFLAGS: %30s\n" "`bin/tattle -f`"
105printf "!TimerRes:     %30s\n" "`bin/tattle -r`"
106 
107mkdir -p $TMPROOT/bin
108cp bin-$ARCH/exec_bin $TMPROOT/bin/$A
109
110while read A B
111do
112	# $A contains the command, $B contains the arguments
113	# we echo blank lines and comments
114	# we ship anything which fails to match *$1* (useful
115	# if we only want to test one case, but a nasty hack)
116
117	case $A in
118	""|"#"*)
119		echo "$A $B"
120		continue
121		;;
122	*$1*)
123		;;
124	*)
125		continue
126	esac
127
128	if [ ! -f $TMPROOT/bin/$A ]
129	then
130		cp bin-$ARCH/$A $TMPROOT/bin/$A
131	fi
132	(cd $TMPROOT && eval "bin/$A $B")
133done <<.
134#
135# Obligatory null system call: use very short time
136# for default since SuSe implements this "syscall" in userland
137#
138getpid		$OPTS -N "getpid" -I 5
139		 
140getenv		$OPTS -N "getenv"	-s 100 -I 100	 
141getenv		$OPTS -N "getenvT2"	-s 100 -I 100	-T 2 
142
143gettimeofday	$OPTS -N "gettimeofday"          
144
145log		$OPTS -N "log"	-I 20		 
146exp		$OPTS -N "exp"	-I 20		 
147lrand48		$OPTS -N "lrand48"
148
149memset		$OPTS -N "memset_10"	-s 10	-I 10 
150memset		$OPTS -N "memset_256"	-s 256	-I 20
151memset		$OPTS -N "memset_256_u"	-s 256	 -a 1 -I 20 
152memset		$OPTS -N "memset_1k"	-s 1k	 -I 100
153memset		$OPTS -N "memset_4k"    -s 4k    -I 250
154memset		$OPTS -N "memset_4k_uc" -s 4k    -u -I 400
155
156memset		$OPTS -N "memset_10k"	-s 10k	-I 600	 
157memset		$OPTS -N "memset_1m"	-s 1m	-I 200000
158memset		$OPTS -N "memset_10m"	-s 10m -I 2000000 
159memset		$OPTS -N "memsetP2_10m"	-s 10m -P 2 -I 2000000 
160
161memrand		$OPTS -N "memrand"	-s 128m -B 10000
162cachetocache	$OPTS -N "cachetocache" -s 100k -T 2 -I 200
163
164isatty		$OPTS -N "isatty_yes"   
165isatty		$OPTS -N "isatty_no"  -f $IFILE
166
167malloc		$OPTS -N "malloc_10"    -s 10    -g 10 -I 50
168malloc		$OPTS -N "malloc_100"   -s 100   -g 10 -I 50
169malloc		$OPTS -N "malloc_1k"    -s 1k    -g 10 -I 50
170malloc		$OPTS -N "malloc_10k"   -s 10k   -g 10 -I 50
171malloc		$OPTS -N "malloc_100k"  -s 100k  -g 10 -I 2000
172
173malloc		$OPTS -N "mallocT2_10"    -s 10   -g 10 -T 2 -I 200
174malloc		$OPTS -N "mallocT2_100"   -s 100  -g 10 -T 2 -I 200
175malloc		$OPTS -N "mallocT2_1k"    -s 1k   -g 10 -T 2 -I 200
176malloc		$OPTS -N "mallocT2_10k"   -s 10k  -g 10 -T 2 -I 200
177malloc		$OPTS -N "mallocT2_100k"  -s 100k -g 10 -T 2 -I 10000
178
179close		$OPTS -N "close_bad"		-B 32		-b
180close		$OPTS -N "close_tmp"		-B 32		-f $TFILE
181close		$OPTS -N "close_usr"		-B 32		-f $VFILE
182close		$OPTS -N "close_zero"		-B 32		-f /dev/zero
183
184memcpy		$OPTS -N "memcpy_10"	-s 10	-I 10 
185memcpy		$OPTS -N "memcpy_1k"	-s 1k	-I 50
186memcpy		$OPTS -N "memcpy_10k"	-s 10k	-I 800
187memcpy		$OPTS -N "memcpy_1m"	-s 1m   -I 500000
188memcpy		$OPTS -N "memcpy_10m"	-s 10m  -I 5000000
189
190strcpy		$OPTS -N "strcpy_10"	-s 10   -I 5 
191strcpy		$OPTS -N "strcpy_1k"	-s 1k   -I 100
192
193strlen		$OPTS -N "strlen_10"	-s 10   -I 5
194strlen		$OPTS -N "strlen_1k"	-s 1k   -I 100
195
196strchr		$OPTS -N "strchr_10"	-s 10   -I 5
197strchr		$OPTS -N "strchr_1k"	-s 1k   -I 200
198strcmp		$OPTS -N "strcmp_10"	-s 10   -I 10
199strcmp		$OPTS -N "strcmp_1k"	-s 1k   -I 200
200
201strcasecmp	$OPTS -N "scasecmp_10"	-s 10 -I 50
202strcasecmp	$OPTS -N "scasecmp_1k"	-s 1k -I 20000
203
204strtol		$OPTS -N "strtol"      -I 20      
205
206getcontext	$OPTS -N "getcontext"  -I 100
207setcontext	$OPTS -N "setcontext"  -I 100
208
209mutex		$OPTS -N "mutex_st"	-I 10
210mutex		$OPTS -N "mutex_mt"	-t -I 10	
211mutex		$OPTS -N "mutex_T2"     -T 2  -I 100
212
213longjmp		$OPTS -N "longjmp"	-I 10
214siglongjmp	$OPTS -N "siglongjmp"	-I 20
215
216getrusage	$OPTS -N "getrusage"	-I 200
217
218times		$OPTS -N "times"	-I 200
219time		$OPTS -N "time"		-I 50
220localtime_r	$OPTS -N "localtime_r"	-I 200  
221strftime	$OPTS -N "strftime" -I 10000  
222
223mktime		$OPTS -N "mktime"       -I 500   
224mktime		$OPTS -N "mktimeT2" -T 2 -I 1000 
225
226cascade_mutex	$OPTS -N "c_mutex_1"	-I 50
227cascade_mutex	$OPTS -N "c_mutex_10"	-T 10 -I 5000
228cascade_mutex	$OPTS -N "c_mutex_200"	-T 200	-I 2000000
229
230cascade_cond	$OPTS -N "c_cond_1"	-I 100
231cascade_cond	$OPTS -N "c_cond_10"	-T 10	-I 3000
232cascade_cond	$OPTS -N "c_cond_200"	-T 200	-I 2000000
233
234cascade_lockf	$OPTS -N "c_lockf_1"	-I 1000	
235cascade_lockf	$OPTS -N "c_lockf_10"	-P 10 -I 50000
236cascade_lockf	$OPTS -N "c_lockf_200"	-P 200 -I 5000000
237
238cascade_flock	$OPTS -N "c_flock"	-I 1000	
239cascade_flock	$OPTS -N "c_flock_10"	-P 10   -I 50000
240cascade_flock	$OPTS -N "c_flock_200"	-P 200	-I 5000000
241
242cascade_fcntl	$OPTS -N "c_fcntl_1"	-I 2000 	
243cascade_fcntl	$OPTS -N "c_fcntl_10"	-P 10 -I 20000
244cascade_fcntl	$OPTS -N "c_fcntl_200"	-P 200	-I 5000000
245
246file_lock	$OPTS -N "file_lock"   -I 1000         
247
248getsockname	$OPTS -N "getsockname"	-I 100
249getpeername	$OPTS -N "getpeername"	-I 100
250
251chdir		$OPTS -N "chdir_tmp"	-I 2000		$TDIR1 $TDIR2
252chdir		$OPTS -N "chdir_usr"	-I 2000		$VDIR1 $VDIR2
253
254chdir		$OPTS -N "chgetwd_tmp"	-I 3000	-g $TDIR1 $TDIR2
255chdir		$OPTS -N "chgetwd_usr"	-I 3000	-g $VDIR1 $VDIR2
256
257realpath	$OPTS -N "realpath_tmp" -I 3000		-f $TDIR1
258realpath	$OPTS -N "realpath_usr"	-I 3000	-f $VDIR1
259
260stat		$OPTS -N "stat_tmp" -I 1000		-f $TFILE
261stat		$OPTS -N "stat_usr" -I 1000		-f $VFILE
262
263fcntl		$OPTS -N "fcntl_tmp"	-I 100	-f $TFILE
264fcntl		$OPTS -N "fcntl_usr"	-I 100	-f $VFILE
265fcntl_ndelay	$OPTS -N "fcntl_ndelay"	-I 100	
266
267lseek		$OPTS -N "lseek_t8k"	-s 8k	-I 50	-f $TFILE
268lseek		$OPTS -N "lseek_u8k"	-s 8k	-I 50	-f $VFILE
269
270open		$OPTS -N "open_tmp"		-B 256		-f $TFILE
271open		$OPTS -N "open_usr"		-B 256		-f $VFILE
272open		$OPTS -N "open_zero"		-B 256		-f /dev/zero
273
274dup		$OPTS -N "dup"			-B 512   
275
276socket		$OPTS -N "socket_u"		-B 256
277socket		$OPTS -N "socket_i"		-B 256		-f PF_INET
278
279socketpair	$OPTS -N "socketpair"		-B 256
280
281setsockopt	$OPTS -N "setsockopt"		-I 200
282
283bind		$OPTS -N "bind"			-B 100
284
285listen		$OPTS -N "listen"		-B 100
286
287connection	$OPTS -N "connection"		-B 256 
288
289poll		$OPTS -N "poll_10"	-n 10	-I 500
290poll		$OPTS -N "poll_100"	-n 100	-I 1000
291poll		$OPTS -N "poll_1000"	-n 1000	-I 5000
292
293poll		$OPTS -N "poll_w10"	-n 10	-I 500		-w 1
294poll		$OPTS -N "poll_w100"	-n 100	-I 2000		-w 10
295poll		$OPTS -N "poll_w1000"	-n 1000	-I 40000	-w 100
296
297select		$OPTS -N "select_10"	-n 10	-I 500
298select		$OPTS -N "select_100"	-n 100	-I 1000
299select		$OPTS -N "select_1000"	-n 1000	-I 5000
300
301select		$OPTS -N "select_w10"	-n 10	-I 500		-w 1
302select		$OPTS -N "select_w100"	-n 100	-I 2000		-w 10
303select		$OPTS -N "select_w1000"	-n 1000	-I 40000        -w 100
304
305semop		$OPTS -N "semop" -I 200
306
307sigaction	$OPTS -N "sigaction" -I 100
308signal		$OPTS -N "signal" -I 1000
309sigprocmask	$OPTS -N "sigprocmask" -I 200
310
311pthread_create  $OPTS -N "pthread_8"		-B 8
312pthread_create  $OPTS -N "pthread_32"		-B 32
313pthread_create  $OPTS -N "pthread_128"		-B 128
314pthread_create  $OPTS -N "pthread_512"		-B 512
315
316fork		$OPTS -N "fork_10"		-B 10
317fork		$OPTS -N "fork_100"		-B 100  -C 100
318fork		$OPTS -N "fork_1000"		-B 1000 -C 50
319
320exit		$OPTS -N "exit_10"		-B 10
321exit		$OPTS -N "exit_100"		-B 100
322exit		$OPTS -N "exit_1000"		-B 1000 -C 50
323
324exit		$OPTS -N "exit_10_nolibc"	-e -B 10
325
326exec		$OPTS -N "exec" -B 10
327
328system		$OPTS -N "system" -I 1000000
329
330recurse		$OPTS -N "recurse"		-B 512
331
332read		$OPTS -N "read_t1k"	-s 1k			-f $TFILE
333read		$OPTS -N "read_t10k"	-s 10k			-f $TFILE
334read		$OPTS -N "read_t100k"	-s 100k			-f $TFILE
335
336read		$OPTS -N "read_u1k"	-s 1k			-f $VFILE
337read		$OPTS -N "read_u10k"	-s 10k			-f $VFILE
338read		$OPTS -N "read_u100k"	-s 100k			-f $VFILE
339
340read		$OPTS -N "read_z1k"	-s 1k			-f /dev/zero 
341read		$OPTS -N "read_z10k"	-s 10k			-f /dev/zero 
342read		$OPTS -N "read_z100k"	-s 100k			-f /dev/zero 
343read		$OPTS -N "read_zw100k"	-s 100k	         -w	-f /dev/zero 
344
345write		$OPTS -N "write_t1k"	-s 1k			-f $TFILE
346write		$OPTS -N "write_t10k"	-s 10k			-f $TFILE
347write		$OPTS -N "write_t100k"	-s 100k			-f $TFILE
348
349write		$OPTS -N "write_u1k"	-s 1k			-f $VFILE
350write		$OPTS -N "write_u10k"	-s 10k			-f $VFILE
351write		$OPTS -N "write_u100k"	-s 100k			-f $VFILE
352
353write		$OPTS -N "write_n1k"	-s 1k	-I 100 -B 0	-f /dev/null 
354write		$OPTS -N "write_n10k"	-s 10k	-I 100 -B 0	-f /dev/null 
355write		$OPTS -N "write_n100k"	-s 100k	-I 100 -B 0	-f /dev/null 
356
357writev		$OPTS -N "writev_t1k"	-s 1k			-f $TFILE
358writev		$OPTS -N "writev_t10k"	-s 10k		        -f $TFILE
359writev		$OPTS -N "writev_t100k"	-s 100k			-f $TFILE
360
361writev		$OPTS -N "writev_u1k"	-s 1k			-f $VFILE
362writev		$OPTS -N "writev_u10k"	-s 10k			-f $VFILE
363writev		$OPTS -N "writev_u100k"	-s 100k			-f $VFILE
364
365writev		$OPTS -N "writev_n1k"	-s 1k	-I 100 -B 0	-f /dev/null 
366writev		$OPTS -N "writev_n10k"	-s 10k	-I 100 -B 0	-f /dev/null 
367writev		$OPTS -N "writev_n100k"	-s 100k	-I 100 -B 0	-f /dev/null 
368
369pread		$OPTS -N "pread_t1k"	-s 1k	-I 300		-f $TFILE
370pread		$OPTS -N "pread_t10k"	-s 10k	-I 1000		-f $TFILE
371pread		$OPTS -N "pread_t100k"	-s 100k	-I 10000	-f $TFILE
372
373pread		$OPTS -N "pread_u1k"	-s 1k	-I 300		-f $VFILE
374pread		$OPTS -N "pread_u10k"	-s 10k	-I 1000		-f $VFILE
375pread		$OPTS -N "pread_u100k"	-s 100k	-I 10000	-f $VFILE
376
377pread		$OPTS -N "pread_z1k"	-s 1k	-I 300		-f /dev/zero 
378pread		$OPTS -N "pread_z10k"	-s 10k	-I 1000		-f /dev/zero 
379pread		$OPTS -N "pread_z100k"	-s 100k	-I 2000	-f /dev/zero 
380pread		$OPTS -N "pread_zw100k"	-s 100k	-w -I 10000	-f /dev/zero 
381
382pwrite		$OPTS -N "pwrite_t1k"	-s 1k	-I 500		-f $TFILE
383pwrite		$OPTS -N "pwrite_t10k"	-s 10k	-I 1000		-f $TFILE
384pwrite		$OPTS -N "pwrite_t100k"	-s 100k	-I 10000	-f $TFILE
385
386pwrite		$OPTS -N "pwrite_u1k"	-s 1k	-I 500		-f $VFILE
387pwrite		$OPTS -N "pwrite_u10k"	-s 10k	-I 1000		-f $VFILE
388pwrite		$OPTS -N "pwrite_u100k"	-s 100k	-I 20000	-f $VFILE
389
390pwrite		$OPTS -N "pwrite_n1k"	-s 1k	-I 100		-f /dev/null 
391pwrite		$OPTS -N "pwrite_n10k"	-s 10k	-I 100		-f /dev/null 
392pwrite		$OPTS -N "pwrite_n100k"	-s 100k	-I 100		-f /dev/null 
393
394mmap		$OPTS -N "mmap_z8k"	-l 8k   -I 1000		-f /dev/zero
395mmap		$OPTS -N "mmap_z128k"	-l 128k	-I 2000		-f /dev/zero
396mmap		$OPTS -N "mmap_t8k"	-l 8k	-I 1000		-f $TFILE
397mmap		$OPTS -N "mmap_t128k"	-l 128k	-I 1000		-f $TFILE
398mmap		$OPTS -N "mmap_u8k"	-l 8k	-I 1000		-f $VFILE
399mmap		$OPTS -N "mmap_u128k"	-l 128k	-I 1000		-f $VFILE
400mmap		$OPTS -N "mmap_a8k"	-l 8k	-I 200		-f MAP_ANON
401mmap		$OPTS -N "mmap_a128k"	-l 128k	-I 200		-f MAP_ANON
402
403
404mmap		$OPTS -N "mmap_rz8k"	-l 8k	-I 2000 -r	-f /dev/zero
405mmap		$OPTS -N "mmap_rz128k"	-l 128k	-I 2000 -r	-f /dev/zero
406mmap		$OPTS -N "mmap_rt8k"	-l 8k	-I 2000 -r	-f $TFILE
407mmap		$OPTS -N "mmap_rt128k"	-l 128k	-I 20000 -r	-f $TFILE
408mmap		$OPTS -N "mmap_ru8k"	-l 8k	-I 2000 -r	-f $VFILE
409mmap		$OPTS -N "mmap_ru128k"	-l 128k	-I 20000 -r	-f $VFILE
410mmap		$OPTS -N "mmap_ra8k"	-l 8k	-I 2000 -r	-f MAP_ANON
411mmap		$OPTS -N "mmap_ra128k"	-l 128k	-I 20000 -r	-f MAP_ANON
412
413mmap		$OPTS -N "mmap_wz8k"	-l 8k	-I 5000 -w	-f /dev/zero
414mmap		$OPTS -N "mmap_wz128k"	-l 128k	-I 50000 -w	-f /dev/zero
415mmap		$OPTS -N "mmap_wt8k"	-l 8k	-I 5000 -w	-f $TFILE
416mmap		$OPTS -N "mmap_wt128k"	-l 128k	-I 50000 -w	-f $TFILE
417mmap		$OPTS -N "mmap_wu8k"	-l 8k	-I 5000 -w	-f $VFILE
418mmap		$OPTS -N "mmap_wu128k"	-l 128k	-I 500000 -w	-f $VFILE
419mmap		$OPTS -N "mmap_wa8k"	-l 8k	-I 3000 -w	-f MAP_ANON
420mmap		$OPTS -N "mmap_wa128k"	-l 128k	-I 50000 -w	-f MAP_ANON
421
422munmap		$OPTS -N "unmap_z8k"	-l 8k   -I 500		-f /dev/zero
423munmap		$OPTS -N "unmap_z128k"	-l 128k	-I 500		-f /dev/zero
424munmap		$OPTS -N "unmap_t8k"	-l 8k	-I 500		-f $TFILE
425munmap		$OPTS -N "unmap_t128k"	-l 128k	-I 500		-f $TFILE
426munmap		$OPTS -N "unmap_u8k"	-l 8k	-I 500		-f $VFILE
427munmap		$OPTS -N "unmap_u128k"	-l 128k	-I 500		-f $VFILE
428munmap		$OPTS -N "unmap_a8k"	-l 8k	-I 500		-f MAP_ANON
429munmap		$OPTS -N "unmap_a128k"	-l 128k	-I 500		-f MAP_ANON
430
431munmap		$OPTS -N "unmap_rz8k"	-l 8k	-I 1000	-r	-f /dev/zero
432munmap		$OPTS -N "unmap_rz128k"	-l 128k	-I 2000 -r	-f /dev/zero
433munmap		$OPTS -N "unmap_rt8k"	-l 8k	-I 1000	-r	-f $TFILE
434munmap		$OPTS -N "unmap_rt128k"	-l 128k	-I 3000	-r	-f $TFILE
435munmap		$OPTS -N "unmap_ru8k"	-l 8k	-I 1000	-r	-f $VFILE
436munmap		$OPTS -N "unmap_ru128k"	-l 128k	-I 3000	-r	-f $VFILE
437munmap		$OPTS -N "unmap_ra8k"	-l 8k	-I 1000	-r	-f MAP_ANON
438munmap		$OPTS -N "unmap_ra128k"	-l 128k	-I 2000	-r	-f MAP_ANON
439
440connection	$OPTS -N "conn_connect"		-B 256 	-c
441
442munmap		$OPTS -N "unmap_wz8k"	-l 8k	-I 1000	-w	-f /dev/zero
443munmap		$OPTS -N "unmap_wz128k"	-l 128k	-I 8000	-w	-f /dev/zero
444munmap		$OPTS -N "unmap_wt8k"	-l 8k	-I 1000	-w	-f $TFILE
445munmap		$OPTS -N "unmap_wt128k"	-l 128k	-I 10000	-w	-f $TFILE
446munmap		$OPTS -N "unmap_wu8k"	-l 8k	-I 1000	-w	-f $VFILE
447munmap		$OPTS -N "unmap_wu128k"	-l 128k	-I 50000	-w	-f $VFILE
448munmap		$OPTS -N "unmap_wa8k"	-l 8k	-I 1000	-w	-f MAP_ANON
449munmap		$OPTS -N "unmap_wa128k"	-l 128k	-I 10000	-w	-f MAP_ANON
450
451
452mprotect	$OPTS -N "mprot_z8k"	-l 8k  -I 300			-f /dev/zero
453mprotect	$OPTS -N "mprot_z128k"	-l 128k	-I 500		-f /dev/zero
454mprotect	$OPTS -N "mprot_wz8k"	-l 8k	-I 500	-w	-f /dev/zero
455mprotect	$OPTS -N "mprot_wz128k"	-l 128k	-I 1000	-w	-f /dev/zero
456mprotect	$OPTS -N "mprot_twz8k"  -l 8k   -I 1000 -w -t   -f /dev/zero
457mprotect	$OPTS -N "mprot_tw128k" -l 128k -I 2000 -w -t   -f /dev/zero
458mprotect	$OPTS -N "mprot_tw4m"   -l 4m   -w -t -B 1  -f /dev/zero
459
460pipe		$OPTS -N "pipe_pst1"	-s 1	-I 1000	-x pipe -m st
461pipe		$OPTS -N "pipe_pmt1"	-s 1	-I 8000	-x pipe -m mt
462pipe		$OPTS -N "pipe_pmp1"	-s 1	-I 8000	-x pipe -m mp
463pipe		$OPTS -N "pipe_pst4k"	-s 4k	-I 1000	-x pipe -m st
464pipe		$OPTS -N "pipe_pmt4k"	-s 4k	-I 8000	-x pipe -m mt
465pipe		$OPTS -N "pipe_pmp4k"	-s 4k	-I 8000	-x pipe -m mp
466
467pipe		$OPTS -N "pipe_sst1"	-s 1	-I 1000	-x sock -m st
468pipe		$OPTS -N "pipe_smt1"	-s 1	-I 8000	-x sock -m mt
469pipe		$OPTS -N "pipe_smp1"	-s 1	-I 8000	-x sock -m mp
470pipe		$OPTS -N "pipe_sst4k"	-s 4k	-I 1000	-x sock -m st
471pipe		$OPTS -N "pipe_smt4k"	-s 4k	-I 8000	-x sock -m mt
472pipe		$OPTS -N "pipe_smp4k"	-s 4k	-I 8000	-x sock -m mp
473
474pipe		$OPTS -N "pipe_tst1"	-s 1	-I 1000	-x tcp  -m st
475pipe		$OPTS -N "pipe_tmt1"	-s 1	-I 8000	-x tcp  -m mt
476pipe		$OPTS -N "pipe_tmp1"	-s 1	-I 8000	-x tcp  -m mp
477pipe		$OPTS -N "pipe_tst4k"	-s 4k	-I 1000	-x tcp  -m st
478pipe		$OPTS -N "pipe_tmt4k"	-s 4k	-I 8000	-x tcp  -m mt
479pipe		$OPTS -N "pipe_tmp4k"	-s 4k	-I 8000	-x tcp  -m mp
480
481connection	$OPTS -N "conn_accept"		-B 256      -a
482
483close_tcp	$OPTS -N "close_tcp"		-B 32  
484.
485