1
0
Files
2022-09-29 17:59:04 +03:00

1101 lines
28 KiB
Plaintext
Executable File
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
:
: '@(#) SIIIsetup:3.8 6/20/92 21:12:50'
# SIIIsetup
#
# AIM Suite III v3.1.1
# (C) Copyright AIM Technology Inc. 1986,87,88,89,90,91,92.
# All Rights Reserved.
#
#
NNL=
CCL=
#
# first, figure out how to make echo work without automatic newline
#
if echo "\c" | grep c >/dev/null 2>&1
then
NNL='-n'
else
CCL='\c'
fi
#
# are we doing an APR ?
#
case "$1" in
"") DOAPR=NO ; break;;
"doapr") DOAPR=YES ; break;;
*) echo ;
echo "Usage: SIIIsetup<CR> or SIIIsetup doapr<CR>";
echo ;
exit 0;;
esac
case $# in
0) echo ; break;;
1) echo ; break;;
*) echo ;
echo "Usage: SIIIsetup<CR> or SIIIsetup doapr<CR>";
echo ;
exit 0;;
esac
#
# display intro
#
echo
echo
echo
echo " AIM Suite III SETUP"
echo " (C) Copyright AIM Technology Inc."
echo " 1986,87,88,89,90,91,92"
echo " All rights reserved"
echo
echo
echo "------------"
echo "INTRODUCTION"
echo "------------"
echo
if test "$DOAPR" = "YES"
then
echo "YOU HAVE INDICATED THAT THIS IS AN APR RUN."
echo
fi
echo "This script guides you through the steps needed to tailor the AIM Suite III"
echo "Benchmark to your environment. It will ask you a series of questions to"
echo "identify the components of the System Under Test (SUT). As each question is"
echo "displayed on the screen, you can accept the default value that is enclosed"
echo "in brackets (e.g. [default_value] ), or enter the correct value. At any"
echo "point during the execution of this script, you may type Q to terminate it."
echo
echo "CAUTION: This script will NOT automatically set up the correct environment"
echo "to run AIM Suite III. It is your responsibility to provide the correct"
echo "information for the computer and operating system that are being benchmarked."
echo "Verify and edit the files Makefile and suite3.h as required before running"
echo "AIM Suite III."
echo
echo
while :
do
echo $NNL "Press RETURN to continue, press Q to exit ...$CCL"
read ANS
case "$ANS" in
"") break ;;
Q) exit 0;;
*) echo ; echo "\"$ANS\" is not allowed ... ^G";;
esac
done
echo
echo
echo
echo "You will be asked to provide the following information about the system"
echo "to be tested:"
echo
echo " 1) The version of UNIX (TM) from which the operating system under test"
echo " was derived"
echo
echo " 2) Your compiler name"
echo
echo " 3) The compile flags to be used"
echo
echo " 4) The link options to be used"
echo
echo " 5) The timer function to be used"
echo
echo " 6) The HZ value of the SUT"
echo
echo " 7) The mount point for all configured disk drives, if the SUT is configured"
echo " with more than one drive"
echo
echo "If you do not know or are unsure about any of the items mentioned above,"
echo "press Q to terminate this installation script. Check with your System"
echo "Administrator or consult the SUT manuals for the correct information."
echo
echo
while :
do
echo $NNL "Press RETURN to continue, press Q to exit ...$CCL"
read ANS
case "$ANS" in
"") break ;;
Q) exit 0;;
*) echo ; echo "\"$ANS\" is not allowed ... ^G";;
esac
done
#
# init default settings
#
DSYSTYPE=
DHZ=
CC=cc
DCCOPT=-O
DTIMETYPE=
T_TIMES=1
T_FTIME=1
NO_OLD_APRINFO=NO
echo "-------------"
echo "UNIX(TM) O.S."
echo "-------------"
echo
echo "Which flavor of UNIX(TM) was your Operating System derived from?"
echo
echo " 1) System V"
echo " 2) Berkeley"
echo " 3) Xenix"
echo
while :
do
echo "If you do not know, type Q to exit and find the correct answer."
echo
echo $NNL "Enter operating system type (1, 2 ,3 or Q) [] :$CCL"
read ANS
case "$ANS" in
1) DSYSTYPE=SYS5; DTIMETYPE=times; DHZ=100; break;;
2) DSYSTYPE=V7; DTIMETYPE=ftime; DHZ=60; break;;
3) DSYSTYPE=SYS5; DTIMETYPE=times; DHZ=50; break;;
Q) exit 0;;
*) echo ; echo "\"$ANS\" is not allowed ... ^G";;
esac
done
#
echo
echo
echo "----------"
echo " COMPILER "
echo "----------"
echo
echo "Enter the name of the C compiler you wish to use for this run."
echo
echo " Please use BOTH upper and lower case, exactly as required by your"
echo " compiler."
echo
echo $NNL "Enter compiler name [$CC] :$CCL"
read ANS
if test ! "$ANS" = ""
then
CC=$ANS
fi
#
echo
echo
echo "-------------"
echo "COMPILE FLAGS"
echo "-------------"
echo
echo "Enter any compiler flags that can be specified for $CC. Some examples"
echo "of valid entries are listed below:"
echo
echo " \"-O\" to optimize code produced by \"pcc\" based compilers"
echo " \"-OP\" to do peephole optimization with the Pyramid OSx compiler"
echo " \"-O -f68881\" for optimization and floating point for Sun-3's"
echo
echo " Please use BOTH upper and lower case, exactly as required by your "
echo " compiler."
echo
echo " You may type Q to exit and look up the correct answer."
echo
echo $NNL "Enter compiler flags [$DCCOPT] :$CCL"
read ANS
case "$ANS" in
Q) exit 0 ;;
"") CCOPT=$DCCOPT ; break ;;
*) CCOPT=$ANS ; break ;;
esac
#
LDOPT=
echo
echo
echo "--------------"
echo "LINK LIBRARIES"
echo "--------------"
echo
echo "Are there any linker options that you should identify for AIM Suite III ?"
echo "For information on the linker, refer to the Programmer's Reference Manual"
echo "for your system. You might identify a non-standard location of a library"
echo "or system specific libraries that are needed to build AIM Suite III."
echo "For example, enter \"-Wl,L/usr/local/lib\" to search for libraries in"
echo "a \"/usr/local/lib\" directory."
echo
echo " Again, use BOTH upper and lower case, exactly as required by your"
echo " compiler."
echo
echo " You may type Q to exit and look up the correct answer."
echo
echo $NNL "Enter linker options [$LDOPT] :$CCL"
read ANS
case "$ANS" in
Q) exit 0 ;;
"") break;;
*) LDOPT=$ANS; break;;
esac
#
echo
echo
echo "-----"
echo "TIMER"
echo "-----"
echo
echo "You must identify the timer that your system uses. Usually, BSD based"
echo "UNIX(TM) use the ftime() function while AT&T System V and XENIX based"
echo "UNIX(TM) use the times() function. If you do not know the correct timer,"
echo "type Q to exit and find the correct timer function."
#
while :
do
echo
echo " Allowable entries are \"ftime\" "
echo " or \"times\" "
echo
echo " please use lower case"
echo
echo $NNL "Enter system timer type [$DTIMETYPE] :$CCL"
read ANS
#
case "$ANS" in
ftime) TIMETYPE="-DT_FTIME" ; break ;;
times) TIMETYPE="-DT_TIMES" ; break ;;
Q) exit 0 ;;
"") if test "$DTIMETYPE" = "times"
then
TIMETYPE="-DT_TIMES"
else
TIMETYPE="-DT_FTIME"
fi
break ;;
*) echo ; echo "\"$ANS\" is not allowed ...^G";
esac
done
#
echo
echo
echo "--------"
echo "HZ VALUE"
echo "--------"
echo
echo "Enter the HZ value for your system. For most UNIX(TM) Operating Systems,"
echo "HZ is defined in /usr/include/sys/param.h. However, this may vary with"
echo "some implementations. Check with your System Administrator or consult"
echo "your System manuals."
echo
while :
do
echo "You may type Q to exit and look up the correct HZ value."
echo
#if test "$DOAPR" = "YES"
#then
# echo "If you wish to use AIM calc_hz utility to calculate the HZ value, type C."
# echo
#fi
echo $NNL "Enter the HZ value [$DHZ] :$CCL"
read ANS
case "$ANS" in
[0-9][0-9]) HZ=$ANS; break;;
[0-9][0-9][0-9]) HZ=$ANS; break;;
Q) exit 0 ;;
"") HZ=$DHZ; break ;;
*) echo ; echo "\"$ANS\" is not allowed ...^G";;
# C) if test "$DOAPR" = "YES"
# then
# echo "Calculating HZ value ....."
# echo $NNL ".$CCL"
# $CC $CCOPT $LDOPT $SYS -o calc_hz -c calc_hz.c
# echo $NNL ".$CCL"
# ./calc_hz
# HZ=$?
# while :
# do
# echo "The computed HZ value for this system is $HZ."
# echo $NNL "Press Enter to accept it or Q to look up the correct HZ value : $CCL"
# read ANS
# case "$ANS" in
# "") break;;
# Q) exit 0;;
# *) echo ; echo "\"$ANS\" is not allowed ...^G";;
# esac
# done
# fi;;
esac
done
#
echo
echo
echo "----"
echo "DISK"
echo "----"
echo
echo "A multiuser system is greatly affected by the performance of its I/O"
echo "subsystems. Your disk subsystem has a big impact on Suite III results."
echo
echo "Generally, the more drives and controllers you have, the better your I/O"
echo "throughput will be. If you have configured your system with multiple disk"
echo "drives and would like Suite III to use them to benchmark your system, you"
echo "must list them in the \"config\" file."
echo
echo "For each installed drive that you would like Suite III to use, enter a line"
echo "item '3' giving its mount point like the following example:"
echo
echo " 3 \"/disk1\""
echo
echo "Currently Suite III can directly exercise up to 256 drives. If you are ready,"
echo "you may edit the \"config\" file now. The \"config\" file can be updated"
echo "anytime prior to starting Suite III."
echo
echo "Currently, item '3' in the file is:"
echo
egrep '^Disk|^3' config
echo
DANS=n
while :
do
echo $NNL "Do you want to edit the \"config\" file now (y/n) ? [$DANS] $CCL: "
read ANS
case "$ANS" in
n|N|no|NO) break;;
Q) exit 0 ;;
"") break ;;
y|Y|yes|YES)
numdrvs=1
rm -f /tmp/s3.tmp
cp config config.save
echo
echo "Simply press [ENTER] when you are done."
echo
echo "Examples: /drive1, /drive2, /drive3, etc."
echo
while :
do
MNTPOINT=
echo $NNL "Enter mount point for drive #$numdrvs: $CCL"
read MNTPOINT
if test -n "$MNTPOINT"
then
echo "3 \"$MNTPOINT\"" >>/tmp/s3.tmp
numdrvs=`expr $numdrvs + 1`
else
# if ($numdrvrs == 1)
# then
# echo "3 \"$MNTPOINT\"" >>/tmp/s3.tmp
# fi
break;
fi
done
numdrvs=`expr $numdrvs - 1`
if [ $numdrvs != 0 ]
then
echo
echo "$numdrvs are configured for the benchmark, and the mount points are:"
echo
cat /tmp/s3.tmp | sed -e 's/^.//'
ANS="s"
echo
echo $NNL "Do you want to save or abort this file (s/a)? [$ANS] $CCL: "
read ANS
case $ANS in
""|s|S)
cat /tmp/s3.tmp config | awk '
BEGIN {
first=1;
cnt=0;
once=0;
}
/^[*]+/ {
if (first) first=0;
}
{
if (!first) {
if ($1 == 3) {
if ( once == 0 ) {
for (i=0; i<cnt; i++) {
print mntpt[i];
}
}
once=1;
} else
print $0;
} else {
mntpt[cnt] = $0;
cnt++;
}
}' >/tmp/s3.config
mv -f /tmp/s3.config config
rm -f /tmp/s3.tmp
;;
*)
echo
echo "Aborted! You will need to manually edit the \"config\" file."
;;
esac
fi
break ;;
*) echo ; echo "\"$ANS\" is not allowed ...^G";;
esac
done
#
# create makefile
#
echo
echo $NNL "Creating \"Makefile\" ... $CCL"
rm -f Makefile
echo "# AIM Suite III v3.1 Makefile" > Makefile
echo "# (C) Copyright AIM Technology Inc. 1986,87,88,89,90,91,92." >> Makefile
echo "# All Rights Reserved." >> Makefile
echo "# Created on `date`" >> Makefile
echo "#" >> Makefile
#
if test "$DSYSTYPE" = "SYS5" -o "$DSYSTYPE" = "V7"; then
echo "SYS=-D$DSYSTYPE" >> Makefile
else
echo "SYS=" >> Makefile
fi
echo "CC=$CC" >> Makefile
echo "TIMETYPE=$TIMETYPE" >> Makefile
echo "CCOPT=$CCOPT" >> Makefile
echo "LDOPT=$LDOPT" >> Makefile
echo "DHZ=-DHZ=$HZ" >> Makefile
echo >> Makefile
echo "CFLAGS= \$(CCOPT) \$(TIMETYPE) \$(LDOPT) \$(DHZ) \$(SYS)" >> Makefile
#
cat >> Makefile <<END
TASKS = add.o disk1.o div.o fun.o funcal.o mul.o \\
pipe_cpy.o ram.o creat-clo.o disk_src.o
OBJS = multiuser.o vmctl.o tp_ctl.o ttyctl.o ttyinit.o ttyconf.o rand.o rtmsec.o \$(TASKS)
# ugly but portable, even on (very) dumb makes..
install: tsks multiuser .firsttime clean
./blend
.firsttime: report lptest blend gettime
cc -o gettime gettime.c
chmod a+x REPT
tar -xvf fakeh.tar
@touch .firsttime
mix:
./blend
tsks: \$(TASKS) suite3.h
report: plot filter
.c.o: suite3.h
\$(CC) \$(CFLAGS) -c \$*.c
multiuser: suite3.h vmdrvr tp_drvr ttydrvr \$(OBJS)
\$(CC) \$(CFLAGS) -o multiuser \$(OBJS)
blend: blend.c
\$(CC) \$(CFLAGS) -o blend blend.c
calc_hz: calc_hz.c
\$(CC) \$(CFLAGS) -o calc_hz calc_hz.c
plot: plot.c
\$(CC) \$(CFLAGS) -o plot plot.c
filter: filter.c
\$(CC) \$(CFLAGS) filter.c -o filter
vmctl.o vmdrvr.o: vmtest.h vmem.h testerr.h
vmdrvr: vmdrvr.o vmem.o
\$(CC) \$(CFLAGS) vmdrvr.o vmem.o -o vmdrvr
tp_drvr: tp_drvr.c tp_test.h testerr.h
\$(CC) \$(CFLAGS) tp_drvr.c -o tp_drvr
lptest: lptest.c
\$(CC) \$(CFLAGS) lptest.c -o lptest
tp_ctl.o: tp_test.h testerr.h
clean:
-@for i in *.[ch] ; \\
do \\
ls -l \$\$i | grep -s r--r--r-- ; \\
if [ \$\$? -eq 0 ] ; \\
then \\
rm -f \$\$i ; \\
fi ; \\
done
@rm -f *.o
OBJS1 = ttyctl.o ttydrvr.o ttyinit.o ttyconf.o
\$(OBJS1): ttytest.h testerr.h
ttydrvr: ttydrvr.o ttyinit.o ttyconf.o
\$(CC) \$(CFLAGS) ttydrvr.o ttyinit.o ttyconf.o -o ttydrvr
newrun:
@echo "Resetting AIM Suite III for another run."
@rm -f tmp* core *.o
reset:
@echo "Resetting AIM Suite III to new install condition."
@rm -f .firsttime
@rm -f workfile suite3.ss toutput results
@rm -f plot filter blend calc_hz input multiuser nohup.out
@rm -f RUN SAVE runit
@rm -f ttydrvr vmdrvr tp_drvr lptest
@rm -f tmp* core *.o
@rm -f input.auto output.auto nfs.stat
@rm -rf fakeh
@cp Makefile.s Makefile
END
#
rm -f tmp* core *.o
if test "$DOAPR" = "YES"
then
USE_OLD_APRINFO=NO
if test -f ../save/APRINFO
then
NO_OLD_APRINFO=FALSE
echo "There is an APRINFO file in the ../save directory already."
while :
do
echo
echo "Use the information in that APRINFO file for this Suite III run (y/n)? [y]: $CCL"
read ANS
case "$ANS" in
Y|y) USE_OLD_APRINFO=YES ; break ;;
N|n) USE_OLD_APRINFO=NO ; break ;;
"") USE_OLD_APRINFO=YES ; break ;;
*) echo ; echo "\"$ANS\" is not allowed ...^G";
esac
done
else
NO_OLD_APRINFO=TRUE
fi
if test "$USE_OLD_APRINFO" = "NO" -o "$NO_OLD_APRINFO" = "TRUE"
then
while :
do
echo
echo $NNL "Enter the name of the System Under Test [ex: MS8640]:$CCL"
read SUT_NAME
echo
while :
do
echo "The name of the System Under Test is $SUT_NAME."
echo $NNL "Press Enter to accept press C to change: $CCL"
read ANS
case "$ANS" in
"C") break;;
"") break;;
*) echo; echo "\"$ANS\" is not allowed ...." ;;
esac
done
if test "$ANS" = ""
then break;
fi
done
while :
do
echo
echo $NNL "Enter the price of the SUT as configured [ex: $77,568]:$CCL"
read SUT_PRICE
echo
while :
do
echo "The price of the SUT as configured is $SUT_PRICE."
echo $NNL "Press Enter to accept press C to change: $CCL"
read ANS
case "$ANS" in
"C") break;;
"") break;;
*) echo; echo "\"$ANS\" is not allowed ...." ;;
esac
done
if test "$ANS" = ""
then break;
fi
done
while :
do
echo
echo $NNL "Enter CPU type and number [ex: 88100(2)]:$CCL"
read SUT_CPU
echo
while :
do
echo "The CPU type and number is $SUT_CPU."
echo $NNL "Press Enter to accept press C to change: $CCL"
read ANS
case "$ANS" in
"C") break;;
"") break;;
*) echo; echo "\"$ANS\" is not allowed ...." ;;
esac
done
if test "$ANS" = ""
then break;
fi
done
while :
do
echo
echo $NNL "Enter CPU clock rate [ex: 25 MHz]:$CCL"
read SUT_CLOCKRATE
echo
while :
do
echo "The CPU clock rate is $SUT_CLOCKRATE."
echo $NNL "Press Enter to accept press C to change: $CCL"
read ANS
case "$ANS" in
"C") break;;
"") break;;
*) echo; echo "\"$ANS\" is not allowed ...." ;;
esac
done
if test "$ANS" = ""
then break;
fi
done
while :
do
echo
echo $NNL "Enter amount of external CPU cache [ex: 32 KB data, 32 KB inst.]:$CCL"
read SUT_CACHE
echo
while :
do
echo "The size of the external CPU cache is $SUT_CACHE."
echo $NNL "Press Enter to accept press C to change: $CCL"
read ANS
case "$ANS" in
"C") break;;
"") break;;
*) echo; echo "\"$ANS\" is not allowed ...." ;;
esac
done
if test "$ANS" = ""
then break;
fi
done
while :
do
echo
echo $NNL "Enter FPU type and number [ex: 80387(2)]:$CCL"
read SUT_FPU
echo
while :
do
echo "The FPU type and number is $SUT_FPU."
echo $NNL "Press Enter to accept press C to change: $CCL"
read ANS
case "$ANS" in
"C") break;;
"") break;;
*) echo; echo "\"$ANS\" is not allowed ...." ;;
esac
done
if test "$ANS" = ""
then break;
fi
done
while :
do
echo
echo $NNL "Enter total amount of RAM installed [ex: 32 MB]:$CCL"
read SUT_RAM
echo
while :
do
echo "The size of the intalled RAM is $SUT_RAM."
echo $NNL "Press Enter to accept press C to change: $CCL"
read ANS
case "$ANS" in
"C") break;;
"") break;;
*) echo; echo "\"$ANS\" is not allowed ...." ;;
esac
done
if test "$ANS" = ""
then break;
fi
done
while :
do
echo
echo $NNL "Enter line 1 of information on installed disk drives [ex: 320MB, 11.2ms (2)]:$CCL"
read SUT_DLINE1
echo
while :
do
echo "Line 1 of the information on installed disks is:"
echo "$SUT_DLINE1"
echo $NNL "Press Enter to accept press C to change: $CCL"
read ANS
case "$ANS" in
"C") break;;
"") break;;
*) echo; echo "\"$ANS\" is not allowed ...." ;;
esac
done
if test "$ANS" = ""
then break;
fi
done
while :
do
echo
echo $NNL "Enter line 2 of information on installed disk drives [ex: 320MB, 11.2ms (2)]:$CCL"
read SUT_DLINE2
echo
while :
do
echo "Line 2 of the information on installed disks is:"
echo "$SUT_DLINE2"
echo $NNL "Press Enter to accept press C to change: $CCL"
read ANS
case "$ANS" in
"C") break;;
"") break;;
*) echo; echo "\"$ANS\" is not allowed ...." ;;
esac
done
if test "$ANS" = ""
then break;
fi
done
while :
do
echo
echo $NNL "Enter any additional disk drives information:$CCL"
read SUT_DLINE3
echo
while :
do
echo "Additional disk drives information is:"
echo "$SUT_DLINE3"
echo $NNL "Press Enter to accept press C to change: $CCL"
read ANS
case "$ANS" in
"C") break;;
"") break;;
*) echo; echo "\"$ANS\" is not allowed ...." ;;
esac
done
if test "$ANS" = ""
then break;
fi
done
while :
do
echo
echo $NNL "Enter type and number of disk controllers [ex: SCSI(2)]:$CCL"
read SUT_DCTYPE
echo
while :
do
echo "The type and number of installed disk controller(s) is $SUT_DCTYPE."
echo $NNL "Press Enter to accept press C to change: $CCL"
read ANS
case "$ANS" in
"C") break;;
"") break;;
*) echo; echo "\"$ANS\" is not allowed ...." ;;
esac
done
if test "$ANS" = ""
then break;
fi
done
while :
do
echo
echo $NNL "Enter amount of RAM reserved for I/O buffers [ex: 12MB or dynamic]:$CCL"
read SUT_IOBUFF
echo
while :
do
echo "The amount of RAM reserved for I/O buffering is $SUT_IOBUFF."
echo $NNL "Press Enter to accept press C to change: $CCL"
read ANS
case "$ANS" in
"C") break;;
"") break;;
*) echo; echo "\"$ANS\" is not allowed ...." ;;
esac
done
if test "$ANS" = ""
then break;
fi
done
while :
do
echo
echo $NNL "Enter OS name and version [ex: SYSTEM V/88 r32v2]:$CCL"
read SUT_OSNAME
echo
while :
do
echo "The name and version number of the OS is $SUT_OSNAME."
echo $NNL "Press Enter to accept press C to change: $CCL"
read ANS
case "$ANS" in
"C") break;;
"") break;;
*) echo; echo "\"$ANS\" is not allowed ...." ;;
esac
done
if test "$ANS" = ""
then break;
fi
done
while :
do
echo
echo $NNL "Enter File System type [ex: SYSTEM V enhanced]:$CCL"
read SUT_FS
echo
while :
do
echo "The type of the File System is $SUT_FS."
echo $NNL "Press Enter to accept press C to change: $CCL"
read ANS
case "$ANS" in
"C") break;;
"") break;;
*) echo; echo "\"$ANS\" is not allowed ...." ;;
esac
done
if test "$ANS" = ""
then break;
fi
done
while :
do
echo
echo $NNL "Enter C compiler name and version [ex: SYSTEM V enhanced]:$CCL"
read SUT_CCNAME
echo
while :
do
echo "The name and version number of the C compiler is $SUT_CCNAME."
echo $NNL "Press Enter to accept press C to change: $CCL"
read ANS
case "$ANS" in
"C") break;;
"") break;;
*) echo; echo "\"$ANS\" is not allowed ...." ;;
esac
done
if test "$ANS" = ""
then break;
fi
done
#
# build APRINFO file
#
if test ! -f ../save
then
mkdir ../save
fi
if test -f ../save/APRINFO
then
rm ../save/APRINFO
fi
echo $NNL "NAME: $CCL" > ../save/APRINFO
echo $SUT_NAME >> ../save/APRINFO
echo $NNL "PRICE: $CCL" >> ../save/APRINFO
echo $SUT_PRICE >> ../save/APRINFO
echo $NNL "CPU: $CCL" >> ../save/APRINFO
echo $SUT_CPU >> ../save/APRINFO
echo $NNL "CLOCK RATE: $CCL" >> ../save/APRINFO
echo $SUT_CLOCKRATE >> ../save/APRINFO
echo $NNL "EXTERNAL CACHE SIZE: $CCL" >> ../save/APRINFO
echo $SUT_CACHE >> ../save/APRINFO
echo $NNL "FPU: $CCL" >> ../save/APRINFO
echo $SUT_FPU >> ../save/APRINFO
echo $NNL "RAM SIZE: $CCL" >> ../save/APRINFO
echo $SUT_RAM >> ../save/APRINFO
echo $NNL "DISK DRIVES LINE 1: $CCL" >> ../save/APRINFO
echo $SUT_DLINE1 >> ../save/APRINFO
echo $NNL "DISK DRIVES LINE 2: $CCL" >> ../save/APRINFO
echo $SUT_DLINE2 >> ../save/APRINFO
echo $NNL "ADDITIONAL DISK DRIVES: $CCL" >> ../save/APRINFO
echo $SUT_DLINE3 >> ../save/APRINFO
echo $NNL "DISK CONTROLLER(S): $CCL" >> ../save/APRINFO
echo $SUT_DCTYPE >> ../save/APRINFO
echo $NNL "I/O BUFFERS SIZE: $CCL" >> ../save/APRINFO
echo $SUT_IOBUFF >> ../save/APRINFO
echo $NNL "UNIX VERSION: $CCL" >> ../save/APRINFO
echo $SUT_OSNAME >> ../save/APRINFO
echo $NNL "FILE SYSTEM TYPE: $CCL" >> ../save/APRINFO
echo $SUT_FS >> ../save/APRINFO
echo $NNL "C COMPILER: $CCL" >> ../save/APRINFO
echo $SUT_CCNAME >> ../save/APRINFO
chmod 644 ../save/APRINFO
else
# there is an APRINFO file in the ../save directory already and we are to use
# its content for this Suite III run
SUT_NAME=`grep "NAME:" ../save/APRINFO | sed 's/ //' | awk -F: '{print $2}'`
echo
echo "The name of the System is $SUT_NAME"
fi
#
# Build Suite III input file
#
while :
do
echo
echo $NNL "Enter the maximum number of users to be simulated [ex: 300]: $CCL"
read MAX_USERS
echo
while :
do
echo "The maximum number of users to be simulated is $MAX_USERS."
echo $NNL "Press Enter to accept press C to change: $CCL"
read ANS
case "$ANS" in
"C") break;;
"") break;;
*) echo; echo "\"$ANS\" is not allowed ...." ;;
esac
done
if test "$ANS" = ""
then break;
fi
done
if test -f input
then
rm -f input
fi
echo $SUT_NAME > input
echo "1" >> input
echo "1" >> input
echo "$MAX_USERS" >> input
echo "2" >> input
chmod 644 input
if test -f RUN
then
rm -f RUN
fi
echo "#!/bin/csh" > RUN
echo "# AIM Suite III v3.1 Makefile" >> RUN
echo "# (C) Copyright AIM Technology Inc. 1986,87,88,89,90,91,92." >> RUN
echo "# All Rights Reserved." >> RUN
echo "# Created on `date`" >> RUN
echo "#" >> RUN
echo "" >> RUN
echo "onintr - # ignore interrupts so multiuser will setpgrp" >> RUN
echo "rm -f nfs.stat" >> RUN
echo "" >> RUN
echo "set NFSSTAT=/usr/etc/nfsstat" >> RUN
echo "" >> RUN
echo 'if ( -x $NFSSTAT ) then' >> RUN
echo ' echo "NFS statistics before Suite III run (`date`)" > nfs.stat' >> RUN
echo ' $NFSSTAT >> nfs.stat' >> RUN
echo 'else' >> RUN
echo ' echo "$NFSSTAT NOT FOUND" > nfs.stat' >> RUN
echo 'endif' >> RUN
echo "" >> RUN
echo "multiuser < input" >> RUN
echo "" >> RUN
echo 'if ( -x $NFSSTAT ) then' >> RUN
echo ' echo "" >> nfs.stat' >> RUN
echo ' echo "NFS statistics after Suite III run (`date`)" >> nfs.stat' >> RUN
echo ' $NFSSTAT >> nfs.stat' >> RUN
echo 'endif' >> RUN
#
# create script to save results
#
if test -f SAVE
then
rm -f SAVE
fi
echo "#!/bin/sh" > SAVE
echo "# AIM Suite III v3.1 Makefile" >> SAVE
echo "# (C) Copyright AIM Technology Inc. 1986,87,88,89,90,91,92." >> SAVE
echo "# All Rights Reserved." >> SAVE
echo "# Created on `date`" >> SAVE
echo "#" >> SAVE
echo "if test ! -d ../save" >> SAVE
echo " then" >> SAVE
echo " mkdir ../save" >> SAVE
echo "fi" >> SAVE
echo "if test ! -d ../save/suite3" >> SAVE
echo " then" >> SAVE
echo " mkdir ../save/suite3" >> SAVE
echo "fi" >> SAVE
echo "cp suite3.ss ../save/suite3" >> SAVE
echo "cp dirty_suite3.ss ../save/suite3" >> SAVE
echo "cp toutput ../save/suite3" >> SAVE
echo "cp Makefile ../save/suite3" >> SAVE
echo "cp input ../save/suite3" >> SAVE
echo "cp config ../save/suite3" >> SAVE
echo "cp mixb ../save/suite3" >> SAVE
echo "cp workfile ../save/suite3" >> SAVE
echo "cp RUN ../save/suite3" >> SAVE
echo "cp defs ../save/suite3" >> SAVE
echo "cp nohup.out ../save/suite3" >> SAVE
echo "cp nfs.stat ../save/suite3" >> SAVE
echo "cp nfs.ss ../save/suite3" >> SAVE
echo "echo" >> SAVE
echo "echo" >> SAVE
echo "echo \"Remember to save all source files that have been modified for this run.\" " >> SAVE
echo "echo" >> SAVE
echo "echo" >> SAVE
chmod 755 SAVE
else
if test -f RUN
then
rm -f RUN
fi
echo "# AIM Suite III v3.1 Makefile" > RUN
echo "# (C) Copyright AIM Technology Inc. 1986,87,88,89,90,91,92." >> RUN
echo "# All Rights Reserved." >> RUN
echo "# Created on `date`" >> RUN
echo "#" >> RUN
echo "multiuser" >> RUN
fi # end of doapr loop
chmod 755 RUN
#
# done
#
echo
echo " completed."
echo
echo
if test "$DOAPR" = "YES"
then
echo "Makefile, suite3.h, RUN, input and SAVE have been created."
echo
echo "Enter \"make\" to build AIM Suite III."
echo
echo "Type RUN to run the benchmark then SAVE to save the results of"
echo "this run into the save directory."
echo
echo "If you are running this benchmark on a remote system and it is best to"
echo "logoff while Suite III is running, use:"
echo " \"nohup RUN &\""
echo "to start Suite III then logoff. Log back in about 8 hours later to run"
echo "the SAVE script to collect the results for this run in the save directory."
else
echo "The file \"Makefile\" has been created."
echo
echo "Enter \"make\" to build AIM Suite III."
echo
echo "Type RUN to run AIM Suite III."
fi
echo
echo "If there are any problems, you can either run this configuration script"
echo "again or edit the \"Makefile\" directly."
echo
echo "Examine the \"config\" file to make sure that all the system resources you"
echo "wish to exercise are defined and enabled for this benchmark run."
echo