PIO vs DMA modes, benching ....

Discussion relating to Socket 7 hardware.
DonPedro
K6'er Elite
Posts: 578
Joined: Wed Jul 27, 2005 2:11 pm

PIO vs DMA modes, benching ....

Post by DonPedro »

Inspired by a "discussion" about usage of onboard ide-controller vs add-on ide-cards (see http://www.k6plus.com/index.php?name=PN ... pic&t=1462)

I did some googleing and found this about ide-transfer modes:

PIO Mode 0 to 4:

PIO-0: Cycle Time: 600ns, Transferrate: 3,3 MB/s, Revision: ATA
PIO-1: Cycle Time: 383ns, Transferrate: 5,2 MB/s, Revision: ATA
PIO-2: Cycle Time: 330ns, Transferrate: 8,3 MB/s, Revision: ATA
PIO-3: Cycle Time: 180ns, Transferrate; 11,1 MB/s, Revision: ATA-2
PIO-4: Cycle Time: 120ns, Transferrate: 13,3 MB/s, Revision: ATA-2

ATA DMA Modes:

DMA Modus ==> Cycle Time ==> Transferrate ==> Revision

Single Word Mode 0 (SDMA-0): 960ns, 2,1 MB/s, ATA
Single Word Mode 1 (SDMA-1): 480ns, 4,2 MB/s, ATA
Single Word Mode 2 (SDMA-2): 240ns, 8,3 MB/s, ATA
Multiword Mode 0 (MDMA-0): 480ns, 4,2 MB/s, ATA
Multiword Mode 1 (MDMA-1): 150ns, 13,3 MB/s, ATA-2
Multiword Mode 2 (MDMA-2): 120ns, 16,6 MB/s, ATA-2
Ultra-DMA Mode 0 (UDMA-0): 240ns, 16,6 MB/s, ATA-4
Ultra-DMA Mode 1 (UDMA-1): 160ns, 25,0 MB/s, ATA-4
Ultra-DMA Mode 2 (UDMA-2): 120ns, 33,3 MB/s, ATA-4
Ultra-DMA Mode 3 (UDMA-3): 90ns, 44,4 MB/s, ATA-5
Ultra-DMA Mode 4 (UDMA-4): 60ns, 66,7 MB/s, ATA-5
Ultra-DMA Mode 5 (UDMA-5): 40ns, 100 MB/s, ATA-6
Ultra-DMA Mode 6 (UDMA-6): 30ns, 133,3 MB/s, ATA-6/7

the above transfer-rates are theoretical maximum rates.

pio-modes mean, that the cpu is heavily engaged with actually carrying out the transfer.
dma-modes transfer that burden to the dma-controllers, which makes the transfer not only faster but almost totally frees the cpu from this task: you will get far better overall system performance.

@jim: you can see from the tables that by using your onboard-ide controller (udma-4) you would be far better off than with your cmd-controller card (running @udma-0 speed, which today is to be regarded as very slow). even if your 7200rpm-hd could perform lets say 30mb/s, your controller reduces the speed to a mere 4.x mb/s and eventually also produces a higher cpu-load.

I use a very nice and small tool to measure actual hd-transfer rates and cpu-load. no need to install, just run it from whatever harddisk/partition you want to test. a typical up-to-date-dma-in-use cpu-load should be less than 10 percent.

you can download the tool right here: http://www.sesa.es/en/dskbench.htm

the tool "dskbench" opens a "command"-window (dos-like window). the only drawback is that once it finishes it automatically closes the window (at least it does so under nt4). so you better open the command window first (go to start/run/ then type "cmd" (nt,w2k,xp) or "command" (w9x,me). then switch to the drive/directory where you unzipped the bench-program. run it from there by keying in "dskbench". if you want a textfile as output produced then key in (without quotes):"dskbench >output.txt".

here comes a sample output for my samsung sp1213n drive (7200rpm, 8mb cache) attached to the onboard ide-controller (gigabyte ga-5ax, rev. 5.2, udma4; k6-2+600), taken from 10gigs into the 120gig-drive (3rd partition, not de-fragmented), ntfs-formatted, operating system nt4, svcpack 6a;

DskBench 2.11
(c) 1998, SESA, J.M.Catena (admin@sesa.es, www.sesa.es)
Timer Check = 1001 (should be near 1000)
CPU Check = 50.15 % (should be near 50.00 %)
CPU index (relative to Pro 200 MHz) = 3.652768
Open = 0 ms
Write = 5208 ms, 49.16 MB/s, CPU = 9.02 %
Flush = 0 ms
Rewin = 0 ms
Read = 6409 ms, 39.94 MB/s, CPU = 4.56 %
Close = 0 ms
BlockSize = 131072, MB/s = 12.21, Tracks = 145.14, CPU = 2.14 %
BlockSize = 65536, MB/s = 14.03, Tracks = 166.80, CPU = 2.44 %
BlockSize = 32768, MB/s = 14.12, Tracks = 167.91, CPU = 3.32 %
BlockSize = 16384, MB/s = 14.76, Tracks = 175.48, CPU = 5.93 %
BlockSize = 8192, MB/s = 13.98, Tracks = 166.26, CPU = 10.32 %
BlockSize = 4096, MB/s = 12.69, Tracks = 150.91, CPU = 15.96 %


BTW: if you want to know what pio/dma-mode the system is currently using, use the tool "everest", look under "storage/ata".
Last edited by DonPedro on Mon Sep 19, 2005 7:43 am, edited 1 time in total.
User avatar
KachiWachi
K6'er Elite
Posts: 507
Joined: Wed Sep 21, 2005 10:53 am
Location: Pennsylvania, USA

Post by KachiWachi »

Jim
K6'er Elite
Posts: 1745
Joined: Wed Jan 21, 2004 7:10 pm
Location: Toronto

Post by Jim »

Well, I know that the 2 WD 40 gig drives on my CMD 649 IDE controller card are running at "UDMA 0". Since the card is supposed to support ATA 100, and the drives are supposed to be capable of running "UDMA 5", what I would like to know, is how does one go about resetting things so that the drives run at "UDMA 4", which I believe would be the highest speed that all components are capable of.
Superpuppy 3
K6-3+ 450 ACZ (6x100)
DFI K6BV3+/66 Rev B2 (2 Meg) w/ 2x28mm Chipset Fans
2x256 Meg PC 133 Hynix SDRAM
1x 20G Maxtor (7200)
2x 80G Maxtor (7200) Ducted w/ 2x486 Fans Mount
52/24/52/16 LG CDR/RW/DVD
8/4/3/12/24/16/32 LG Super Multi
ATI 9000 aiw Radeon AGP
SB Audigy 1 MP3 Sound
CMD 649 IDE Controller
NEC USB 2 Card
DonPedro
K6'er Elite
Posts: 578
Joined: Wed Jul 27, 2005 2:11 pm

hd transfer mode

Post by DonPedro »

hi jim,

what does the start-screen(s) say, when you boot your pc?
does the cmd-controller give any info on what is connected and at what speed? my promise controller does so ....

I ask because it makes a difference in locating the speed-problem. if transfer speed is at udma0 from startup, then there is something wrong with either the controller ('s bios), the cables (do you use 80 pins cables? it is required for modes higher than udma2) or the disks (they might be setup to run at udma0; there are tools available - at least for samsung drives - to set up the disk at what interface speed they should operate).

if the speed is up at start but brought down to udma0 when windows has finally booted then it is a windows / driver issue.
Jim
K6'er Elite
Posts: 1745
Joined: Wed Jan 21, 2004 7:10 pm
Location: Toronto

RE: hd transfer mode

Post by Jim »

At startup, the machine goes through the usual post routine for the onboard IDE devices, then when that is finished, it goes into a subroutine, identifying the IDE devices on the controller card. It recognizes my 2 WD 40 Gigs; and gives their serial numbers; but says nothing about what mode or speed they are operating at. Yes, I use 80 wire cables on all my machines. (reason for that is I was given to understand that 80 wire cables give a 10% gain in data transfer rates; and I figured every little bit helps.) I had not got very far in looking into this matter when my internet began acting up very badly, so I have been sidetracked lately, to the point where I have not even gone into the folder where the CMD controller card files are to see if there is any utility there for either speed setting, or status reporting.
Superpuppy 3
K6-3+ 450 ACZ (6x100)
DFI K6BV3+/66 Rev B2 (2 Meg) w/ 2x28mm Chipset Fans
2x256 Meg PC 133 Hynix SDRAM
1x 20G Maxtor (7200)
2x 80G Maxtor (7200) Ducted w/ 2x486 Fans Mount
52/24/52/16 LG CDR/RW/DVD
8/4/3/12/24/16/32 LG Super Multi
ATI 9000 aiw Radeon AGP
SB Audigy 1 MP3 Sound
CMD 649 IDE Controller
NEC USB 2 Card
Jim
K6'er Elite
Posts: 1745
Joined: Wed Jan 21, 2004 7:10 pm
Location: Toronto

RE: hd transfer mode

Post by Jim »

Note: I have now been into the setup files for the CMD IDE Controller; and there is no utility for setting the transfer rate. They say to use the "enable UDMA if available" feature in "Device Manager". This has long since been done.

Their release notes, however, in Section VI "Known Restrictions" has this to say : "1. The advance setting under each disk controller channel may not show the correct transfer mode. This has been acknowledged by the Microsoft Windows 2000 development team."

Note: I use the Win2K driver because no XP driver came w/ the card.

This may mean that the report of "UDMA 0" is incorrect. Everest says UDMA 0; but that is the only thing I have that says what it is at all. Could be that Everest is getting its info from the same place that Windows is.

How would I go about checking that ?
Last edited by Jim on Mon Sep 26, 2005 6:56 pm, edited 1 time in total.
Superpuppy 3
K6-3+ 450 ACZ (6x100)
DFI K6BV3+/66 Rev B2 (2 Meg) w/ 2x28mm Chipset Fans
2x256 Meg PC 133 Hynix SDRAM
1x 20G Maxtor (7200)
2x 80G Maxtor (7200) Ducted w/ 2x486 Fans Mount
52/24/52/16 LG CDR/RW/DVD
8/4/3/12/24/16/32 LG Super Multi
ATI 9000 aiw Radeon AGP
SB Audigy 1 MP3 Sound
CMD 649 IDE Controller
NEC USB 2 Card
User avatar
KachiWachi
K6'er Elite
Posts: 507
Joined: Wed Sep 21, 2005 10:53 am
Location: Pennsylvania, USA

Post by KachiWachi »

I was looking for information on your card...couldn't find anything under CMD or Silicon Image. :(

In W2K, the "standard" IDE Controller info is found in the registry key "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96A-E325-11CE-BFC1-08002BE10318}\" with subkeys 0000, 0001, 0002, and Properties. IDE1 is under 0001, and IDE2 is under 0002. 0000 defines the Controller, and nothing is under Properties (at least on my machine). The Transfer Mode can be found under the subkey name "MasterDeviceTimingMode".

Note that your add-in card may not be in this key, but one close by. In any case, you should be able to find it by searching the registry for relevant information on the card.

I was surfing for info on this at one time...looking for a table that defines which hex codes mean what. I did find some info and saved it, but I don't know where I backed it up to. :oops:

In any case, from this code, you should be able to determine what transfer rate you are set up for...assuming it is correct and your UDMA 0 is just a cosmetic thing in the DM.
Moderator - Wim's BIOS

PC #1 - DFI 586IPVG, K6-2/+ 450 (Cyrix MII 433), 128 MB EDO. BIOS patched by Jan Steunebrink.
PC #2 - Amptron PM-7900 (M520), i200 non-MMX, 128 MB EDO
PC #3 - HP8766C, PIII-667, 768 MB SDRAM
PC #4 - ASUS P3V4X, PIII-733, 256 MB SDRAM
PC #5 - Gateway 700X, P4-2.0 GHz, 768 MB PC800 RDRAM
PC #6 - COMPAQ Evo N1020v laptop, P4-2.4 GHz, 1 GB PC2700 DDR
PC #7 - Dell Dimension 4600i, P4-2.8 GHz, 512 MB PC2700 DDR
PC #8 - Acer EeePC netbook, Atom N270 @ 1.60 GHz, 1 GB RAM
PC #9 - ??? ;)
Jim
K6'er Elite
Posts: 1745
Joined: Wed Jan 21, 2004 7:10 pm
Location: Toronto

Post by Jim »

Thanks, and since you know considerably more about this sort of thing than I do, perhaps you could answer this one: I went surfing for new XP drivers for the card; but the only ones that I could find were "Raid" drivers. I don't want to use my drives in a raid configuration, so "Q": Is it possible to use an XP Raid driver in a non raid configuration?

BTW, still waiting for those MVP3 spec sheets.
Superpuppy 3
K6-3+ 450 ACZ (6x100)
DFI K6BV3+/66 Rev B2 (2 Meg) w/ 2x28mm Chipset Fans
2x256 Meg PC 133 Hynix SDRAM
1x 20G Maxtor (7200)
2x 80G Maxtor (7200) Ducted w/ 2x486 Fans Mount
52/24/52/16 LG CDR/RW/DVD
8/4/3/12/24/16/32 LG Super Multi
ATI 9000 aiw Radeon AGP
SB Audigy 1 MP3 Sound
CMD 649 IDE Controller
NEC USB 2 Card
User avatar
KachiWachi
K6'er Elite
Posts: 507
Joined: Wed Sep 21, 2005 10:53 am
Location: Pennsylvania, USA

Post by KachiWachi »

Do you have a current site link?
Moderator - Wim's BIOS

PC #1 - DFI 586IPVG, K6-2/+ 450 (Cyrix MII 433), 128 MB EDO. BIOS patched by Jan Steunebrink.
PC #2 - Amptron PM-7900 (M520), i200 non-MMX, 128 MB EDO
PC #3 - HP8766C, PIII-667, 768 MB SDRAM
PC #4 - ASUS P3V4X, PIII-733, 256 MB SDRAM
PC #5 - Gateway 700X, P4-2.0 GHz, 768 MB PC800 RDRAM
PC #6 - COMPAQ Evo N1020v laptop, P4-2.4 GHz, 1 GB PC2700 DDR
PC #7 - Dell Dimension 4600i, P4-2.8 GHz, 512 MB PC2700 DDR
PC #8 - Acer EeePC netbook, Atom N270 @ 1.60 GHz, 1 GB RAM
PC #9 - ??? ;)
Jim
K6'er Elite
Posts: 1745
Joined: Wed Jan 21, 2004 7:10 pm
Location: Toronto

Post by Jim »

For CMD, no. I found the drivers at "Driver Guide" - http://driverguide.com - but you have to join there to get anything from them.
Superpuppy 3
K6-3+ 450 ACZ (6x100)
DFI K6BV3+/66 Rev B2 (2 Meg) w/ 2x28mm Chipset Fans
2x256 Meg PC 133 Hynix SDRAM
1x 20G Maxtor (7200)
2x 80G Maxtor (7200) Ducted w/ 2x486 Fans Mount
52/24/52/16 LG CDR/RW/DVD
8/4/3/12/24/16/32 LG Super Multi
ATI 9000 aiw Radeon AGP
SB Audigy 1 MP3 Sound
CMD 649 IDE Controller
NEC USB 2 Card
User avatar
KachiWachi
K6'er Elite
Posts: 507
Joined: Wed Sep 21, 2005 10:53 am
Location: Pennsylvania, USA

Post by KachiWachi »

Actually, IIRC, the password is the same for everyone. I saw it posted somewhere...can't recall now though...
Moderator - Wim's BIOS

PC #1 - DFI 586IPVG, K6-2/+ 450 (Cyrix MII 433), 128 MB EDO. BIOS patched by Jan Steunebrink.
PC #2 - Amptron PM-7900 (M520), i200 non-MMX, 128 MB EDO
PC #3 - HP8766C, PIII-667, 768 MB SDRAM
PC #4 - ASUS P3V4X, PIII-733, 256 MB SDRAM
PC #5 - Gateway 700X, P4-2.0 GHz, 768 MB PC800 RDRAM
PC #6 - COMPAQ Evo N1020v laptop, P4-2.4 GHz, 1 GB PC2700 DDR
PC #7 - Dell Dimension 4600i, P4-2.8 GHz, 512 MB PC2700 DDR
PC #8 - Acer EeePC netbook, Atom N270 @ 1.60 GHz, 1 GB RAM
PC #9 - ??? ;)
Guest

Post by Guest »

driverguide.com=
drivers+all
Jim
K6'er Elite
Posts: 1745
Joined: Wed Jan 21, 2004 7:10 pm
Location: Toronto

Post by Jim »

I joined. so I already have the drivers downloaded. That is not the issue. The issue is that the drivers are "Raid Drivers", and I don't want to raid my drives. Can these XP Raid Drivers be used in a non raid configuration?
Superpuppy 3
K6-3+ 450 ACZ (6x100)
DFI K6BV3+/66 Rev B2 (2 Meg) w/ 2x28mm Chipset Fans
2x256 Meg PC 133 Hynix SDRAM
1x 20G Maxtor (7200)
2x 80G Maxtor (7200) Ducted w/ 2x486 Fans Mount
52/24/52/16 LG CDR/RW/DVD
8/4/3/12/24/16/32 LG Super Multi
ATI 9000 aiw Radeon AGP
SB Audigy 1 MP3 Sound
CMD 649 IDE Controller
NEC USB 2 Card
User avatar
TheBrain
Junior K6'er
Posts: 25
Joined: Sat Sep 17, 2005 4:12 pm
Location: São Paulo / Brazil
Contact:

Post by TheBrain »

user driver2
pass all

user drivers is not usable anymore.

@ Jim: My Sil0680 is an IDE/RAID card. It has driver for IDE and for IDE+RAID, which is the one I use. Although I have just one HD, the driver works with no problem, even that no RAID config is set.
AMD K6-2+ 450 ACZ | PCChips M598LMR - SiS 530 | 256 MB DIMM SDRAM | 3dfx Voodoo4 4500 PCI - 32 MB | Maxtor DiamondMax Plus 8 - 40 GB
Jim
K6'er Elite
Posts: 1745
Joined: Wed Jan 21, 2004 7:10 pm
Location: Toronto

Post by Jim »

K, thanks. It is just that I don't know much about "Raid". If I understand it correctly, what it does is mirror image 2 drives. Well I have 2x40Gig drives, and I definitely do not want them mirror imaged. Just finished doing a 40 Gig data recovery, and I don't want to do another just yet.

Problem is, since you are only running one drive, there is nothing there to "Raid" it with. "Q" is : If you put in a second drive, will it be automatically "Raided", - i.e. mirror imaged w/ the first one?
Superpuppy 3
K6-3+ 450 ACZ (6x100)
DFI K6BV3+/66 Rev B2 (2 Meg) w/ 2x28mm Chipset Fans
2x256 Meg PC 133 Hynix SDRAM
1x 20G Maxtor (7200)
2x 80G Maxtor (7200) Ducted w/ 2x486 Fans Mount
52/24/52/16 LG CDR/RW/DVD
8/4/3/12/24/16/32 LG Super Multi
ATI 9000 aiw Radeon AGP
SB Audigy 1 MP3 Sound
CMD 649 IDE Controller
NEC USB 2 Card
Post Reply