Date: Fri, 29 Mar 1996 09:37:22 +1030 (CST) From: Michael Smith <msmith@atrad.adelaide.edu.au> To: ejs@bfd.com (Eric J. Schwertfeger) Cc: questions@freebsd.org Subject: Re: Triton EIDE interface support Message-ID: <199603282307.JAA18081@genesis.atrad.adelaide.edu.au> In-Reply-To: <Pine.BSF.3.91.960328082139.1971D-100000@harlie.bfd.com> from "Eric J. Schwertfeger" at Mar 28, 96 08:50:22 am
next in thread | previous in thread | raw e-mail | index | archive | help
Eric J. Schwertfeger stands accused of saying: > > I'm currently running 2.1R on a triton based motherboard. I'm in the > process of converting over from Linux on this machine, and I was > curious. In linux, using hdparm, I can enable multi-sector transfers and > 32 bit transfers on my primary hard drive, which considerably increases > the drives performance (I'm not running the 1.3.X tree yet, so I don't > know what effect the triton DMA interface would have on the feel of the > system). The 'flags' field in the kernel config (you can frob this while booting by supplying the -c flag at the boot: prompt) controls these features. Quoting from /sys/i386/conf/LINT : # The flags fields are used to enable the multi-sector I/O and # the 32BIT I/O modes. The flags may be used in either the controller # definition or in the individual disk definitions. The controller # definition is supported for the boot configuration stuff. # # Each drive has a 16 bit flags value defined: # The low 8 bits are the maximum value for the multi-sector I/O, # where 0xff defaults to the maximum that the drive can handle. # The high bit of the 16 bit flags (0x8000) allows probing for # 32 bit transfers. # # The flags field for the drives can be specified in the controller # specification with the low 16 bits for drive 0, and the high 16 bits # for drive 1. # e.g.: #controller wdc0 at isa? port "IO_WD1" bio irq 14 flags 0x00ff8004 vector wdintr # # specifies that drive 0 will be allowed to probe for 32 bit transfers and # a maximum multi-sector transfer of 4 sectors, and drive 1 will not be # allowed to probe for 32 bit transfers, but will allow multi-sector # transfers up to the maximum that the drive supports. > So, between 2.1R, stable, and current, how much support for these > features are in FreeBSD? These have been around since 2.0R AFAIK. -current also has support for the Triton's busmaster support, but not being an IDE-lover, I've never had occasion to try it out. > Anyway, linux has a hdparam program which has the ability to benchmark > the sequential throughput of a device (bypasses the file system) > reading a large (32M?) portion of the hard drive. It also lets you tune > things like turning on multisector transfers, 32 bit transfers, and in > the case of the triton chipset and 1.3.X kernels, DMA transfers. FreeBSD has a tool called 'dd' that does this 8) > The ST5850A as master benchmarked at about 5M/sec at the start of the > disk, in both single sector, 16 bit transfers, and multisector 32 bit > transfers. the ST32140 as slave benchmarked at about 2.5M/sec single/16, > and over 5M/sec multi/32. I *WANT* that performance, and will become a > kernel hacker if necessary. You won't love the CPU overhead in PIO mode, or the hidden busmaster overhead in master mode though... > My wife's ST5850A died, so I have to loan her mine (yes, I love the > ST5850A. 5400 RPM and runs like it. Got one at work too). When it gets > back, I plan on puting my swap on it, and the rest will be low access > files (ports/src?). (Or very low access, DOS/WIN :-) Heh. What I'd give for a 2940 and a 'cuda; would be fun watching your jaw hit the dirt 8) -- ]] Mike Smith, Software Engineer msmith@atrad.adelaide.edu.au [[ ]] Genesis Software genesis@atrad.adelaide.edu.au [[ ]] High-speed data acquisition and (GSM mobile) 0411-222-496 [[ ]] realtime instrument control (ph/fax) +61-8-267-3039 [[ ]] Collector of old Unix hardware. "Where are your PEZ?" The Tick [[
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199603282307.JAA18081>