What is DMA?

vbimport

#1

Hello all,

Can someone plz explain to me what DMA is, its benefits and
how to configure it under WinXP?

Thanks!


#2

/start quote

Direct Memory Access (DMA) is a capability provided by some computer bus architectures that allows data to be sent directly from an attached device (such as a disk drive) to the memory on the computer’s motherboard. The microprocessor is freed from involvement with the data transfer, thus speeding up overall computer operation.
Usually a specified portion of memory is designated as an area to be used for direct memory access. In the ISA bus standard, up to 16 megabytes of memory can be addressed for DMA. The EISA and Micro Channel Architecture standards allow access to the full range of memory addresses (assuming they’re addressable with 32 bits). Peripheral Component Interconnect accomplishes DMA by using a bus master (with the microprocessor “delegating” I/O control to the PCI controller).

An alternative to DMA is the Programmed Input/Output (PIO) interface in which all data transmitted between devices goes through the processor. A newer protocol for the ATA/IDE interface is Ultra DMA, which provides a burst data transfer rate up to 33 MB (megabytes) per second. Hard drives that come with Ultra DMA/33 also support PIO modes 1, 3, and 4, and multiword DMA mode 2 (at 16.6 megabytes per second).

/end quote

To enable DMA under Win XP do the following :

Right click on my computer
select properties
select the hardware tab
press the “device manager” button
In the new window select/expand the IDE ATA/ATAPI controllers

the branch wil expand and show a total of (usually) three sun-branches(nodes).

two of the branches is the two IDE channel on your MB the last branch is the IDEcontroller.

So to change DMA on your Primary IDE channel do this :
Right click on the Primary IDE Channel node and select properties
Select Advanced Settings
Now you can change the Transfer mode to “DMA if available” and you can also see what DMA mode your drives are currently using.

If you have any devices on the secondary IDE channel do the same thing to change DMA setting on it.


#3

Originally posted by Kosh

To enable DMA under Win XP do the following :

So to change DMA on your Primary IDE channel do this :
Right click on the Primary IDE Channel node and select properties
Select Advanced Settings
Now you can change the Transfer mode to “DMA if available” and you can also see what DMA mode your drives are currently using …

I am using winXP pro. I cant find the “Advanced Settings” option under primary or secondary ide properties. It cant be found in any tab (general, driver, resources). The “change settings option” under resources is grayed out!

Nero info tool states that my dvd (samsung 616f - primary slave) has its dma off. Any ideas on how to enable it? Does this mean that also my hard disk (primary master) has its dma disabled?

System information states under the transfer rates of both drives “not available” !!? :confused:

Thanx :slight_smile:


#4

Did you upgrade from another version of windows or did you do a clean install ?


#5

Originally posted by Kosh
Did you upgrade from another version of windows or did you do a clean install ?

No i did a clean install (i couldn’t update from Windows Me Greek)


#6

ok …

What system do you have … ?

Motherboard, chipset and CPU etc. ?


#7

Just to make sure …

and then you double click on the primary ide channel and then you get this …


#8

Thanx fot the help ! :smiley:

P4 (423) @ 1300MHZ
256 pc800 @ 400
MB: Fujitsu - Siemens running on an Intel 850 chipset
Samsung 40GB 6400rpm HDD
Samsung 616f dvd
Plextor 4012A
Windows XP pro

Well i ve seen your pics, i have the same. The only difference is that when i go to properties of the primary ide channel i dont have the advanced settings tab !!! I just get “general”, “driver” and “resources” !!!

It’s kind of crazy aint it?? :confused:

I dont know how to save these pics, if i knew how i would upload them too so that you could see… but anyway it’s all the same (ok i have xp interface) it s only the “advanced” tab that is missing. … I am logged as the administrator (so it’s not that windows don t give me access to it).

Any ideas?


#9

yes … weird !

I would do the following … :

  1. First I would check what mode my HDD was running in …
    I.E if it’s an UDMA 100 it should run in UDMA mode 5.

To check … get SiSoft Sandra from http://www.sisoftware.co.uk/sandra

and then check under the ATA/ATAPI icon and scroll to the bottom … there it will show which mode your HDD is currently in.

