[comp.sys.amiga] Benchmarking the benchmarks

blaine@worsel.UUCP (Blaine Gardner) (12/24/89)

[Note:  This is a VERY long article!]

All of what follows I did for our local user's group (AUSM:  Amiga User's
Society Members, pronounced "awesome" :-) monthly disk in August 1989.
This was well before Michael Sinz's DiskSpeed v2.0 was available, so rather
than rewrite the whole thing, just keep in mind that I now prefer DiskSpeed
to ANY other disk drive benchmark, and that my DiskSpeed results were
posted in a seperate article.

Below follow lots of timimgs with 5 different disk drive benchmarks.  I no
longer had the ST506 interface ST4096 drive when I decided to test all of
the benchmarks, so I only have DiskPerfa results for the A2090A's ST506
interface.  (The ST-506 results are at the very end of this article.)


***************************************************************************

There are too many disk drive benchmarks!


Comparing disk drives and controllers is complicated enough without adding
another variable by re-writing the benchmark used to test them.  In hopes
of clearing up some of the confusion, I've collected all the disk drive
benchmarks I could find, and ran them off against each other to see which
one is "best".


First the players:

DiskPerfa:  The original, found on Fish Disk #48.  Everyone has it, but
there are a couple of bugs, and it was written before the Fast File System
existed.

DiskPerf:  Updated by Joanne Dow, found on Fish Disk #187.  Bugs fixed, and
modified to use larger buffer (test file) sizes to give more accurate
measurements of fast drives under the Fast File System.

DiskPerf2:  Unknown, found on a BBS with no docs or source code.

DiskPerf3:  Based on the original, with some major changes, found on a BBS.
This one has some cute ANSI formatting, and "Floppy" (small files, similar
to the original), and "Hard Drive" (large files, like jdow's version).
Unfortunately there seem to be some new bugs in it.  Note the 1,310K/second
reading for the Hardframe (in "floppy mode") when others are reporting
750-875K/sec.  That seems a little bit high compared to the rest!

DevSpeed:  Written by Cltd.  Numbers can NOT be compared to DiskPerf
numbers because it's testing at the device driver level and bypassing DOS
and it's overhead.  Is this really a valid test when YOU (and the rest of
the world) must work through DOS?  Numbers are MUCH higher than any version
of DiskPerf.  Also very fragile, it will crash your system if fed wrong
values.  Though it will attempt to test SOMETHING before it crashes.  I
accidentally had it testing a drive that did not exist, and it reported 25
MEGABYTES per second throughput!

The bottom line?  I'd recommend Joanne Dow's version as the best for
testing under the Fast File System.  The numbers can be lower than
DiskPerfa, but are probably more accurate.  Though if you're comparing
numbers with magazine reviews, they probably used the original version.
I'd regard the others as novelties, and not use them for comparisons.



Time for some general observations:

SCSI is faster than ST506.  (Compare the ST4096 times to the Wren III times
on the A2090A, the only thing that changed was the drive).

The HardFrame is faster than the A2090A.  (Compare the A2090A times with
the Wren III and the 68020, to the HardFrame times, the controller was the
only thing changed.)

The A2620 board is faster than the stock 68000.  (Surprise, surprise!  :-)

For easy comparison, here's the 32K file size results for DiskPerfa on all
four configurations I tested.  (See the below for the full results.)

A2090A/68000/ST4096
r/w speed:  buf 32768 bytes, rd 238312 byte/sec, wr 145635 byte/sec

A2090A/68000/Wren III
r/w speed:  buf 32768 bytes, rd 524288 byte/sec, wr 327680 byte/sec

A2090A/68020/Wren III
r/w speed:  buf 32768 bytes, rd 655360 byte/sec, wr 436906 byte/sec

HardFrame/68020/Wren III
r/w speed:  buf 32768 bytes, rd 873813 byte/sec, wr 436906 byte/sec


