From owner-freebsd-hackers Sat Oct 7 16:13:00 1995 Return-Path: owner-hackers Received: (from root@localhost) by freefall.freebsd.org (8.6.12/8.6.6) id QAA29894 for hackers-outgoing; Sat, 7 Oct 1995 16:13:00 -0700 Received: from Sysiphos (Sysiphos.MI.Uni-Koeln.DE [134.95.212.10]) by freefall.freebsd.org (8.6.12/8.6.6) with SMTP id QAA29886 for ; Sat, 7 Oct 1995 16:12:56 -0700 Received: by Sysiphos id AA12195 (5.67b/IDA-1.5 for hackers@freebsd.org); Sun, 8 Oct 1995 00:12:37 +0100 Message-Id: <199510072312.AA12195@Sysiphos> From: se@zpr.uni-koeln.de (Stefan Esser) Date: Sun, 8 Oct 1995 00:12:37 +0100 In-Reply-To: Bruce Evans "Re: VLB Disk Controllers" (Oct 8, 8:32) X-Mailer: Mail User's Shell (7.2.6 alpha(2) 7/9/95) To: Bruce Evans Subject: Re: VLB Disk Controllers Cc: hackers@freebsd.org Sender: owner-hackers@freebsd.org Precedence: bulk On Oct 8, 8:32, Bruce Evans wrote: } Subject: Re: VLB Disk Controllers } >} Cheap IDE on 486DX/33 ISA SAMSUNG SHD-3212A (slow disk): } >} output for disklatency /dev/rwd0: } >} Command overhead is 573 usec (time_4096 = 2830, time_8192 = 5087) } >} transfer speed is 1.81489e+06 bytes/sec } } >NCR 53c810 (driven by a 486DX2/66): } } >Command overhead is 751 usec (time_4096 = 1216, time_8192 = 1682) } >transfer speed is 8.79954e+06 bytes/sec } } >Seems that even at 4KB, the NCR is a lot faster than an IDE controller :) } } But slower than EIDE with fast PIO modes :-). } } >Let's see: } } >IDE: 512/1815890 s + 573 us = 855 us } >NCR: 512/8799540 s + 751 us = 809 us } } >Seems the NCR is faster on 512 byte transfers. } } Nope, the 573 us is for _8_ transfers of 512 bytes because my drive } doesn't support multi-mode, and it's on a slower machine :-). I'm } surprised that it is as high as 573/8 = 72 us per command. This is all } host software (not bus related) overhead except for about 10 usec to } write the command to the controller. Don't think so. There are 16 transfers in the 8KB test, and thus the per sector overhead is in fact accounted for in the transfer rate ! The 573 is a true per 1 transfer overhead for IDE. (But is most probably caused by the kernel, not the driver.) } It sure isn't. For the Buslogic's command overhead of 4 ms and a drive } speed of 8MB/sec the transfer size has to be at least 32K just to avoid } wasting 50% of the time giving commands. Actual results for the } Buslogic BT44C on 486DX2/66 VLB QUANTUM XP34301: } } Block size Speed of transfer from inner tracks (av. for 10 sec) } 512 168550 } 1024 320512 } 2048 630784 } 4096 1175142 } 8192 2148761 } 16384 3106406 } 32768 4554752 } 65536 5485363 } 131072 5518131 } 262144 5557452 This was measured using raw device reads ? Ok. Using my 2GB Atlas (dd, 30 sec each): 512 811800 1024 1324517 2048 2097152 4096 4194304 16384 6068148 65536 7281777 (BTW: I've got 1585 transfers/s in the 512 byte test. That's 630 us per *transfer*. And the startup overhead can't possibly be higher :) Seems that 4KB transfers already offer more than 50% of the maximum data rate ... And 2KB transfers are already faster than most IDE systems (i.e. drive + motherboard) go. I know this will change when everybody got a Pentium/133 just to have faster IDE PIO mode 4 transfers :-) STefan -- Stefan Esser, Zentrum fuer Paralleles Rechnen Tel: +49 221 4706021 Universitaet zu Koeln, Weyertal 80, 50931 Koeln FAX: +49 221 4705160 ============================================================================== http://www.zpr.uni-koeln.de/staff/esser/esser.html