#! /bin/sh
# This is a shell archive, meaning:
# 1. Remove everything above the #! /bin/sh line.
# 2. Save the resulting text in a file.
# 3. Execute the file with /bin/sh (not csh) to create:
#	announce.doc
#	report.doc
#	submit.doc
#	submit.frm
#	clarify.doc
#	dry.c
#	database.doc
#	dry.db
# This archive created: Wed Oct 15 00:35:39 1986
export PATH; PATH=/bin:/usr/bin:$PATH
if test -f 'announce.doc'
then
	echo shar: "will not over-write existing file 'announce.doc'"
else
cat << \SHAR_EOF > 'announce.doc'
These files comprise the 10/14 distribution of the collected
Dhrystone Benchmarks.  Few new results have been collected,
although there are Compaq/386 and MIPS benchmarks.

The MIPS benchmarks are quite exciting, and a note from John Maskey
indicates that the MIPS Global Optimizer, when enabled, improves
the results to 12329.  Of course, any use of a global or high level
optimizer is forbidden in reporting the dhrystones, since much of
the benchmark may be deleted.  But this test does show what the
optimizer is capable of achieving.

This posting is quite large.  I have including everything that
anybody could possibly want, and to apease the USENET Gods,
I will only post every two months.

Rick Richardson
PC Research, Inc.
ihnp4!castor!pcrat!rick
(201) 834-1378, (201) 918-0432, (201) 922-1134
SHAR_EOF
fi
if test -f 'report.doc'
then
	echo shar: "will not over-write existing file 'report.doc'"
else
cat << \SHAR_EOF > 'report.doc'
                DHRYSTONE 1.1 BENCHMARK SUMMARY
                 Wed Oct 15 00:35:22 EDT 1986
                    SORTED BY MANUFACTURER

MANUF      MODEL      PROC     CLOCK NOREG   REG OS,COMPILER,NOTES
-----      -----      ----     ----- -----   --- -----------------
           Gridcase 3 80C86     4.77   409   438 MS-DOS 2.11,Microsoft 3.01 ,
AT&T       3B2/300    32000     7.20   409   410 UNIX SVR2.0,cc  ,
AT&T       3B2/310    32100     0.00   668   671 UNIX SVR2.4,cc  ,
AT&T       3B2/300    32000     7.20   685   688 UNIX SVR2.0.4,cc  ,
AT&T       3B2/300    32000     7.70   699   697 UNIX SVR3.0,cc  ,
AT&T       UNIX PC    68010    10.00   973  1034 UNIX 5.0.3,cc  ,
AT&T       3B2/400    32100    10.00  1108  1120 UNIX SVR2.0.4,cc  ,
AT&T       6300 PLUS  80286     6.00  1225  1225 UNIX SVR2 vC3,cc  ,
AT&T       3B15       32100    14.00  1797  1798 UNIX 5.2.1,cc  ,
ATI        2000       80286     8.00  1440  1440 UNIX Microport SVR2,cc  large,0 wait state AT clone
ATI        2000       80286     8.00  2145  2145 UNIX Microport SVR2,cc  small,0 wait state AT clone
Amdahl     5860                 0.00 28735 28846 UTS V,cc 1.22 ,
Amiga      1000                 0.00   643   684  ,Manx C 2.30a ,32 bit int
Amiga      1000                 0.00   880   915  ,Manx 2.30a ,16 bit int
Apollo     DN330      68020    12.50  1504  1504 Domain/IX ,cc 4.08 w/o 020,
Apollo     DN330      68020    12.50  1677  1677 Domain/IX ,cc 4.08 w/ 020,
Apple      IIe        65C02     1.02    37    37 DOS 3.3,Aztec CII v1.05i ,
Apple      Lisa       68000     0.00   517   550 UniPlus Sys V,cc  ,
Apple      Macintosh  68000     7.70   625   625 Mac ROM ,DeSmet  ,
Apple      Mac+       68000     7.80   714   769 Mac 3.2,Manx 1.06H ,16 bit int
Apricot    portable   8086      5.00   375   400 MS-DOS 2.11,Microsoft 3.01 ,
Arete      1100/1200  68020    12.00  2741  2808 UNIX SVR2.2,Motorola pcc2  ,
Armstrong             68000     0.00   342   363 Root V,pcc  ,
Atari      520/ST     68000     8.00   446   450 TOS ,Lattice 3.03.01 ,
Atari      520ST      68000     8.00  1063  1136 TOS ,Megamax 1.0 ,
Celerity   1200                 0.00  3921  3916 UNIX 4.2BSD r3.2,  ,
Celerity   C-1230     NCR uP   10.00  4155  4360 UNIX 4.2BSD,cc  ,
Celerity   C1230                0.00  4702  4716 UNIX 4.2BSD r3.2,  ,
Celerity   1260                 0.00  8321  8384 UNIX 4.2BSD r3.2,  ,
Compaq     Compaq II  80286     8.00  1086  1140 MS-DOS 3.1,Microsoft 3.0 large,
Compaq     Compaq II  80286     8.00  1190  1282 MS-DOS 3.1,Microsoft 3.0 medium,
Compaq     Compaq II  80286     8.00  1351  1428 MS-DOS 3.1,Microsoft 3.0 small,
Compaq     386        80386    16.00  1724  1724 PCDOS 3.1,Lattice 3.00H large,
Compaq     386        80386    16.00  2000  2000 PCDOS 3.1,Lattice 3.00H large data,
Compaq     386        80386    16.00  2631  2631 PCDOS 3.1,Lattice 3.00H large data,
Compaq     386        80386    16.00  2941  2941 PCDOS 3.1,Lattice 3.00H small,
Convergent MiniFrame  68010    10.00   919   965 CTIX 3.2,cc  ,
Convergent MiniFrame  68010    10.00   933   985 UNIX SVR2,cc  ,
Counterpoi            68020    12.00  1702  1850 UNIX SV,cc  ,
Cromemco   Z2         Z80       4.00   127   127 Cromix 11.26,ccc  ,
DEC        PDP-11/34A w/FP-11C  0.00   406   449 UNIX V7m,cc  ,
DEC        VAX 11/750           0.00   836   845 BRL Sys V on 4.2BSD ,5bin/cc  ,
DEC        VAX-11/750 w/FPA     0.00   831   852 UNIX 4.2BSD,cc  ,
DEC        VAX 11/750           0.00   835   859 Root 4.2,cc  ,
DEC        PDP-11/73  J-ll,w/F  0.00   772   875 UNIX 2.9BSD,cc  ,
DEC        PDP 11/44            0.00   884   951 UNIX Sys III,cc  ,
DEC        VAX 11/780           0.00  1243  1307 UNIX 4.2BSD,cc  ,
DEC        MicroVAX I           0.00  1361  1385 Mach 4.3,cc  ,
DEC        Micro VAX            0.00  1379  1394 Ultrix 1.1,cc  ,
DEC        MicroVAX I           0.00  1385  1399 Ultrix-32m 1.1,cc  ,
DEC        VAX 11/780           0.00  1417  1441 UNIX 4.2BSD,cc  ,
DEC        VAX 11/780 MA780     0.00  1428  1470 Mach 4.3,cc  ,
DEC        VAX 11/780           0.00  1650  1640 UNIX 5.0.1,cc 4.1.1.31 ,
DEC        2060                 0.00  1677  1736 TOPS 20 ,pcc  ,
DEC        VAX 11/785           0.00  1783  1813 UNIX 4.2BSD,cc  ,
DEC        VAX 11/785           0.00  2063  2069 UNITY/VMS 5.2.2,pcc 4.3 ,
DEC        VAX 11/784           0.00  5263  5555 Mach 4.3,cc  ,1D on 4P
DEC        VAX 8600             0.00  6329  6423 UNIX 4.3BSD,cc  ,
DataMedia  932        68000    10.00   837   888 UNIX SYS V,cc  ,
Encore     Multimax   32032    10.00  1360  1360 Umax 4.2 R2.0 or V R1.0,Green Hills  ,
Fortune    32:16      68000     6.00   346   360 UNIX V7,cc  ,
GMX        Micro-20   68020    12.50  1315  1250 OS-9 1.2,Microware 2.0 ,
Gould      PN6005               0.00  1732  1884 UTX 1.1c+,cc  ,
Gould      PN9080               0.00  4745  4992 UTX-32 1.1C,cc  ,
HP         9000-500   1 CPU, R 18.00  1599  1599 HP-UX 5.05,cc  ,
HP         Bobcat     68020     0.00  2464  2671 HP/UX 5.02 B 9000/320,  ,
HP         9000-500   2 CPUs,  18.00  3020  3020 HP-UX 5.05,cc  ,
HP         9000-500   3 CPUs,  18.00  4140  4140 HP-UX 5.05,cc  ,
Home Brew             Z80       4.00    53    53 CPM-80 ,Hisoft C++  ,
Home Brew             Z80       2.50    91    91 CPM-80 2.2,Aztec CII 1.05g ,
Home Brew             8086      8.00   197   203 iRMX-86 V6,Intel C-86 2.0 large,??
Home Brew             8086      8.00   287   304 iRMX 86 V6,Intel C-86 2.0 small,??
IBM        PC/XT      8088      4.77   259   275 COHERENT 2.3.43,Mark Williams  ,
IBM        PC/XT      8088      4.77   326   347 MS-DOS 2.0,Microsoft 3.01 ,
IBM        PC/AT      80286     9.05   696   692 XENIX SCO SVR2.1,cc  large,
IBM        PC/AT      80286     7.50  1162  1256 Venix/286 SVR2.1,cc Venturcom 2.2 small,
IBM        PC/AT      80286     9.05  1464  1484 XENIX SCO SVR2.1,cc  small,
IBM        PC/RT                0.00  1333  1510 UNIX 4.2BSD,cc  ,
IBM        PC/RT      (6150)w/  0.00  1537  1660 AIX SVR1,cc  ,
IBM        PC/AT      80286     8.00  1729  1796 PC-DOS 3.20,Microsoft 4.0 ,
IBM        PC/AT      80286     9.00  1976  1976 UNIX Microport SVR2,cc  small,
IBM        PC/AT      80286     8.00  2176  2239 PC-DOS 3.20,Microsoft 4.0 small,w/Cheetah 0 ws memory
IBM        4341-12              0.00  3690  3690 Amdahl UTS V,cc 1.11 ,
IBM        4341-12              0.00  3910  3910 Amdahl UTS V,cc 1.11 ,Mike Newtons "optimzer"
IBM        4381-2               0.00  4504  4901  ,c/370  ,
IBM        4381-2               0.00  5681  5681 VM/SP 3.18,Waterloo 1.2 ,
IBM        4381-2               0.00  6440  6440 Amdahl UTS V,cc 1.11 ,
IBM        4381-2               0.00  6850  6850 Amdahl UTS V,cc 1.11 ,Mike Newtons "optimizer"
IBM        3090/200             0.00 31250 31250  ,  ,
IMP        Mentor     68020    16.00  2632  2747 Root V.2,pcc-2  ,
ISI        Optimum V  68020    16.00  3245  3391 UNIX 4.2BSD r3.05,ISI  ,
ISI        Optimum    68020    16.67  3074  3452 UNIX ISI 3.0.1,cc  ,
ISI        Optimum V  68020    16.00  3778  3977 UNIX 4.2BSD r3.05,Green Hills 1.8.0 ,
MIPS       M/500      R2000     8.00  8855 10309 UNIX 4.3BSD,cc  ,
Motorola   MVME121    68010    10.00   820   865 Uniflex ,cc 1.3:0 ,MVME320,050
NCR        Decision M 8088      4.77   166   166 MS-DOS 2.11,Lattice 2.14 small,
NCR        PC4        8088      0.00   212   212 MS-DOS 2.11,Lattice 2.14 small,
NCR        Decision M 8088      4.77   250   250 MS-DOS 2.11,Lattice 3.0g small,
NCR        PC4        8088      4.77   322   322 MS-DOS 2.11,Lattice 3.0g small,
NCR        PC6        8088      8.00   349   349 MS-DOS 2.11,Lattice 2.14 small,
NCR        PC6        8088      8.00   512   512 MS-DOS 2.11,Lattice 3.0g small,
NCR        PC-8       80286     8.00   653   649 XENIX SCO SVR2.0.4,cc  large,
NCR        PC-8       80286     8.00   981   983 XENIX SCO SVR2.0.4,cc  middle,
NCR        PC-8       80286     8.00  1283  1299 XENIX SCO SVR2.0.4,cc  small,
National   VR332      32332    15.00  2851  2851 UNIX SVR2.2,NSC GNX 2 -O,
Phillips              68000     8.00   313   333 Root V.2,pcc-2  ,
Plessey    system68   68000     8.00   408   436 Root V,pcc  ,
Plexus     P35        68000    12.50   835   894 UNIX SYS III,cc  ,
Pyramid    90x        XBIF      8.00  1779  1779 OSx 3.1,CLE 3.2.0 ,
Pyramid    90x        DCU       8.00  2898  2898 OSx 3.1,CLE 3.2.0 ,
Pyramid    98xe       DCU      10.00  3627  3627 OSx 3.1,CLE 3.2.0 ,
Pyramid    Workcenter DCU      10.00  3627  3627 OSx 3.1,CLE 3.2.0 ,
Pyramid    98X        DCU      10.00  3671  3671 OSx 3.1,CLE 3.2.0 ,
Pyramid    98xe       DCU,FPA  10.00  3773  3773 OSx 3.1,CLE 3.2.0 ,
Pyramid    98X        DCU,FPA  10.00  3856  3856 OSx ,CLE 3.2.0 ,
Racal      Redac      68010    10.00   490   525 Root V.2,pcc-2  ,
Ridge      32C V1               0.00  1628  1695 ROS 3.3,Ridge (older) ,
SSB        Chieftan   6809      2.00   210   249 OS/9 Level II 1.2,Microware  ,
Sequent    Balance 80 32032    10.00  1097  1137 Dynix ,cc  ,
Siemens    PC-MX2     32016    10.00   717   745 Root V.2,cc  ,
Stride                68010    10.00  1164  1252 UniStride SVR2,cc  ,
Sun        1/100U               0.00   957  1029 UNIX Sun 2.0,cc  ,
Sun        2/120      68010    10.00   950  1051 UNIX 4.2BSD,cc  no -O,
Sun        1/100U               0.00  1039  1075 UNIX Sun 2.0,Greehills  ,
Sun        2                    0.00  1034  1110 UNIX 4.2BSD,cc  ,
Sun        2/120      68010    10.00  1058  1142 UNIX Sun 2.2,cc  ,
Sun        3/50       68020    15.00  2280  2540 UNIX Sun 3.0,cc  ,
Sun        3/160      68020    16.67  2843  3134 UNIX Sun 3.0,cc  ,
Sun        3/160      68020    16.67  2921  3229 UNIX Sun 3.0,cc  -fsoft,
Sun        3/160      68020    16.67  2949  3236 UNIX Sun 3.0,cc  -f68881,
Sun        3/160      68020    16.67  2946  3246 Sun 4.2 3.0A,cc  ,
Tadpole    Titan      68010    10.00   823   882 Root V,pcc  ,
Torch      Triple X   68010     0.00   578   625 Root V,pcc  ,
VT                    68000     8.00   422   451 Root V.2,pcc2  ,
Victor     Sirius     8088      0.00   284   295 MSDOS 2.11,Microsoft 3.0 large,
Victor     Sirius     8088      0.00   317   335 MSDOS 2.11,Microsoft 3.0 middle,
Victor     Sirius     8088      0.00   357   381 MSDOS 2.11,Microsoft 3.0 small,
Whitechape MG1        32016     8.00   636   675 UNIX 4.2BSD,cc  ,
Zilog      8000 model Z8001     6.00   727   758 Zeus 3.21,cc  segmented,
Zilog      8000 model Z8001     6.00   831   878 Zeus 3.21,cc  non-segment,
benchMark             32016    10.00   643   673 Root V.2,pcc2  ,



                DHRYSTONE 1.1 BENCHMARK SUMMARY
                 Wed Oct 15 00:35:22 EDT 1986
                    SORTED BY PERFORMANCE

MANUF      MODEL      PROC     CLOCK NOREG   REG OS,COMPILER,NOTES
-----      -----      ----     ----- -----   --- -----------------
Apple      IIe        65C02     1.02    37    37 DOS 3.3,Aztec CII v1.05i ,
Home Brew             Z80       4.00    53    53 CPM-80 ,Hisoft C++  ,
Home Brew             Z80       2.50    91    91 CPM-80 2.2,Aztec CII 1.05g ,
Cromemco   Z2         Z80       4.00   127   127 Cromix 11.26,ccc  ,
NCR        Decision M 8088      4.77   166   166 MS-DOS 2.11,Lattice 2.14 small,
Home Brew             8086      8.00   197   203 iRMX-86 V6,Intel C-86 2.0 large,??
NCR        PC4        8088      0.00   212   212 MS-DOS 2.11,Lattice 2.14 small,
SSB        Chieftan   6809      2.00   210   249 OS/9 Level II 1.2,Microware  ,
NCR        Decision M 8088      4.77   250   250 MS-DOS 2.11,Lattice 3.0g small,
IBM        PC/XT      8088      4.77   259   275 COHERENT 2.3.43,Mark Williams  ,
Victor     Sirius     8088      0.00   284   295 MSDOS 2.11,Microsoft 3.0 large,
Home Brew             8086      8.00   287   304 iRMX 86 V6,Intel C-86 2.0 small,??
NCR        PC4        8088      4.77   322   322 MS-DOS 2.11,Lattice 3.0g small,
Phillips              68000     8.00   313   333 Root V.2,pcc-2  ,
Victor     Sirius     8088      0.00   317   335 MSDOS 2.11,Microsoft 3.0 middle,
IBM        PC/XT      8088      4.77   326   347 MS-DOS 2.0,Microsoft 3.01 ,
NCR        PC6        8088      8.00   349   349 MS-DOS 2.11,Lattice 2.14 small,
Fortune    32:16      68000     6.00   346   360 UNIX V7,cc  ,
Armstrong             68000     0.00   342   363 Root V,pcc  ,
Victor     Sirius     8088      0.00   357   381 MSDOS 2.11,Microsoft 3.0 small,
Apricot    portable   8086      5.00   375   400 MS-DOS 2.11,Microsoft 3.01 ,
AT&T       3B2/300    32000     7.20   409   410 UNIX SVR2.0,cc  ,
Plessey    system68   68000     8.00   408   436 Root V,pcc  ,
           Gridcase 3 80C86     4.77   409   438 MS-DOS 2.11,Microsoft 3.01 ,