If it runs in the mode it’s supposed to , then I would leave it at that.

  1. Check my BIOS to see if there is any options/settings which affects the availability of UDMA on the HDD

  2. See if there is any BIOS updates available
    (I didn’t get UDMA on my Lite-ON and My Toshiba DVD until I upgraded my BIOS - They ran i PIO mode 4 … now in UDMA 2)

  3. Finally … If you haven’t done so … try installing the Intel Application Accelerator … it contains ULTRA DMA drivers for Intel chipsets and should give you a nice boost and a seperate application where you can see/adjust the settings of your ATAPI interface. ( at least I used to on my old P3 1 gig / Asus CUSL2-C combo )

Try that … and then come back


#10

ok thanx a lot … will do that :smiley:

PS: i have installed the intel application accelerator… but with no noticable effects


#11

Intel’s Application Accelerator is know to cause more bad than good. You will probably benefit of removing it.


#12

Originally posted by Airhead
Intel’s Application Accelerator is know to cause more bad than good. You will probably benefit of removing it.

Hmm, so what am i supposed to do now? :confused: Should i uninstal it?

Anyways, i downloaded SiSoftware, but it seems that it’s only the pro version that can provide me with the ata-atapi info i need :frowning: I am not sure i wanna spend any money on it (the 40x plexie left me broke - i’m just a student:p ). So is there any other program that can do the job from me?

There are no options in bios that can affect udma (actually the only options there are in bios about udma are default ??? and disabled!!) It is set to default (whatever that means…). I did some benchmark tests on disk speed with SiSoftware which plainly show that my drive (Samsung 4084H) really sucks, so i think dma is really messed up.

I will try getting an updated version althought i updated it 3 months ago… maybe i’ll contact siemens about it (it’s not that they provide the best possible support) :rolleyes:

MB INFO

Fujitsu Siemens D1192

BIOS INFO

Manufacturer: Fujitsu Siemens // Phoenix Technologies
Revision: 4.06 Rev 1.08.1192

Hope this info helps


#13

I visited siemens’ site and found out the following about their 1.08 bios update (which i currenlty use…)

Quote:

“- A new BIOS-Setup option has been added: UDMA for
autotyped ATAPI drives is user-selectable. Upon resume
from S3, Win98 does not properly handle ATAPI drives
in UDMA mode. Therefore UDMA for autotyped ATAPI
drives had been generally disabled in the past.
If the user is not running Win98, they now can
manually enable this Setup option to gain a higher
drive performance.”

What do you make out of it? :confused:

Thanx for the help… :slight_smile:


#14

if it is user selecteable then select it and thus enable it !

It sure does sound weird … autotypeded ATAPI :confused:

Well, enable it if you can -> should act normally in Win XP after that.


#15

Well there’s no option to enable - disable udma in bios (nomatter what they say…) all i could find on the hard disk details was that its pio mode is udma100 but it was grayed out and had no option to change it, while both cd roms were udma33 (grayed also). :mad:

Is this possible? If so, is it normal? And why is it that i cant find the udma setings in windows? (questions, questions, questions…) Could it be that windows are disabling udma and not bios?

Tomorrow morning i will update bios firmware to 1.10 (latest) so hopefully there will be some change…


#16

I finally did the bios update… with no luck! I still can’t find any parameters in windows that can show me the udma status of the devices.

Well i guess this is just another one of those bizzare-unexplainable “Windows - X Files” cases :wink:

Long live MS >>> :rolleyes:


#17

Just a though (your HDD sounds very odd 6400RPM) have you got the right 40pin 80 conductor cable required for udma 66 and above? i know neither my on board IDE controller, or my raid card will give me the option to enable UDMA 133/100/66 (which all my HDs support) unless i am using one.


#18

hemispasm … have you checked your PM


#19

DMA is Direct memory Access. it is transfer of data directly between peripheral devices without the interaction of the cpu. this reduces load on the cpu and gives an overall good performance boost to the system.


#20

Originally posted by Kosh
hemispasm … have you checked your PM
THANX :wink:
will check it and post results…

Originally posted by nd-
have you got the right 40pin 80 conductor cable required for udma 66 and above?

Well it is the first time i hear that there are like different kind of ide cables - udma compatible & udma uncompatible cables that is… :confused: