[net.micro] Z80 Dhrystones/Sec results

michaelk@azure.UUCP (Mike Kersenbrock) (11/15/85)

Yes, the Z80 can do dhrystones (at all).  I noticed that only
"16-bit" and larger processors were being compared.  I thought it would
be interesting to compare this benchmark (for whatever it's worth) to 
a "last-generation"  CPU to see just how much improvement we've actually
had (if any).

My oldie goldie home computer is a Z80B that currently runs at 5.0 Mhz with no
wait states.  It runs CP/M 3.0 ("CP/M Plus") with timestamping.
The compiler is Aztec C II (release 1.05g).  I compiled the net.sources
dhrystone benchmark with noenums, and using "time(2)".  I implemented
time(2) previously when I was getting "make" up and running.  I ran it
with LOOPS = 50000.

My results should be clockrate-proportional to to any other Z80 based
system with the same compiler and no waitstates.

My results are the first entry below, making it the new slowest CPU
on the block, however, it's not as slow as I expected.

Mike Kersenbrock
Tektronix Software Development Products
Aloha, Oregon

/*
 *	"DHRYSTONE" Benchmark Program
 *
 *	Version:	C/1
 *	Date:		12/01/84, RESULTS updated 10/22/85 (now 11/14/85)
 *	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.
 ~
 * ~
 * MACHINE	MICROPROCESSOR	OPERATING	COMPILER	DHRYSTONES/SEC.
 * TYPE				SYSTEM				NO REG	REGS
 * --------------------------	------------	-----------	---------------
 * "generic"    Z80 - 5.0 MHz   CP/M 3.0        Aztec C II       165     180
 * IBM PC/XT	8088-4.77Mhz	PC/IX		cc		 257	 287
 * Cosmos	68000-8Mhz	UniSoft		cc		 305	 322
 * IBM PC/XT	8088-4.77Mhz	VENIX/86 2.0	cc		 297	 324
 * IBM PC	8088-4.77Mhz	MSDOS 2.0	b16cc 2.0	 310	 340
 * IBM PC	8088-4.77Mhz	MSDOS 2.0	CI-C86 2.20M	 390	 390
 * IBM PC/XT	8088-4.77Mhz	PCDOS 2.1	Lattice 2.15	 403	  -  @
 * PDP-11/34	-		UNIX V7M	cc		 387	 438
 * Onyx C8002	Z8000-4Mhz	IS/1 1.1 (V7)	cc		 476	 511
 * ATT PC6300	8086-8Mhz	MSDOS 2.11	b16cc 2.0	 632	 684
 * IBM PC/AT	80286-6Mhz	PCDOS 3.0	CI-C86 2.1	 666	 684
 * Macintosh	68000-7.8Mhz 2M Mac Rom		Mac C 32 bit int 694	 704
 * Macintosh	68000-7.7Mhz	-		MegaMax C 2.0	 661	 709
 * NEC PC9801F	8086-8Mhz	PCDOS 2.11	Lattice 2.15	 768	  -  @
 * ATT PC6300	8086-8Mhz	MSDOS 2.11	CI-C86 2.20M	 769	 769
 * ATT 3B2/300	WE32000-?Mhz	UNIX 5.0.2	cc		 735	 806
 * IBM PC/AT	80286-6Mhz	PCDOS 3.0	MS 3.0(large)	 833	 847 LM
 * VAX 11/750	-		Unix 4.2bsd	cc		 862	 877
 * Fast Mac	68000-7.7Mhz	-		MegaMax C 2.0	 839	 904 +
 * Macintosh	68000-7.8Mhz 2M Mac Rom		Mac C 16 bit int 877	 909 S
 * IRIS-1400	68010-10Mhz	Unix System V	cc		 909	1000
 * IBM PC/AT	80286-6Mhz	VENIX/86 2.1	cc		 961	1000
 * IBM PC/AT	80286-6Mhz	PCDOS 3.0	b16cc 2.0	 943	1063
 * IBM PC/AT	80286-6Mhz	PCDOS 3.0	MS 3.0(small)	1063	1086
 * VAX 11/750	-		VMS		VAX-11 C 2.0	 958	1091
 * ATT PC7300	68010-10Mhz	UNIX 5.2	cc		1041	1111
 * ATT PC6300+	80286-6Mhz	MSDOS 3.1	b16cc 2.0	1111	1219
 * Sun2/120	68010-10Mhz	Sun 4.2BSD	cc		1136	1219
 * IBM PC/AT	80286-6Mhz	PCDOS 3.0	CI-C86 2.20M	1219	1219
 * MASSCOMP 500 68010-10MHz	RTU V3.0	cc (V3.2)	1156	1238
 * Cyb DataMate 68010-12.5Mhz	Uniplus 5.0	Unisoft cc	1162	1250
 * PDP 11/70	-		UNIX 5.2	cc		1162	1250
 * IBM PC/AT	80286-6Mhz	PCDOS 3.1	Lattice 2.15	1250	  -  @
 * IBM PC/AT	80286-7.5Mhz	VENIX/86 2.1	cc		1190	1315 *
 * Sun2/120	68010-10Mhz	Standalone	cc		1219	1315
 * ATT 3B2/400	WE32100-?Mhz	UNIX 5.2	cc		1315	1315
 * HP-110	8086-5.33Mhz	MSDOS 2.11	Aztec-C		1282	1351 ?
 * IBM PC/AT	80286-6Mhz	?		?		1250	1388 ?
 * ATT PC6300+	80286-6Mhz	MSDOS 3.1	CI-C86 2.20M	1428	1428
 * Cyb DataMate 68010-12.5Mhz	Uniplus 5.0	Unisoft cc	1470	1562 S
 * VAX 11/780	-		UNIX 5.2	cc		1515	1562
 * MicroVAX-II	-		-		-		1562	1612
 * ATT 3B20	-		UNIX 5.2	cc		1515	1724
 * HP9000-500	B series CPU	HP-UX 4.02	cc		1724	-
 * IBM PC/STD	80286-8Mhz	?		?		1724	1785
 * Gould PN6005 -		UTX 1.1(4.2BSD) cc		1675	1964
 * VAX 11/785	-		UNIX 5.2	cc		2083	2083
 * VAX 11/785	-		VMS		VAX-11 C 2.0	2083	2083
 * Pyramid 90x	-		OSx 2.3		cc		2272	2272
 * Pyramid 90x	-		OSx 2.5		cc		3125	3125
 * SUN 3/75	68020-16.67Mhz	SUN 4.2 V3	cc		3333	3571
 * Sun 3/180	68020-16.67Mhz	Sun 4.2		cc		3333	3846
 * MC 5400	68020-16.67MHz	RTU V3.0	cc (V4.0)	3952	4054
 * SUN-3/160C	68020-16.67Mhz	Sun3.0ALPHA1 Un*x		3333	4166
 * Gould PN9080 -		UTX-32 1.1c	cc		-	4629
 * MC 5600/5700 68020-16.67MHz	RTU V3.0	cc (V4.0)	4504	4746 %
 * VAX 8600	-		VMS		VAX-11 C 2.0	7142	7142
 * Amdahl 470 V/8		?		?		-      15015
 * Amdahl 580	-		UTS 5.0 Rel 1.2 cc Ver. 1.5    23076   23076
 * Amdahl 5860			?		?		-      28355
 *
 *   *	15Mhz crystal substituted for original 12Mhz;
 *   +	This Macintosh was upgraded from 128K to 512K in such a way that
 *	the new 384K of memory is not slowed down by video generator accesses.
 *   %	Single processor; MC == MASSCOMP
 *   &	Seattle Telecom STD-286 board
 *   @	vanilla Lattice compiler used with MicroPro standard library
 *   S	Shorts used instead of ints
 *   LM Large Memory Model. (Otherwise, all 80x8x results are small model)
 *   ?	I don't trust results marked with '?'.	These were sent to me with
 *	either incomplete information, or with times that just don't make sense.
 *	If anybody can confirm these figures, please respond.
 *
-- 

Mike Kersenbrock
Tektronix Software Development Products
Aloha, Oregon