Also note that none of these benchmarks are very accurate or consistent.
I've recorded variations of 10% between several consecutive runs with the
same benchmark. So any differences of less than 10% in results are mostly
meaningless.  Also beware of comparing apples (or IBMs :-) to oranges.  If
you change only one variable (drive, controller, or CPU) then you've got a
pretty good benchmark, but if both the drive and the controller have been
changed, there's no way to tell which of the two is responsible for the
speed (or lack of it).  A fast drive on a slow controller will make the
controller look very good, but the same drive on a fast controller would
really fly.


All of these test were run on a A2000 with an A2620 card (68020/68881/68851,
2M of 32 bit RAM), 2M RAM card, Kickstart/Workbench 1.3, FastFile System, 1M
Agnus, and a Control Data (CDC) Wren III 150 megabyte SCSI drive. The tests
were all run on a 27 megabyte partition which was reformatted before each
test.

The controller (Commodore A2090A or MicroBotics HardFrame) and CPU (68000
or 68020) were varied as noted by the results filenames. (For example
A2090A.68000.results or HardFrame.68020.results.)

There were no significant background programs running (i.e. a compiler or
database), but there were some small ones like Dmouse and a clock. Only the
minimum possible buffers were used (1 buffer for the A2090A and 5 buffers
for the HardFrame). A standard 4 color Workbench screen was used, but at
704 x 470 size (my normal configuration).