DEC        PDP-11/34A w/FP-11C  0.00   406   449 UNIX V7m,cc  ,
Atari      520/ST     68000     8.00   446   450 TOS ,Lattice 3.03.01 ,
VT                    68000     8.00   422   451 Root V.2,pcc2  ,
NCR        PC6        8088      8.00   512   512 MS-DOS 2.11,Lattice 3.0g small,
Racal      Redac      68010    10.00   490   525 Root V.2,pcc-2  ,
Apple      Lisa       68000     0.00   517   550 UniPlus Sys V,cc  ,
Apple      Macintosh  68000     7.70   625   625 Mac ROM ,DeSmet  ,
Torch      Triple X   68010     0.00   578   625 Root V,pcc  ,
NCR        PC-8       80286     8.00   653   649 XENIX SCO SVR2.0.4,cc  large,
AT&T       3B2/310    32100     0.00   668   671 UNIX SVR2.4,cc  ,
benchMark             32016    10.00   643   673 Root V.2,pcc2  ,
Whitechape MG1        32016     8.00   636   675 UNIX 4.2BSD,cc  ,
Amiga      1000                 0.00   643   684  ,Manx C 2.30a ,32 bit int
AT&T       3B2/300    32000     7.20   685   688 UNIX SVR2.0.4,cc  ,
IBM        PC/AT      80286     9.05   696   692 XENIX SCO SVR2.1,cc  large,
AT&T       3B2/300    32000     7.70   699   697 UNIX SVR3.0,cc  ,
Siemens    PC-MX2     32016    10.00   717   745 Root V.2,cc  ,
Zilog      8000 model Z8001     6.00   727   758 Zeus 3.21,cc  segmented,
Apple      Mac+       68000     7.80   714   769 Mac 3.2,Manx 1.06H ,16 bit int
DEC        VAX 11/750           0.00   836   845 BRL Sys V on 4.2BSD ,5bin/cc  ,
DEC        VAX-11/750 w/FPA     0.00   831   852 UNIX 4.2BSD,cc  ,
DEC        VAX 11/750           0.00   835   859 Root 4.2,cc  ,
Motorola   MVME121    68010    10.00   820   865 Uniflex ,cc 1.3:0 ,MVME320,050
DEC        PDP-11/73  J-ll,w/F  0.00   772   875 UNIX 2.9BSD,cc  ,
Zilog      8000 model Z8001     6.00   831   878 Zeus 3.21,cc  non-segment,
Tadpole    Titan      68010    10.00   823   882 Root V,pcc  ,
DataMedia  932        68000    10.00   837   888 UNIX SYS V,cc  ,
Plexus     P35        68000    12.50   835   894 UNIX SYS III,cc  ,
Amiga      1000                 0.00   880   915  ,Manx 2.30a ,16 bit int
DEC        PDP 11/44            0.00   884   951 UNIX Sys III,cc  ,
Convergent MiniFrame  68010    10.00   919   965 CTIX 3.2,cc  ,
NCR        PC-8       80286     8.00   981   983 XENIX SCO SVR2.0.4,cc  middle,
Convergent MiniFrame  68010    10.00   933   985 UNIX SVR2,cc  ,
Sun        1/100U               0.00   957  1029 UNIX Sun 2.0,cc  ,
AT&T       UNIX PC    68010    10.00   973  1034 UNIX 5.0.3,cc  ,
Sun        2/120      68010    10.00   950  1051 UNIX 4.2BSD,cc  no -O,
Sun        1/100U               0.00  1039  1075 UNIX Sun 2.0,Greehills  ,
Sun        2                    0.00  1034  1110 UNIX 4.2BSD,cc  ,
AT&T       3B2/400    32100    10.00  1108  1120 UNIX SVR2.0.4,cc  ,
Atari      520ST      68000     8.00  1063  1136 TOS ,Megamax 1.0 ,
Sequent    Balance 80 32032    10.00  1097  1137 Dynix ,cc  ,
Compaq     Compaq II  80286     8.00  1086  1140 MS-DOS 3.1,Microsoft 3.0 large,
Sun        2/120      68010    10.00  1058  1142 UNIX Sun 2.2,cc  ,
AT&T       6300 PLUS  80286     6.00  1225  1225 UNIX SVR2 vC3,cc  ,
GMX        Micro-20   68020    12.50  1315  1250 OS-9 1.2,Microware 2.0 ,
Stride                68010    10.00  1164  1252 UniStride SVR2,cc  ,
IBM        PC/AT      80286     7.50  1162  1256 Venix/286 SVR2.1,cc Venturcom 2.2 small,
Compaq     Compaq II  80286     8.00  1190  1282 MS-DOS 3.1,Microsoft 3.0 medium,
NCR        PC-8       80286     8.00  1283  1299 XENIX SCO SVR2.0.4,cc  small,
DEC        VAX 11/780           0.00  1243  1307 UNIX 4.2BSD,cc  ,
Encore     Multimax   32032    10.00  1360  1360 Umax 4.2 R2.0 or V R1.0,Green Hills  ,
DEC        MicroVAX I           0.00  1361  1385 Mach 4.3,cc  ,
DEC        Micro VAX            0.00  1379  1394 Ultrix 1.1,cc  ,
DEC        MicroVAX I           0.00  1385  1399 Ultrix-32m 1.1,cc  ,
Compaq     Compaq II  80286     8.00  1351  1428 MS-DOS 3.1,Microsoft 3.0 small,
ATI        2000       80286     8.00  1440  1440 UNIX Microport SVR2,cc  large,0 wait state AT clone
DEC        VAX 11/780           0.00  1417  1441 UNIX 4.2BSD,cc  ,
DEC        VAX 11/780 MA780     0.00  1428  1470 Mach 4.3,cc  ,
IBM        PC/AT      80286     9.05  1464  1484 XENIX SCO SVR2.1,cc  small,
Apollo     DN330      68020    12.50  1504  1504 Domain/IX ,cc 4.08 w/o 020,
IBM        PC/RT                0.00  1333  1510 UNIX 4.2BSD,cc  ,
HP         9000-500   1 CPU, R 18.00  1599  1599 HP-UX 5.05,cc  ,
DEC        VAX 11/780           0.00  1650  1640 UNIX 5.0.1,cc 4.1.1.31 ,
IBM        PC/RT      (6150)w/  0.00  1537  1660 AIX SVR1,cc  ,
Apollo     DN330      68020    12.50  1677  1677 Domain/IX ,cc 4.08 w/ 020,
Ridge      32C V1               0.00  1628  1695 ROS 3.3,Ridge (older) ,
Compaq     386        80386    16.00  1724  1724 PCDOS 3.1,Lattice 3.00H large,
DEC        2060                 0.00  1677  1736 TOPS 20 ,pcc  ,
Pyramid    90x        XBIF      8.00  1779  1779 OSx 3.1,CLE 3.2.0 ,
IBM        PC/AT      80286     8.00  1729  1796 PC-DOS 3.20,Microsoft 4.0 ,
AT&T       3B15       32100    14.00  1797  1798 UNIX 5.2.1,cc  ,
DEC        VAX 11/785           0.00  1783  1813 UNIX 4.2BSD,cc  ,
Counterpoi            68020    12.00  1702  1850 UNIX SV,cc  ,
Gould      PN6005               0.00  1732  1884 UTX 1.1c+,cc  ,
IBM        PC/AT      80286     9.00  1976  1976 UNIX Microport SVR2,cc  small,
Compaq     386        80386    16.00  2000  2000 PCDOS 3.1,Lattice 3.00H large data,
DEC        VAX 11/785           0.00  2063  2069 UNITY/VMS 5.2.2,pcc 4.3 ,
ATI        2000       80286     8.00  2145  2145 UNIX Microport SVR2,cc  small,0 wait state AT clone
IBM        PC/AT      80286     8.00  2176  2239 PC-DOS 3.20,Microsoft 4.0 small,w/Cheetah 0 ws memory
Sun        3/50       68020    15.00  2280  2540 UNIX Sun 3.0,cc  ,
Compaq     386        80386    16.00  2631  2631 PCDOS 3.1,Lattice 3.00H large data,
HP         Bobcat     68020     0.00  2464  2671 HP/UX 5.02 B 9000/320,  ,
IMP        Mentor     68020    16.00  2632  2747 Root V.2,pcc-2  ,
Arete      1100/1200  68020    12.00  2741  2808 UNIX SVR2.2,Motorola pcc2  ,
National   VR332      32332    15.00  2851  2851 UNIX SVR2.2,NSC GNX 2 -O,
Pyramid    90x        DCU       8.00  2898  2898 OSx 3.1,CLE 3.2.0 ,
Compaq     386        80386    16.00  2941  2941 PCDOS 3.1,Lattice 3.00H small,
HP         9000-500   2 CPUs,  18.00  3020  3020 HP-UX 5.05,cc  ,
Sun        3/160      68020    16.67  2843  3134 UNIX Sun 3.0,cc  ,
Sun        3/160      68020    16.67  2921  3229 UNIX Sun 3.0,cc  -fsoft,
Sun        3/160      68020    16.67  2949  3236 UNIX Sun 3.0,cc  -f68881,
Sun        3/160      68020    16.67  2946  3246 Sun 4.2 3.0A,cc  ,
ISI        Optimum V  68020    16.00  3245  3391 UNIX 4.2BSD r3.05,ISI  ,
ISI        Optimum    68020    16.67  3074  3452 UNIX ISI 3.0.1,cc  ,
Pyramid    98xe       DCU      10.00  3627  3627 OSx 3.1,CLE 3.2.0 ,
Pyramid    Workcenter DCU      10.00  3627  3627 OSx 3.1,CLE 3.2.0 ,
Pyramid    98X        DCU      10.00  3671  3671 OSx 3.1,CLE 3.2.0 ,
IBM        4341-12              0.00  3690  3690 Amdahl UTS V,cc 1.11 ,
Pyramid    98xe       DCU,FPA  10.00  3773  3773 OSx 3.1,CLE 3.2.0 ,
Pyramid    98X        DCU,FPA  10.00  3856  3856 OSx ,CLE 3.2.0 ,
IBM        4341-12              0.00  3910  3910 Amdahl UTS V,cc 1.11 ,Mike Newtons "optimzer"
Celerity   1200                 0.00  3921  3916 UNIX 4.2BSD r3.2,  ,
ISI        Optimum V  68020    16.00  3778  3977 UNIX 4.2BSD r3.05,Green Hills 1.8.0 ,
HP         9000-500   3 CPUs,  18.00  4140  4140 HP-UX 5.05,cc  ,
Celerity   C-1230     NCR uP   10.00  4155  4360 UNIX 4.2BSD,cc  ,
Celerity   C1230                0.00  4702  4716 UNIX 4.2BSD r3.2,  ,
IBM        4381-2               0.00  4504  4901  ,c/370  ,
Gould      PN9080               0.00  4745  4992 UTX-32 1.1C,cc  ,
DEC        VAX 11/784           0.00  5263  5555 Mach 4.3,cc  ,1D on 4P
IBM        4381-2               0.00  5681  5681 VM/SP 3.18,Waterloo 1.2 ,
DEC        VAX 8600             0.00  6329  6423 UNIX 4.3BSD,cc  ,
IBM        4381-2               0.00  6440  6440 Amdahl UTS V,cc 1.11 ,
IBM        4381-2               0.00  6850  6850 Amdahl UTS V,cc 1.11 ,Mike Newtons "optimizer"
Celerity   1260                 0.00  8321  8384 UNIX 4.2BSD r3.2,  ,
MIPS       M/500      R2000     8.00  8855 10309 UNIX 4.3BSD,cc  ,
Amdahl     5860                 0.00 28735 28846 UTS V,cc 1.22 ,
IBM        3090/200             0.00 31250 31250  ,  ,
SHAR_EOF
fi
if test -f 'submit.doc'
then
	echo shar: "will not over-write existing file 'submit.doc'"
else
cat << \SHAR_EOF > 'submit.doc'
SUBMISSION PROCEDURE
I'm no longer accepting or reporting results from the 1.0 version.
Remember, the "goofed" version?  I am now keeping a real database of
all the reported results.  To help me in automating this process,
I am requesting that all results sent to me are on a copy of the
form in "submit.frm", and mailed to:

	ihnp4!castor!pcrat!dry

A sample filled out form looks like this:

DHRYSTONE 1.1 BENCHMARK REPORTING FORM
MANUF: AT&T
MODEL: 6300 PLUS
PROC: 80286
CLOCK: 6
OS: UNIX
OVERSION: SVR2
COMPILER: cc
CVERSION: 2.0
OPTIONS: large
NOREG: 99999
REG: 99999
NOTES: immersed unit in He
DATE: 8/15/86
SUBMITTER: ihnp4!frostbite (Abby Normal)
MAILTO: ihnp4!castor!pcrat!dry

The good news is that this new format allows reporting the information
in several ways.  I have attached reports sorted by manufacturer and
by performance.  I am also reporting all reasonable submissions, even
for identical configurations.  I gave up trying to figure out which one
might be a better measure.  These things aren't all that reliable a
measure of performance, anyhow, and anybody who quibbles over
say a 10% difference between machines is missing the point, as stated
below.
SHAR_EOF
fi
if test -f 'submit.frm'
then
	echo shar: "will not over-write existing file 'submit.frm'"
else
cat << \SHAR_EOF > 'submit.frm'
DHRYSTONE 1.1 BENCHMARK REPORTING FORM
MANUF:
MODEL:
PROC:
CLOCK:
OS:
OVERSION:
COMPILER:
CVERSION:
OPTIONS:
NOREG:
REG:
NOTES:
DATE:
SUBMITTER:
MAILTO: ihnp4!castor!pcrat!dry
SHAR_EOF
fi
if test -f 'clarify.doc'
then
	echo shar: "will not over-write existing file 'clarify.doc'"
else
cat << \SHAR_EOF > 'clarify.doc'
CLARIFICATION
There seems to have been a great deal of confusion over what this
benchmark measures, and how to use these results.  Let me try to clarify
this:

	1) DHRYSTONE is a measure of processor+compiler efficiency in
	   executing a 'typical' program.  The 'typical' program was
	   designed by measuring statistics on a great number of
	   'real' programs.  The 'typical' program was then written
	   by Reinhold P. Weicker using these statistics.  The
	   program is balanced according to statement type, as well
	   as data type.

	2) DHRYSTONE does not use floating point.  Typical programs don't.

	3) DHRYSTONE does not do I/O.  Typical programs do, but then
	   we'd have a whole can of worms opened up.

	4) DHRYSTONE does not contain much code that can be optimized
	   by vector processors.  That's why a CRAY doesn't look real
	   fast, they weren't built to do this sort of computing.

	5) DHRYSTONE does not measure OS performance, as it avoids
	   calling the O.S.  The O.S. is indicated in the results only
	   to help in identifying the compiler technology.

If somebody asked me to pick out the best machine for the money, I
wouldn't look at just the results of DHRYSTONE.  I'd probably:

	1) Run DHRYSTONE to get a feel for the compiler+processor
	   speed.
	2) Run any number of benchmarks to check disk I/O bandwidth,
	   using both sequential and random read/writes.
	3) Run a multitasking benchmark to check multi-user response
	   time.  Typically, these benchmarks run several types of
	   programs such as editors, shell scripts, sorts, compiles,
	   and plot the results against the number of simulated users.
	4) If appropriate for the intended use, run WHETSTONE, to determine
	   floating point performance.
	5) If appropriate for intended use, run some programs which do
	   vector and matrix computations.
	6) Figure out what the box will:
		- cost to buy
		- cost to operate and maintain
		- be worth when it is sold
		- be worth if the manufacturer goes out of business
	7) Having done the above, I probably have a hand-full of
	   machines which meet my price/performance requirements.
	   Now, I find out if the applications programs I'd like
	   to use will run on any of these machines.  I also find
	   out how much interest people have in writing new software
	   for the machine, and look carefully at the migration path
	   I will have to take when I reach the limits of the machine.

To summarize, DHRYSTONES by themselves are not anything more than
a way to win free beers when arguing 'Box-A versus Box-B' religion.
They do provide insight into Box-A/Compiler-A versus Box-A/Compiler-B
comparisons.

As usual, all comments and new results should be mailed directly
to me at ..ihnp4!castor!pcrat!dry.  I will summarize
and post to the net.  These results are also being sent to Rheinhold
Weicker for adding to his list of Pascal and Ada results.

A SPECIAL THANKS
I didn't write the DHRYSTONE benchmark.  Rheinhold Weicker did. He has
certainly provided us with a useful tool for benchmarking, and is
to be congratulated.

			Rick Richardson
			PC Research, Inc.
			(201) 834-1378 (9-17 EST)
			(201) 922-1134 (7-9,17-24 EST)
			..ihnp4!castor!pcrat!rick	(normal mail)
			..ihnp4!castor!pcrat!dry	(results only)



SHAR_EOF
fi
if test -f 'dry.c'
then
	echo shar: "will not over-write existing file 'dry.c'"
