Wenn ich bei meinem VDR Daten von einer HDD auf eine andere kopiere, ist die CPU-Auslastung IMMER bei 100% (lt. 'top').
Bei beiden HDDs ist der DMA-Modus eingeschaltet:
hdparm -i -d /dev/hda
/dev/hda:
using_dma = 1 (on)
Model=ST3200826ACE, FwRev=3.03, SerialNo=4ND08L27
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
BuffType=unknown, BuffSize=8192kB, MaxMultSect=16, MultSect=off
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 [B]*udma5[/B] udma3 udma4 *udma5
AdvancedPM=no WriteCache=enabled
Drive conforms to: Unspecified: ATA/ATAPI-1 ATA/ATAPI-2 ATA/ATAPI-3 ATA/ATAPI-4 ATA/ATAPI-5 ATA/ATAPI-6 ATA/ATAPI-7
Alles anzeigen
dparm -i -d /dev/hdd
/dev/hdd:
using_dma = 1 (on)
Model=ST3802110A, FwRev=3.AAJ, SerialNo=5LR99S4T
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
BuffType=unknown, BuffSize=2048kB, MaxMultSect=16, MultSect=off
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=156301488
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 udma3 udma4 udma5
AdvancedPM=no WriteCache=enabled
Drive conforms to: Unspecified: ATA/ATAPI-1 ATA/ATAPI-2 ATA/ATAPI-3 ATA/ATAPI-4 ATA/ATAPI-5 ATA/ATAPI-6 ATA/ATAPI-7
Alles anzeigen
top - 19:59:00 up 6 min, 3 users, load average: 1.83, 1.05, 0.47
Tasks: 67 total, 2 running, 65 sleeping, 0 stopped, 0 zombie
Cpu(s): 3.7%us, 49.5%sy, 2.3%ni, 0.0%id, 24.9%wa, 7.3%hi, 12.3%si, 0.0%st
Mem: 906796k total, 897824k used, 8972k free, 4584k buffers
Swap: 1421712k total, 0k used, 1421712k free, 819720k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
5365 root 18 0 3648 656 548 R 49.7 0.1 0:09.05 cp
5217 vdr 15 0 230m 22m 7116 S 9.0 2.6 0:03.15 vdr
120 root 15 0 0 0 0 D 2.3 0.0 0:00.44 pdflush
Alles anzeigen
Wie man sieht, 'können' beide UDMA - wenn auch die eine nur UDMA2. Nach meinem Kenntnisstand bedeutet DMA beim Kopieren: Die CPU weist den DMA-Controller an die Daten zu kopieren und der machts dann - die CPU kann sich um anderes kümmern . . . z.B. um 'idle' zu erhöhen.