PerfMon (from the 1.3 Extras disk) was run at full speed and 640x200 window
size to observe CPU usage when the disk was being accessed. Without
drawing graphs, both the A2090A and the Hardframe showed about 25-75% CPU
usage with an occasional 100% burst depending on what the test was doing.
Most of the time was at 25%, with regular steps to 75%. These are "eyeball
accurate" estimates, and there was some variation between tests. There was
no big difference between the A2090A and the HardFrame, but both are true
DMA controllers. A non-DMA controller (GVP, Supra, Cltd, Xetec, etc) would
have been interesting to test, but I didn't have one available. PerfMon was
run at priority 1 (it's default), and the tests were run at priority 0.

The numbers I got could probably be "improved" by running a standard size
Workbench screen, using lots of buffers, and not running PerfMon or ANY
other programs. But I feel that this setup gives a fairly "real world"
setup.

	Blaine Gardner, AUSM Secretary/Librarian
	uunet!iconsys!caeco!i-core!worsel!blaine
	utah-cs!esunix!blgardne
	19 August 1989


***************************************************************************

A2090A controller, 68000 CPU, Wren III drive

===========================================================================

DiskPerfa

File create/delete:     create 11 files/sec, delete 40 files/sec
Directory scan:         56 entries/sec
Seek/read test:         69 seek/reads per second
r/w speed:              buf 512 bytes, rd 65536 byte/sec, wr 28807 byte/sec
r/w speed:              buf 4096 bytes, rd 187245 byte/sec, wr 174762 byte/sec
r/w speed:              buf 8192 bytes, rd 327680 byte/sec, wr 201649 byte/sec
r/w speed:              buf 32768 bytes, rd 524288 byte/sec, wr 327680 byte/sec

===========================================================================

DiskPerf.jdow

File create/delete:    create 11 files/sec, delete 40 files/sec
Directory scan:     56 entries/sec
Seek/read test:     68 seek/reads per second
r/w speed:          buf 512 bytes, rd 63230 byte/sec, wr 28391 byte/sec
r/w speed:          buf 4096 bytes, rd 183960 byte/sec, wr 159681 byte/sec
r/w speed:          buf 8192 bytes, rd 291271 byte/sec, wr 179755 byte/sec
r/w speed:          buf 32768 bytes, rd 455902 byte/sec, wr 292625 byte/sec
r/w speed:          buf 131072 bytes, rd 476625 byte/sec, wr 319363 byte/sec
r/w speed:          buf 524288 bytes, rd 511500 byte/sec, wr 340078 byte/sec

===========================================================================

DiskPerf2

DiskPerf2.   Testing Test:

Create Files:    11 files/sec.    Directory Scan:    55 entries/sec.
Delete Files:    38 files/sec.    Seek/Read Test:    68 seek/sec.

Read/Write Speed Test:  (bytes/sec.)

Buffer:  512     Read:     48,545     Write:     21,219
Buffer:   4k     Read:    188,051     Write:    164,456
Buffer:   8k     Read:    298,909     Write:    189,547
Buffer:  32k     Read:    491,827     Write:    300,969
Buffer:  64k     Read:    508,031     Write:    321,254
Buffer: 256k     Read:    519,097     Write:    334,794

===========================================================================

DiskPerf3 floppy mode

DiskPerformance - V3.0 - 03/21/89

Testiing drive ff2: with small files (floppy mode)

File create/delete:	create 11 files/sec, delete 40 files/sec
Directory scan:		56 entries/sec
Seek/read test:		68 seek/reads per second

r/w speed:	buf  1024 bytes, rd  56987 byte/sec, wr  54613 byte/sec
r/w speed:	buf  8192 bytes, rd 327680 byte/sec, wr 218453 byte/sec
r/w speed:	buf 32768 bytes, rd 655360 byte/sec, wr 327680 byte/sec

===========================================================================

DiskPerf3 hard drive mode

DiskPerformance - V3.0 - 03/21/89

Testing drive ff2: with big files (harddisk mode)

File create/delete:	create 11 files/sec, delete 40 files/sec
Directory scan:		56 entries/sec
Seek/read test:		67 seek/reads per second

r/w speed:	buf  1024 bytes, rd  55578 byte/sec, wr  53773 byte/sec
r/w speed:	buf  8192 bytes, rd 283398 byte/sec, wr 179755 byte/sec
r/w speed:	buf 32768 bytes, rd 443060 byte/sec, wr 280868 byte/sec

===========================================================================

DevSpeed

devspeed hddisk.device 3 0
   6 K    Reads  399360  Writes  199680  b/sec
  15 K    Reads  460800  Writes  460800  b/sec
  51 K    Reads  614400  Writes  558545  b/sec
 153 K    Reads  658285  Writes  658285  b/sec
 307 K    Reads  689046  Writes  658285  b/sec
 512 K    Reads  714418  Writes  678895  b/sec
 768 K    Reads  687761  Writes  677647  b/sec
1024 K    Reads  690337  Writes  667826  b/sec
1228 K    Reads  681090  Writes  668734  b/sec
1433 K    Reads  682666  Writes  665500  b/sec

===========================================================================


***************************************************************************

A2090A controller, 68020/32 bit RAM, Wren III drive

===========================================================================

DiskPerfa

File create/delete:     create 14 files/sec, delete 55 files/sec
Directory scan:         135 entries/sec
Seek/read test:         124 seek/reads per second
r/w speed:              buf 512 bytes, rd 104857 byte/sec, wr 29454 byte/sec
r/w speed:              buf 4096 bytes, rd 201649 byte/sec, wr 187245 byte/sec
r/w speed:              buf 8192 bytes, rd 327680 byte/sec, wr 291271 byte/sec
r/w speed:              buf 32768 bytes, rd 655360 byte/sec, wr 436906 byte/sec

===========================================================================

DiskPerf.jdow


File create/delete:    create 14 files/sec, delete 55 files/sec
Directory scan:     131 entries/sec
Seek/read test:     114 seek/reads per second
r/w speed:          buf 512 bytes, rd 97090 byte/sec, wr 28886 byte/sec
r/w speed:          buf 4096 bytes, rd 190074 byte/sec, wr 171429 byte/sec
r/w speed:          buf 8192 bytes, rd 311458 byte/sec, wr 262144 byte/sec
r/w speed:          buf 32768 bytes, rd 577197 byte/sec, wr 379003 byte/sec
r/w speed:          buf 131072 bytes, rd 542366 byte/sec, wr 388361 byte/sec
r/w speed:          buf 524288 bytes, rd 577197 byte/sec, wr 403298 byte/sec

===========================================================================

DiskPerf2.   Testing Test:

Create Files:    14 files/sec.    Directory Scan:   130 entries/sec.
Delete Files:    52 files/sec.    Seek/Read Test:   120 seek/sec.

Read/Write Speed Test:  (bytes/sec.)

Buffer:  512     Read:     74,198     Write:     21,527
Buffer:   4k     Read:    192,611     Write:    174,879
Buffer:   8k     Read:    319,298     Write:    266,677
Buffer:  32k     Read:    583,839     Write:    383,812
Buffer:  64k     Read:    562,540     Write:    400,219
Buffer: 256k     Read:    598,502     Write:    403,919


===========================================================================


DiskPerformance - V3.0 - 03/21/89

Testing drive ff2: with small files (floppy mode)

File create/delete:	create 13 files/sec, delete 52 files/sec
Directory scan:		125 entries/sec
Seek/read test:		119 seek/reads per second

r/w speed:	buf  1024 bytes, rd  56987 byte/sec, wr  56987 byte/sec
r/w speed:	buf  8192 bytes, rd 327680 byte/sec, wr 327680 byte/sec
r/w speed:	buf 32768 bytes, rd 655360 byte/sec, wr 436906 byte/sec


===========================================================================


DiskPerformance - V3.0 - 03/21/89

Testing drive ff2: with big files (harddisk mode)

File create/delete:	create 14 files/sec, delete 55 files/sec
Directory scan:		131 entries/sec
Seek/read test:		121 seek/reads per second

r/w speed:	buf  1024 bytes, rd  56679 byte/sec, wr  55188 byte/sec
r/w speed:	buf  8192 bytes, rd 305410 byte/sec, wr 262144 byte/sec
r/w speed:	buf 32768 bytes, rd 551882 byte/sec, wr 374491 byte/sec


===========================================================================

DevSpeed

devspeed hddisk.device 3 0
   6 K    Reads  399360  Writes  319488  b/sec
  15 K    Reads  460800  Writes  921600  b/sec
  51 K    Reads  614400  Writes  768000  b/sec
 153 K    Reads  670254  Writes  708923  b/sec
 307 K    Reads  682666  Writes  670254  b/sec
 512 K    Reads  710289  Writes  682666  b/sec
 768 K    Reads  690337  Writes  670254  b/sec
1024 K    Reads  690337  Writes  677024  b/sec
1228 K    Reads  682666  Writes  673315  b/sec
1433 K    Reads  682666  Writes  672000  b/sec


===========================================================================


***************************************************************************

HardFrame, 68020/32 bit RAM, Wren III drive

===========================================================================

DiskPerfa

File create/delete:	create 20 files/sec, delete 55 files/sec
Directory scan:		227 entries/sec
Seek/read test:		181 seek/reads per second
r/w speed:		buf 512 bytes, rd 137970 byte/sec, wr 29454 byte/sec
r/w speed:		buf 4096 bytes, rd 201649 byte/sec, wr 187245 byte/sec
r/w speed:		buf 8192 bytes, rd 327680 byte/sec, wr 291271 byte/sec
r/w speed:		buf 32768 bytes, rd 873813 byte/sec, wr 436906 byte/sec

===========================================================================

DiskPerf.jdow

File create/delete:    create 20 files/sec, delete 55 files/sec
Directory scan:	    227 entries/sec
Seek/read test:	    184 seek/reads per second
r/w speed:	    buf 512 bytes, rd 127100 byte/sec, wr 29127 byte/sec
r/w speed:	    buf 4096 bytes, rd 190074 byte/sec, wr 176231 byte/sec
r/w speed:	    buf 8192 bytes, rd 317750 byte/sec, wr 273541 byte/sec
r/w speed:	    buf 32768 bytes, rd 635500 byte/sec, wr 416652 byte/sec
r/w speed:	    buf 131072 bytes, rd 655360 byte/sec, wr 466033 byte/sec
r/w speed:	    buf 524288 bytes, rd 758006 byte/sec, wr 487709 byte/sec

===========================================================================

DiskPerf2.   Testing Test:

Create Files:    20 files/sec.    Directory Scan:   222 entries/sec.
Delete Files:    55 files/sec.    Seek/Read Test:   180 seek/sec.

Read/Write Speed Test:  (bytes/sec.)

Buffer:  512     Read:     94,398     Write:     21,929
Buffer:   4k     Read:    190,373     Write:    176,766
Buffer:   8k     Read:    321,254     Write:    274,496
Buffer:  32k     Read:    630,153     Write:    403,919
Buffer:  64k     Read:    728,177     Write:    472,331
Buffer: 256k     Read:    751,128     Write:    476,625

===========================================================================

DiskPerformance - V3.0 - 03/21/89

Testing drive dh2: with small files (floppy mode)

File create/delete:	create 20 files/sec, delete 55 files/sec
Directory scan:		217 entries/sec
Seek/read test:		194 seek/reads per second

r/w speed:	buf  1024 bytes, rd  56987 byte/sec, wr  56987 byte/sec
r/w speed:	buf  8192 bytes, rd 327680 byte/sec, wr 327680 byte/sec
r/w speed:	buf 32768 bytes, rd 1310720 byte/sec, wr 655360 byte/sec

===========================================================================

DiskPerformance - V3.0 - 03/21/89

Testing drive dh2: with big files (harddisk mode)

File create/delete:	create 21 files/sec, delete 55 files/sec
Directory scan:		227 entries/sec
Seek/read test:		180 seek/reads per second

r/w speed:	buf  1024 bytes, rd  57091 byte/sec, wr  55874 byte/sec
r/w speed:	buf  8192 bytes, rd 320992 byte/sec, wr 275941 byte/sec
r/w speed:	buf 32768 bytes, rd 655360 byte/sec, wr 419430 byte/sec

===========================================================================

HardFrame.device 0 0
   6 K    Reads  319488  Writes  399360  b/sec
  15 K    Reads  460800  Writes  460800  b/sec
  51 K    Reads  768000  Writes  768000  b/sec
 153 K    Reads  921600  Writes  921600  b/sec
 307 K    Reads  996324  Writes  996324  b/sec
 512 K    Reads 1007213  Writes 1007213  b/sec
 768 K    Reads 1007213  Writes 1007213  b/sec
1024 K    Reads 1007213  Writes 1011358  b/sec
1228 K    Reads 1009972  Writes 1009972  b/sec
1433 K    Reads 1017940  Writes 1014938  b/sec

===========================================================================

***************************************************************************

This doesn't exactly fit with the rest of my results because the test was
done under different conditions (no PerfMon, for example). And with a
different drive. But it does show the vast speed difference between the
A2090A's ST506 and SCSI interfaces.


System: Amiga 2000, 3M RAM, WB/KS 1.3, A2090A, ST4096 (ST506) drive, FFS.

DiskPerfa

File create/delete:     create 9 files/sec, delete 23 files/sec
Directory scan:         38 entries/sec
Seek/read test:         95 seek/reads per second
r/w speed:      buf 512 bytes, rd 60963 byte/sec, wr 27306 byte/sec
r/w speed:      buf 4096 bytes, rd 131072 byte/sec, wr 104857 byte/sec
r/w speed:      buf 8192 bytes, rd 174762 byte/sec, wr 124830 byte/sec
r/w speed:      buf 32768 bytes, rd 238312 byte/sec, wr 145635 byte/sec


ST4096 Timings done by Blaine Gardner, 4 December 1988.

***************************************************************************

Whew! Anyone still with me? If you have any questions or comments I'd like
to hear them, especially if you've run similar tests with another
controller (it would be perfect if you have a Wren III drive, but that's
too much to hope for).

See my next posting for a comparison of the Hardframe and A2090A
controllers.

--
Blaine Gardner @ worsel     UUCP: uunet!iconsys!caeco!i-core!worsel!blaine
                                        utah-cs!caeco!i-core!worsel!blaine
                            UUCP at work: utah-cs!esunix!blgardne