else
cat << \SHAR_EOF > 'dry.c'
/*	EVERBODY:	Please read "APOLOGY" below. -rick 01/06/85
 *
 *	"DHRYSTONE" Benchmark Program
 *
 *	Version:	C/1.1, 12/01/84
 *
 *	Date:		PROGRAM updated 01/06/86, RESULTS updated 03/31/86
 *
 *	Author:		Reinhold P. Weicker,  CACM Vol 27, No 10, 10/84 pg. 1013
 *			Translated from ADA by Rick Richardson
 *			Every method to preserve ADA-likeness has been used,
 *			at the expense of C-ness.
 *
 *	Compile:	cc -O dry.c -o drynr			: No registers
 *			cc -O -DREG=register dry.c -o dryr	: Registers
 *
 *	Defines:	Defines are provided for old C compiler's
 *			which don't have enums, and can't assign structures.
 *			The time(2) function is library dependant; Most
 *			return the time in seconds, but beware of some, like
 *			Aztec C, which return other units.
 *			The LOOPS define is initially set for 50000 loops.
 *			If you have a machine with large integers and is
 *			very fast, please change this number to 500000 to
 *			get better accuracy.  Please select the way to
 *			measure the execution time using the TIME define.
 *			For single user machines, time(2) is adequate. For
 *			multi-user machines where you cannot get single-user
 *			access, use the times(2) function.  If you have
 *			neither, use a stopwatch in the dead of night.
 *			Use a "printf" at the point marked "start timer"
 *			to begin your timings. DO NOT use the UNIX "time(1)"
 *			command, as this will measure the total time to
 *			run this program, which will (erroneously) include
 *			the time to malloc(3) storage and to compute the
 *			time it takes to do nothing.
 *
 *	Run:		drynr; dryr
 *
 *	Results:	If you get any new machine/OS results, please send to:
 *
 *				ihnp4!castor!pcrat!rick
 *
 *			and thanks to all that do.
 *
 *	Note:		I order the list in increasing performance of the
 *			"with registers" benchmark.  If the compiler doesn't
 *			provide register variables, then the benchmark
 *			is the same for both REG and NOREG.
 *
 *	PLEASE:		Send complete information about the machine type,
 *			clock speed, OS and C manufacturer/version.  If
 *			the machine is modified, tell me what was done.
 *			On UNIX, execute uname -a and cc -V to get this info.
 *
 *	80x8x NOTE:	80x8x benchers: please try to do all memory models
 *			for a particular compiler.
 *
 *	APOLOGY (1/30/86):
 *		Well, I goofed things up!  As pointed out by Haakon Bugge,
 *		the line of code marked "GOOF" below was missing from the
 *		Dhrystone distribution for the last several months.  It
 *		*WAS* in a backup copy I made last winter, so no doubt it
 *		was victimized by sleepy fingers operating vi!
 *
 *		The effect of the line missing is that the reported benchmarks
 *		are 15% too fast (at least on a 80286).  Now, this creates
 *		a dilema - do I throw out ALL the data so far collected
 *		and use only results from this (corrected) version, or
 *		do I just keep collecting data for the old version?
 *
 *		Since the data collected so far *is* valid as long as it
 *		is compared with like data, I have decided to keep
 *		TWO lists- one for the old benchmark, and one for the
 *		new.  This also gives me an opportunity to correct one
 *		other error I made in the instructions for this benchmark.
 *		My experience with C compilers has been mostly with
 *		UNIX 'pcc' derived compilers, where the 'optimizer' simply
 *		fixes sloppy code generation (peephole optimization).
 *		But today, there exist C compiler optimizers that will actually
 *		perform optimization in the Computer Science sense of the word,
 *		by removing, for example, assignments to a variable whose
 *		value is never used.  Dhrystone, unfortunately, provides
 *		lots of opportunities for this sort of optimization.
 *
 *		I request that benchmarkers re-run this new, corrected
 *		version of Dhrystone, turning off or bypassing optimizers
 *		which perform more than peephole optimization.  Please
 *		indicate the version of Dhrystone used when reporting the
 *		results to me.
 *		
 *
 *	The following program contains statements of a high-level programming
 *	language (C) in a distribution considered representative:
 *
 *	assignments			53%
 *	control statements		32%
 *	procedure, function calls	15%
 *
 *	100 statements are dynamically executed.  The program is balanced with
 *	respect to the three aspects:
 *		- statement type
 *		- operand type (for simple data types)
 *		- operand access
 *			operand global, local, parameter, or constant.
 *
 *	The combination of these three aspects is balanced only approximately.
 *
 *	The program does not compute anything meaningfull, but it is
 *	syntactically and semantically correct.
 *
 */

/* Accuracy of timings and human fatigue controlled by next two lines */
#define LOOPS	50000		/* Use this for slow or 16 bit machines */
/*#define LOOPS	500000		/* Use this for faster machines */

/* Compiler dependent options */
#undef	NOENUM			/* Define if compiler has no enum's */
#undef	NOSTRUCTASSIGN		/* Define if compiler can't assign structures */

/* define only one of the next two defines */
#define TIMES			/* Use times(2) time function */
/*#define TIME			/* Use time(2) time function */

/* define the granularity of your times(2) function (when used) */
#define HZ	60		/* times(2) returns 1/60 second (most) */
/*#define HZ	100		/* times(2) returns 1/100 second (WECo) */

/* for compatibility with goofed up version */
/*#undef GOOF			/* Define if you want the goofed up version */

#ifdef GOOF
char	Version[] = "1.0";
#else
char	Version[] = "1.1";
#endif

#ifdef	NOSTRUCTASSIGN
#define	structassign(d, s)	memcpy(&(d), &(s), sizeof(d))
#else
#define	structassign(d, s)	d = s
#endif

#ifdef	NOENUM
#define	Ident1	1
#define	Ident2	2
#define	Ident3	3
#define	Ident4	4
#define	Ident5	5
typedef int	Enumeration;
#else
typedef enum	{Ident1, Ident2, Ident3, Ident4, Ident5} Enumeration;
#endif

typedef int	OneToThirty;
typedef int	OneToFifty;
typedef char	CapitalLetter;
typedef char	String30[31];
typedef int	Array1Dim[51];
typedef int	Array2Dim[51][51];

struct	Record
{
	struct Record		*PtrComp;
	Enumeration		Discr;
	Enumeration		EnumComp;
	OneToFifty		IntComp;
	String30		StringComp;
};

typedef struct Record 	RecordType;
typedef RecordType *	RecordPtr;
typedef int		boolean;

#define	NULL		0
#define	TRUE		1
#define	FALSE		0

#ifndef REG
#define	REG
#endif

extern Enumeration	Func1();
extern boolean		Func2();

#ifdef TIMES
#include <sys/types.h>
#include <sys/times.h>
#endif

main()
{
	Proc0();
	exit(0);
}

/*
 * Package 1
 */
int		IntGlob;
boolean		BoolGlob;
char		Char1Glob;
char		Char2Glob;
Array1Dim	Array1Glob;
Array2Dim	Array2Glob;
RecordPtr	PtrGlb;
RecordPtr	PtrGlbNext;

Proc0()
{
	OneToFifty		IntLoc1;
	REG OneToFifty		IntLoc2;
	OneToFifty		IntLoc3;
	REG char		CharLoc;
	REG char		CharIndex;
	Enumeration	 	EnumLoc;
	String30		String1Loc;
	String30		String2Loc;
	extern char		*malloc();
	register unsigned int	i;

#ifdef TIME
	long			time();
	long			starttime;
	long			benchtime;
	long			nulltime;

	starttime = time( (long *) 0);
	for (i = 0; i < LOOPS; ++i);
	nulltime = time( (long *) 0) - starttime; /* Computes o'head of loop */
#endif
#ifdef TIMES
	time_t			starttime;
	time_t			benchtime;
	time_t			nulltime;
	struct tms		tms;

	times(&tms); starttime = tms.tms_utime;
	for (i = 0; i < LOOPS; ++i);
	times(&tms);
	nulltime = tms.tms_utime - starttime; /* Computes overhead of looping */
#endif

	PtrGlbNext = (RecordPtr) malloc(sizeof(RecordType));
	PtrGlb = (RecordPtr) malloc(sizeof(RecordType));
	PtrGlb->PtrComp = PtrGlbNext;
	PtrGlb->Discr = Ident1;
	PtrGlb->EnumComp = Ident3;
	PtrGlb->IntComp = 40;
	strcpy(PtrGlb->StringComp, "DHRYSTONE PROGRAM, SOME STRING");
#ifndef	GOOF
	strcpy(String1Loc, "DHRYSTONE PROGRAM, 1'ST STRING");	/*GOOF*/
#endif
	Array2Glob[8][7] = 10;	/* Was missing in published program */

/*****************
-- Start Timer --
*****************/
#ifdef TIME
	starttime = time( (long *) 0);
#endif
#ifdef TIMES
	times(&tms); starttime = tms.tms_utime;
#endif
	for (i = 0; i < LOOPS; ++i)
	{

		Proc5();
		Proc4();
		IntLoc1 = 2;
		IntLoc2 = 3;
		strcpy(String2Loc, "DHRYSTONE PROGRAM, 2'ND STRING");
		EnumLoc = Ident2;
		BoolGlob = ! Func2(String1Loc, String2Loc);
		while (IntLoc1 < IntLoc2)
		{
			IntLoc3 = 5 * IntLoc1 - IntLoc2;
			Proc7(IntLoc1, IntLoc2, &IntLoc3);
			++IntLoc1;
		}
		Proc8(Array1Glob, Array2Glob, IntLoc1, IntLoc3);
		Proc1(PtrGlb);
		for (CharIndex = 'A'; CharIndex <= Char2Glob; ++CharIndex)
			if (EnumLoc == Func1(CharIndex, 'C'))
				Proc6(Ident1, &EnumLoc);
		IntLoc3 = IntLoc2 * IntLoc1;
		IntLoc2 = IntLoc3 / IntLoc1;
		IntLoc2 = 7 * (IntLoc3 - IntLoc2) - IntLoc1;
		Proc2(&IntLoc1);
	}

/*****************
-- Stop Timer --
*****************/

#ifdef TIME
	benchtime = time( (long *) 0) - starttime - nulltime;
	printf("Dhrystone(%s) time for %ld passes = %ld\n",
		Version,
		(long) LOOPS, benchtime);
	printf("This machine benchmarks at %ld dhrystones/second\n",
		((long) LOOPS) / benchtime);
#endif
#ifdef TIMES
	times(&tms);
	benchtime = tms.tms_utime - starttime - nulltime;
	printf("Dhrystone(%s) time for %ld passes = %ld\n",
		Version,
		(long) LOOPS, benchtime/HZ);
	printf("This machine benchmarks at %ld dhrystones/second\n",
		((long) LOOPS) * HZ / benchtime);
#endif

}

