[SLUG] IDE throughput variance

From: Eben King (eben01@verizon.net)
Date: Tue Sep 19 2006 - 17:13:04 EDT


As some of you may know, I've got a second hard drive onto which I (nightly)
duplicate the main hard drive, thus ensuring that I have a complete backup
that is no more than 24 hours old.

I wrote a script to do this, and cron fires it off at 5am. I tabulate the
results in a spreadsheet to find the most efficient blocksize (with my
Deathstars it appeared to be 128MB). I have 2 250GB drives:

/dev/hdc:

  Model=ST3250620A, FwRev=3.AAC, SerialNo=5QF03SXM
  Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
  RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
  BuffType=unknown, BuffSize=16384kB, MaxMultSect=16, MultSect=16
  CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=268435455
  IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
  PIO modes: pio0 pio1 pio2 pio3 pio4
  DMA modes: mdma0 mdma1 mdma2
  UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5
  AdvancedPM=no WriteCache=enabled
  Drive conforms to: device does not report version:

  * signifies the current active mode

/dev/hde is the same, only connected by this:

0000:00:0c.0 Unknown mass storage controller: Silicon Image, Inc. (formerly
CMD Technology Inc) PCI0680 Ultra ATA-133 Host Controller (rev 02)
         Subsystem: Silicon Image, Inc. (formerly CMD Technology Inc) PCI0680 Ultra ATA-133 Host Controller
         Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
         Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
         Latency: 32, Cache Line Size: 0x01 (4 bytes)
         Interrupt: pin A routed to IRQ 11
         Region 0: I/O ports at b800 [size=8]
         Region 1: I/O ports at b400 [size=4]
         Region 2: I/O ports at b000 [size=8]
         Region 3: I/O ports at a800 [size=4]
         Region 4: I/O ports at a400 [size=16]
         Region 5: Memory at d5000000 (32-bit, non-prefetchable) [size=256]
         Expansion ROM at 50000000 [disabled] [size=512K]
         Capabilities: [60] Power Management version 2
                 Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                 Status: D0 PME-Enable- DSel=0 DScale=2 PME-

The throughput varies by a factor of about 1.4-1.9 between runs using the
same blocksize. For example: bs=8k, 8/30 52.937 MB/s, 9/19 36.929 MB/s;
bs=128M, 8/24 20.345 MB/s, 9/13 38.845 MB/s. How can I find the source of
this variation? The drives and interface card are new (from Newegg), and
the machine is idle during the copy.

hdparm says they both transfer fast:

root@pc:~# hdparm -t /dev/hd[ce]

/dev/hdc:
  Timing buffered disk reads: 194 MB in 3.01 seconds = 64.41 MB/sec

/dev/hde:
  Timing buffered disk reads: 188 MB in 3.02 seconds = 62.25 MB/sec

-- 
A well-lovd and corrctly traind domstc cnine is gnrlly slobbry, excitbl,
noisy, scatologically obsessed, xenophbic, pathetically unjudgmental,
embrrssngly uninhbtd, unreasnngly dvtd, hrtbrkngly dpndnt and wretchedly
craven.  All othr knds of dog cmpre unfvrbly wth ths picture. - PB, AFCA
-----------------------------------------------------------------------
This list is provided as an unmoderated internet service by Networked
Knowledge Systems (NKS).  Views and opinions expressed in messages
posted are those of the author and do not necessarily reflect the
official policy or position of NKS or any of its employees.



This archive was generated by hypermail 2.1.3 : Fri Aug 01 2014 - 17:25:23 EDT