[Coco] hard disk performance
Chuck Youse
cyouse at serialtechnologies.com
Sat Sep 27 11:13:16 EDT 2008
On Fri, 2008-09-26 at 05:45 -0400, Robert Gault wrote:
> So, to propose a specific test, get Megaread from the NitrOS-9
> distribution and transfer it to your Coco hard drive system. Then
> execute the command sequence
> load date
> date t; megaread </h#@; date t
> where # is the number of the drive under test.
>
That's exactly the test I used. Sorry I wasn't explicit. I didn't load
'date' or 'megaread', but that doesn't seem to have a huge impact on the
numbers.
In addition to date -t, I checked the time with a stopwatch to be sure
the Coco was tracking time properly.
> Results on my Ken-Ton scsi adapter, 6309 modified RGB-DOS driver, and
> Segate ST-296N hard drive are
> Fri Sep. 26, 2008 07:12:32 PM
> Fri Sep. 26, 2008 07:13:57 PM
> for one pass of megaread. That should be ~12k/sec.
>
> The same test using an Adaptec 4000A board with a Tandon TM-252 gave
> 11.4k/sec.
>
> My modified driver uses the TFM command to transfer data.
I'm using straight 6809 code, an unrolled 8-bytes-at-a-time loop and I
re-enable interrupts in between 8-byte groups so as to maintain low
interrupt latency. (On a 6309 the unrolled loop could be replaced with
an TFM instruction for improved performance. See read loop below.)
I consistently get 24-25 seconds on my 80GB Seagate and 27-28 seconds on
my 1.2GB ST31270A, which yields approx 42K/sec and 38K/sec,
respectively.
C.
ldx PD.BUF,y
ldb #32 32 iterations
read050 pshs b,dp,cc
orcc #IntMasks select the slot, set DP
ldb MPI.Slct
lda #(MPISlot-1)*$11
sta MPI.Slct
lda #$FF
tfr a,dp
setdp $FF
lda <REG.DAT
sta 0,x
lda <REG.DAT
sta 1,x
lda <REG.DAT
sta 2,x
lda <REG.DAT
sta 3,x
lda <REG.DAT
sta 4,x
lda <REG.DAT
sta 5,x
lda <REG.DAT
sta 6,x
lda <REG.DAT
sta 7,x
stb MPI.Slct restore MPI slot
leax 8,x
puls b,dp,cc
setdp $00
decb
bne read050
More information about the Coco
mailing list