Proc1(PtrParIn)
REG RecordPtr	PtrParIn;
{
#define	NextRecord	(*(PtrParIn->PtrComp))

	structassign(NextRecord, *PtrGlb);
	PtrParIn->IntComp = 5;
	NextRecord.IntComp = PtrParIn->IntComp;
	NextRecord.PtrComp = PtrParIn->PtrComp;
	Proc3(NextRecord.PtrComp);
	if (NextRecord.Discr == Ident1)
	{
		NextRecord.IntComp = 6;
		Proc6(PtrParIn->EnumComp, &NextRecord.EnumComp);
		NextRecord.PtrComp = PtrGlb->PtrComp;
		Proc7(NextRecord.IntComp, 10, &NextRecord.IntComp);
	}
	else
		structassign(*PtrParIn, NextRecord);

#undef	NextRecord
}

Proc2(IntParIO)
OneToFifty	*IntParIO;
{
	REG OneToFifty		IntLoc;
	REG Enumeration		EnumLoc;

	IntLoc = *IntParIO + 10;
	for(;;)
	{
		if (Char1Glob == 'A')
		{
			--IntLoc;
			*IntParIO = IntLoc - IntGlob;
			EnumLoc = Ident1;
		}
		if (EnumLoc == Ident1)
			break;
	}
}

Proc3(PtrParOut)
RecordPtr	*PtrParOut;
{
	if (PtrGlb != NULL)
		*PtrParOut = PtrGlb->PtrComp;
	else
		IntGlob = 100;
	Proc7(10, IntGlob, &PtrGlb->IntComp);
}

Proc4()
{
	REG boolean	BoolLoc;

	BoolLoc = Char1Glob == 'A';
	BoolLoc |= BoolGlob;
	Char2Glob = 'B';
}

Proc5()
{
	Char1Glob = 'A';
	BoolGlob = FALSE;
}

extern boolean Func3();

Proc6(EnumParIn, EnumParOut)
REG Enumeration	EnumParIn;
REG Enumeration	*EnumParOut;
{
	*EnumParOut = EnumParIn;
	if (! Func3(EnumParIn) )
		*EnumParOut = Ident4;
	switch (EnumParIn)
	{
	case Ident1:	*EnumParOut = Ident1; break;
	case Ident2:	if (IntGlob > 100) *EnumParOut = Ident1;
			else *EnumParOut = Ident4;
			break;
	case Ident3:	*EnumParOut = Ident2; break;
	case Ident4:	break;
	case Ident5:	*EnumParOut = Ident3;
	}
}

Proc7(IntParI1, IntParI2, IntParOut)
OneToFifty	IntParI1;
OneToFifty	IntParI2;
OneToFifty	*IntParOut;
{
	REG OneToFifty	IntLoc;

	IntLoc = IntParI1 + 2;
	*IntParOut = IntParI2 + IntLoc;
}

Proc8(Array1Par, Array2Par, IntParI1, IntParI2)
Array1Dim	Array1Par;
Array2Dim	Array2Par;
OneToFifty	IntParI1;
OneToFifty	IntParI2;
{
	REG OneToFifty	IntLoc;
	REG OneToFifty	IntIndex;

	IntLoc = IntParI1 + 5;
	Array1Par[IntLoc] = IntParI2;
	Array1Par[IntLoc+1] = Array1Par[IntLoc];
	Array1Par[IntLoc+30] = IntLoc;
	for (IntIndex = IntLoc; IntIndex <= (IntLoc+1); ++IntIndex)
		Array2Par[IntLoc][IntIndex] = IntLoc;
	++Array2Par[IntLoc][IntLoc-1];
	Array2Par[IntLoc+20][IntLoc] = Array1Par[IntLoc];
	IntGlob = 5;
}

Enumeration Func1(CharPar1, CharPar2)
CapitalLetter	CharPar1;
CapitalLetter	CharPar2;
{
	REG CapitalLetter	CharLoc1;
	REG CapitalLetter	CharLoc2;

	CharLoc1 = CharPar1;
	CharLoc2 = CharLoc1;
	if (CharLoc2 != CharPar2)
		return (Ident1);
	else
		return (Ident2);
}

boolean Func2(StrParI1, StrParI2)
String30	StrParI1;
String30	StrParI2;
{
	REG OneToThirty		IntLoc;
	REG CapitalLetter	CharLoc;

	IntLoc = 1;
	while (IntLoc <= 1)
		if (Func1(StrParI1[IntLoc], StrParI2[IntLoc+1]) == Ident1)
		{
			CharLoc = 'A';
			++IntLoc;
		}
	if (CharLoc >= 'W' && CharLoc <= 'Z')
		IntLoc = 7;
	if (CharLoc == 'X')
		return(TRUE);
	else
	{
		if (strcmp(StrParI1, StrParI2) > 0)
		{
			IntLoc += 7;
			return (TRUE);
		}
		else
			return (FALSE);
	}
}

boolean Func3(EnumParIn)
REG Enumeration	EnumParIn;
{
	REG Enumeration	EnumLoc;

	EnumLoc = EnumParIn;
	if (EnumLoc == Ident3) return (TRUE);
	return (FALSE);
}

#ifdef	NOSTRUCTASSIGN
memcpy(d, s, l)
register char	*d;
register char	*s;
register int	l;
{
	while (l--) *d++ = *s++;
}
#endif
SHAR_EOF
fi
if test -f 'database.doc'
then
	echo shar: "will not over-write existing file 'database.doc'"
else
cat << \SHAR_EOF > 'database.doc'
The file "dry.db" is the DHRYSTONE 1.1 benchmark results
in Venturcom's "Prelude" database format.  This format can be
manipulated on UNIX systems which have the Prelude database
manager, or it can easily be manipulated by "awk" scripts.

The format consists of two lines of table header information,
followed by rows of table data.  The header lines indicate the
column names.  The column information is separated by a single
ASCII tab character.

I hope this format is more useful than the old hand editted format.
With this posting, I am no longer accepting or reporting DHRYSTONE
1.0 benchmark results.  Only those results which are from DHRYSTONE
1.1 and mailed to me on the standard form (see the announcement in
net.arch or net.micro) will be accepted.
SHAR_EOF
fi
if test -f 'dry.db'
then
	echo shar: "will not over-write existing file 'dry.db'"
else
cat << \SHAR_EOF > 'dry.db'
MANUF:t	MODEL:t	PROC:t	CLOCK:f	OS:t	OVERSION:t	COMPILER:t	CVERSION:t	OPTIONS:t	NOREG:i	REG:i	NOTES:t	DATE:d	SUBMITTER:t
-	-	-	-	-	-	-	-	-	-	-	-	-	-
Apple	IIe	65C02	1.02	DOS	3.3	Aztec CII	v1.05i		37	37		3/3/86	meccts!ahby (Shane McCarron)
Home Brew		Z80	4	CPM-80		Hisoft C++			53	53		4/10/86	blade.me.brunel.ac.uk!andrew (Andrew Findlay)
Home Brew		Z80	2.5	CPM-80	2.2	Aztec CII	1.05g		91	91		2/24/86	faraday.ECE.CMU.EDU!dan (Dan Nydick)
Home Brew		8086	8	iRMX-86	V6	Intel C-86	2.0	large	197	203	??	3/14/86	mcvax!stc!pete (Peter Kendell)
SSB	Chieftan	6809	2	OS/9 Level II	1.2	Microware			210	249		4/11/86	uokvax!emjej (James Jones)
IBM	PC/XT	8088	4.77	COHERENT	2.3.43	Mark Williams			259	275		2/22/86	infopro!les (Les Hancock)
Home Brew		8086	8	iRMX 86	V6	Intel C-86	2.0	small	287	304	??		
Fortune	32:16	68000	6	UNIX	V7	cc			346	360		2/20/86	tolerant!leach (Geoff Leach)
DEC	PDP-11/34A	w/FP-11C		UNIX	V7m	cc			406	449		3/3/86	eplunix!ijs (Ishmael Stefanov-Wagner)
Apple	Lisa	68000		UniPlus	Sys V	cc			517	550		4/6/86	darth!plooba!shannon (Marc Shannon)
Apple	Macintosh 512	68000	7.7	Mac ROM		DeSmet			625	625			cs.ubc.cdn!ludemann (Peter Ludemann)
IBM	PC/AT	80286	9.05	XENIX	SCO SVR2.1	cc		large	696	692		4/11/86	reed!omen!caf (Chuck Forsberg)
DEC	VAX-11/750	w/FPA		UNIX	4.2BSD	cc			831	852		3/3/86	eplunix!ijs (Ishmael Stefanov-Wagner)
DataMedia	932	68000	10	UNIX	SYS V	cc			837	888		3/5/86	csi!ggere (Gary Gere)
Plexus	P35	68000	12.5	UNIX	SYS III	cc			835	894		3/3/86	meccts!ahby (Shane McCarron)
Convergent	MiniFrame	68010	10	CTIX	3.2	cc			919	965		4/5/86	adelie!ora!tim (Tim O'Reilly)
Convergent	MiniFrame	68010	10	UNIX	SVR2	cc			933	985		4/5/86	pitt!darth!dehart (Ed DeHart)
AT&T	UNIX PC	68010	10	UNIX	5.0.3	cc			973	1034			
Atari	520ST	68000	8	TOS		Megamax	1.0		1063	1136		4/7/86	megamax!eric (Eric Parker)
Compaq	Compaq II	80286	8	MS-DOS	3.1	Microsoft	3.0	large	1086	1140		3/3/86	meccts!ahby (Shane McCarron)
AT&T	6300 PLUS	80286	6	UNIX	SVR2 vC3	cc			1225	1225		4/1/86	cbuxc!cbgmv!gmv (Mike Vrbanac)
IBM	PC/AT	80286	7.5	Venix/286	SVR2.1	cc	Venturcom 2.2	small	1162	1256		8/11/86	Rick Richardson pcrat!rick
Compaq	Compaq II	80286	8	MS-DOS	3.1	Microsoft	3.0	medium	1190	1282		3/3/86	meccts!ahby (Shane McCarron)
DEC	MicroVAX II			Mach	4.3	cc			1361	1385		2/23/86	wb1.cs.cmu.edu!avie (Avadis Tevanian)
DEC	MicroVAX II			Ultrix-32m	1.1	cc			1385	1399			
Compaq	Compaq II	80286	8	MS-DOS	3.1	Microsoft	3.0	small	1351	1428		3/3/86	meccts!ahby (Shane McCarron)
DEC	VAX 11/780			UNIX	4.2BSD	cc			1417	1441		3/25/86	rdlvax!carande (Richard Carande)
DEC	VAX 11/780	MA780		Mach	4.3	cc			1428	1470		2/23/86	wb1.cs.cmu.edu!avie (Avadis Tevanian)
IBM	PC/AT	80286	9.05	XENIX	SCO SVR2.1	cc		small	1464	1484		4/11/86	reed!omen!caf (Chuck Forsberg)
Apollo	DN330	68020	12.5	Domain/IX		cc	4.08	w/o 020	1504	1504		4/3/86	bambi!mike (Mike)
DEC	VAX 11/780			UNIX	5.0.1	cc	4.1.1.31		1650	1640		2/20/86	solar!eds (E.D.Shultz)
Apollo	DN330	68020	12.5	Domain/IX		cc	4.08	w/ 020	1677	1677		4/3/86	bambi!mike (Mike)
Ridge	32C V1			ROS	3.3	Ridge	(older)		1628	1695		3/5/86	jplgodo!steve (Steve Schlaifer)
Gould	PN6005			UTX	1.1c+	cc			1732	1884		3/6/86	dukebar!ndd (Ned Danieley)
DEC	VAX 11/785			UNITY/VMS	5.2.2	pcc	4.3		2063	2069		5/2/86	mcvax!enstvax!dax (Philippe Dax)
HP	Bobcat	68020		HP/UX	5.02 B 9000/320				2464	2671			
Sun	3/160	68020	16.67	Sun 4.2	3.0A	cc			2946	3246		4/9/86	otto!carl (Carl Shapiro)
ISI	Optimum V	68020	16	UNIX	4.2BSD r3.05	ISI			3245	3391		4/23/86	isieng!karen (Karen Murphy)
IBM	4341-12			Amdahl UTS	V	cc	1.11		3690	3690		5/1/86	cit-vax!newton (Mike Newton)
IBM	4341-12			Amdahl UTS	V	cc	1.11		3910	3910	Mike Newtons "optimzer"	5/1/86	cit-vax!newton (Mike Newton)
ISI	Optimum V	68020	16	UNIX	4.2BSD r3.05	Green Hills	1.8.0		3778	3977		4/23/86	isieng!karen (Karen Murphy)
Celerity	C-1230	NCR uP	10	UNIX	4.2BSD	cc			4155	4360		5/5/86	glacier!mtu!pop (Dave Poplawski)
Gould	PN9080			UTX-32	1.1C	cc			4745	4992		2/22/86	bullwinkle!jqj (J.Q.Johnson)
DEC	VAX 11/784			Mach	4.3	cc			5263	5555	1D on 4P	2/23/86	wb1.cs.cmu.edu!avie (Avadis Tevanian)
IBM	4381-2			VM/SP	3.18	Waterloo	1.2		5681	5681		4/7/86	UCF1VM!WOODRUFF (Mark Woodruff)
DEC	VAX 8600			UNIX	4.3BSD	cc			6329	6423		2/27/86	utah-cs!b-davis (Brad Davis)
IBM	4381-2			Amdahl UTS	V	cc	1.11		6440	6440		5/1/86	cit-vax!newton (Mike Newton)
IBM	4381-2			Amdahl UTS	V	cc	1.11		6850	6850	Mike Newtons "optimizer"	5/1/86	cit-vax!newton (Mike Newton)
Amdahl	5860			UTS	V	cc	1.22		28735	28846		2/23/86	attunix!mjs (Marty Shannon)
IBM	3090/200								31250	31250		2/19/86	bu-cs!bzs (Barry Shein)
Sun	2/120	68010	10	UNIX	4.2BSD	cc		no -O	950	1051		6/9/86	sdcrdcf!alex (Alex Hwang)
Encore	Multimax	32032	10	Umax	4.2 R2.0 or V R1.0	Green Hills			1360	1360		6/13/86	encore!pinocchio!grier (Jim Grier)
Racal	Redac	68010	10	Root	V.2	pcc-2			490	525		6/12/86	mcvax!rootcl!njh (Nigel Horne)
Tadpole	Titan	68010	10	Root	V	pcc			823	882		6/12/86	mcvax!rootcl!njh (Nigel Horne)
Phillips		68000	8	Root	V.2	pcc-2			313	333		6/12/86	mcvax!rootcl!njh (Nigel Horne)
DEC	VAX 11/750			Root	4.2	cc			835	859		6/12/86	mcvax!rootcl!njh (Nigel Horne)
DEC	VAX 11/750			BRL Sys V on 4.2BSD		5bin/cc			836	845		6/12/86	mcvax!rootcl!njh (Nigel Horne)
DEC	PDP 11/44			UNIX	Sys III	cc			884	951		6/12/86	mcvax!rootcl!njh (Nigel Horne)
Plessey	system68	68000	8	Root	V	pcc			408	436		6/12/86	mcvax!rootcl!njh (Nigel Horne)
VT		68000	8	Root	V.2	pcc2			422	451		6/12/86	mcvax!rootcl!njh (Nigel Horne)
IMP	Mentor	68020	16	Root	V.2	pcc-2			2632	2747		6/12/86	mcvax!rootcl!njh (Nigel Horne)
Armstrong		68000		Root	V	pcc			342	363		6/12/86	mcvax!rootcl!njh (Nigel Horne)
benchMark		32016	10	Root	V.2	pcc2			643	673		6/12/86	mcvax!rootcl!njh (Nigel Horne)
Torch	Triple X	68010		Root	V	pcc			578	625		6/12/86	mcvax!rootcl!njh (Nigel Horne)
Sequent	Balance 8000	32032	10	Dynix		cc			1097	1137		6/12/86	mcvax!rootcl!njh (Nigel Horne)
Atari	520/ST	68000	8	TOS		Lattice	3.03.01		446	450		6/19/86	prle2!slavenbg (Gert Slavenburg)
Celerity	1260			UNIX	4.2BSD r3.2				8321	8384		6/27/86	celerity!celit!bobbyo (Bob Ollerton)
Celerity	C1230			UNIX	4.2BSD r3.2				4702	4716		6/27/86	celerity!celit!bobbyo (Bob Ollerton)
Celerity	1200			UNIX	4.2BSD r3.2				3921	3916		6/27/86	celerity!celit!bobbyo (Bob Ollerton)
Siemens	PC-MX2	32016	10	Root	V.2	cc			717	745		7/1/86	mcvax!rootcl!njh (Nigel Horne)
Stride		68010	10	UniStride	SVR2	cc			1164	1252		7/3/86	stride!bruce (Bruce Robertson)
IBM	PC/AT	80286	9	UNIX	Microport SVR2	cc		small	1976	1976		7/12/86	umix!b-tech!zeeff (Jon Zeeff)
ATI	2000	80286	8	UNIX	Microport SVR2	cc		small	2145	2145	0 wait state AT clone	7/16/86	wb6rqn!brian (Brian Lloyd)
ATI	2000	80286	8	UNIX	Microport SVR2	cc		large	1440	1440	0 wait state AT clone	7/16/86	wb6rqn!brian (Brian Lloyd)
NCR	PC-8	80286	8	XENIX	SCO SVR2.0.4	cc		small	1283	1299		7/30/86	unido!tub!net (Oliver Laumann)
NCR	PC-8	80286	8	XENIX	SCO SVR2.0.4	cc		middle	981	983		7/30/86	unido!tub!net (Oliver Laumann)
NCR	PC-8	80286	8	XENIX	SCO SVR2.0.4	cc		large	653	649		7/30/86	unido!tub!net (Oliver Laumann)
Cromemco	Z2	Z80	4	Cromix	11.26	ccc			127	127		8/5/86	Requested Anonimity
AT&T	3B2/310	32100		UNIX	SVR2.4	cc			668	671		8/5/86	Requested Anonimity
DEC	PDP-11/73	J-ll,w/FPA		UNIX	2.9BSD	cc			772	875		8/5/86	Requested Anonimity
Sun	2/120	68010	10	UNIX	Sun 2.2	cc			1058	1142		8/5/86	Requested Anonymity
Pyramid	90x	XBIF	8	OSx	3.1	CLE	3.2.0		1779	1779		8/5/86	Requested Anonymity
Counterpoint		68020	12	UNIX	SV	cc			1702	1850		8/5/86	Requested Anonymity
Sun	3/50	68020	15	UNIX	Sun 3.0	cc			2280	2540		8/5/86	Requested Anonymity
Pyramid	90x	DCU	8	OSx	3.1	CLE	3.2.0		2898	2898		8/5/86	Requested Anonymity
Sun	3/160	68020	16.67	UNIX	Sun 3.0	cc		-fsoft	2921	3229		8/5/86	Requested Anonymity
Sun	3/160	68020	16.67	UNIX	Sun 3.0	cc		-f68881	2949	3236		8/5/86	Requested Anonymity
ISI	Optimum	68020	16.67	UNIX	ISI 3.0.1	cc			3074	3452		8/5/86	Requested Anonymity
Pyramid	Workcenter	DCU	10	OSx	3.1	CLE	3.2.0		3627	3627		8/5/86	Requested Anonymity
Pyramid	98xe	DCU	10	OSx	3.1	CLE	3.2.0		3627	3627		8/5/86	Requested Anonymity
Pyramid	98X	DCU	10	OSx	3.1	CLE	3.2.0		3671	3671		8/5/86	Requested Anonymity
Pyramid	98xe	DCU,FPA	10	OSx	3.1	CLE	3.2.0		3773	3773		8/5/86	Requested Anonymity
Pyramid	98X	DCU,FPA	10	OSx		CLE	3.2.0		3856	3856		8/5/86	Requested Anonymity
AT&T	3B2/300	32000	7.2	UNIX	SVR2.0.4	cc			685	688		8/5/86	unirot!halloran (Bob Halloran)
AT&T	3B2/400	32100	10	UNIX	SVR2.0.4	cc			1108	1120		8/5/86	unirot!halloran (Bob Halloran)
AT&T	3B2/300	32000	7.2	UNIX	SVR2.0	cc			409	410		8/5/86	mcvax!steven (Steven Pemberton)
IBM	PC/XT	8088	4.77	MS-DOS	2.0	Microsoft	3.01		326	347		8/5/86	mcvax!steven (Steven Pemberton)
	Gridcase 3	80C86	4.77	MS-DOS	2.11	Microsoft	3.01		409	438		8/5/86	mcvax!steven (Steven Pemberton)
Apricot	portable	8086	5	MS-DOS	2.11	Microsoft	3.01		375	400		8/5/86	mcvax!steven (Steven Pemberton)
Whitechapel	MG1	32016	8	UNIX	4.2BSD	cc			636	675		8/5/86	mcvax!steven (Steven Pemberton)
DEC	VAX 11/780			UNIX	4.2BSD	cc			1243	1307		8/3/86	bgsuvax!gruber (John Gruber)
DEC	VAX 11/785			UNIX	4.2BSD	cc			1783	1813		8/3/86	bgsuvax!gruber (John Gruber)
DEC	2060			TOPS 20		pcc			1677	1736		8/3/86	bgsuvax!gruber (John Gruber)
IBM	4381-2					c/370			4504	4901		8/3/86	bgsuvax!gruber (John Gruber)
Arete	1100/1200	68020	12	UNIX	SVR2.2	Motorola pcc2			2741	2808		5/4/86	arete!stone (David Stone)
Sun	3/160	68020	16.67	UNIX	Sun 3.0	cc			2843	3134		4/7/86	hoptoad!gnu (John Gilmore)
Sun	1/100U			UNIX	Sun 2.0	cc			957	1029		4/6/86	lll-lcc!tflop!mac (Mike McNamara)
Sun	1/100U			UNIX	Sun 2.0	Greehills			1039	1075		4/6/86	lll-lcc!tflop!mac (Mike McNamara)
NCR	Decision Mate 5	8088	4.77	MS-DOS	2.11	Lattice	2.14	small	166	166		4/18/86	ncr-sd!se-sd!cbk (Carl Kuck)
NCR	PC4	8088		MS-DOS	2.11	Lattice	2.14	small	212	212		4/18/86	ncr-sd!se-sd!cbk (Carl Kuck)
NCR	Decision Mate 5	8088	4.77	MS-DOS	2.11	Lattice	3.0g	small	250	250		4/18/86	ncr-sd!se-sd!cbk (Carl Kuck)
NCR	PC4	8088	4.77	MS-DOS	2.11	Lattice	3.0g	small	322	322		4/18/86	ncr-sd!se-sd!cbk (Carl Kuck)
NCR	PC6	8088	8	MS-DOS	2.11	Lattice	2.14	small	349	349		4/18/86	ncr-sd!se-sd!cbk (Carl Kuck)
NCR	PC6	8088	8	MS-DOS	2.11	Lattice	3.0g	small	512	512		4/18/86	ncr-sd!se-sd!cbk (Carl Kuck)
Amiga	1000					Manx	C 2.30a		643	684	32 bit int	4/20/86	iuvax!jec (James Conley)
Amiga	1000					Manx	2.30a		880	915	16 bit int	4/20/86	iuvax!jec (James Conley)
Zilog	8000 model 31	Z8001	6	Zeus	3.21	cc		non-segment	831	878		4/20/86	drilex!dricej (Craig Jackson)
Zilog	8000 model 31	Z8001	6	Zeus	3.21	cc		segmented	727	758		4/20/86	drilex!dricej (Craig Jackson)
IBM	PC/RT	(6150)w/FPA		AIX	SVR1	cc			1537	1660		5/22/86	ukma!david (David Herron)
Sun	2			UNIX	4.2BSD	cc			1034	1110		5/17/86	a.psy.cmu.edu!bader (Miles Bader)
DEC	Micro VAX II			Ultrix	1.1	cc			1379	1394		5/17/86	a.psy.cmu.edu!bader (Miles Bader)
IBM	PC/RT			UNIX	4.2BSD	cc			1333	1510		5/17/86	a.psy.cmu.edu!bader (Miles Bader)
IBM	PC/AT	80286	8	PC-DOS	3.20	Microsoft	4.0		1729	1796		8/11/86	microsof!stevesa
IBM	PC/AT	80286	8	PC-DOS	3.20	Microsoft	4.0	small	2176	2239	w/Cheetah 0 ws memory	8/11/86	microsof!stevesa
HP	9000-500	1 CPU, Rev B	18	HP-UX	5.05	cc			1599	1599		5/11/86	hpfcla!bury (Robert Bury)
HP	9000-500	2 CPUs, Rev B	18	HP-UX	5.05	cc			3020	3020		5/11/86	hpfcla!bury (Robert Bury)
HP	9000-500	3 CPUs, Rev B	18	HP-UX	5.05	cc			4140	4140		5/11/86	hpfcla!bury (Robert Bury)
AT&T	3B15	32100	14	UNIX	5.2.1	cc			1797	1798		8/19/86	unirot!halloran (Bob Halloran)
AT&T	3B2/300	32000	7.7	UNIX	SVR3.0	cc			699	697		8/20/86	unirot!halloran (Bob Halloran)
Compaq	386	80386	16	PCDOS	3.1	Lattice	3.00H	small	2941	2941		9/16/86	3comvax!Marc_Lavine
Compaq	386	80386	16	PCDOS	3.1	Lattice	3.00H	large	1724	1724		9/16/86	3comvax!Marc_Lavine
Compaq	386	80386	16	PCDOS	3.1	Lattice	3.00H	large data	2000	2000		9/16/86	3comvax!Marc_Lavine
Compaq	386	80386	16	PCDOS	3.1	Lattice	3.00H	large data	2631	2631		9/16/86	3comvax!Marc_Lavine
Victor	Sirius	8088		MSDOS	2.11	Microsoft	3.0	small	357	381		9/26/86	unido!pbinfo!michael (Michael Schmidt)
Victor	Sirius	8088		MSDOS	2.11	Microsoft	3.0	middle	317	335		9/26/86	unido!pbinfo!michael (Michael Schmidt)
Victor	Sirius	8088		MSDOS	2.11	Microsoft	3.0	large	284	295		9/26/86	unido!pbinfo!michael (Michael Schmidt)
MIPS	M/500	R2000	8	UNIX	4.3BSD	cc			8855	10309		10/8/86	mips!mash (John Mashey)
Apple	Mac+	68000	7.8	Mac	3.2	Manx	1.06H		714	769	16 bit int	8/21/86	tekcbi!larryh
Motorola	MVME121	68010	10	Uniflex		cc	1.3:0		820	865	MVME320,050	8/21/86	tekcbi!larryh
GMX	Micro-20	68020	12.5	OS-9	1.2	Microware	2.0		1315	1250		9/4/86	rochester!dibble
National	VR332	32332	15	UNIX	SVR2.2	NSC GNX	2	-O	2851	2851		10/2/86	nsc!curry (Ray Curry)
SHAR_EOF
fi
exit 0
#	End of shell archive