DMA

Stands for "Direct Memory Access."

DMA is a method of transferring data between a computer's system memory and another hardware component that does not require the CPU to process the data. It uses the CPU only to initiate a data transfer; after that, the other component can communicate with the system RAM directly without any further involvement from the CPU. DMA reduces the overhead involved in data transfers, freeing up the CPU to continue processing other operations instead.

DMA is used by many types of hardware that have their own data processing capabilities. For example, a GPU rendering a 3D scene in a game uses DMA to load textures directly from system memory, leaving the CPU free to calculate physics and AI instead. Without DMA, the CPU needs to be involved in every read-and-write action, occupying processing resources that could be used for other tasks. Storage controllers, sound cards, and network interface cards also use DMA during data transfers.

Early computers used dedicated DMA controller chips to manage data transfers. These controllers assigned a limited number of DMA addresses to devices capable of DMA transfers. In modern computers, each DMA-compatible device includes an integrated DMA engine responsible for coordinating with other devices and managing data transfers over the PCI Express bus.

Updated October 30, 2023 by Brian P.

quizTest Your Knowledge

DMA data transfers bypass which component in a computer?

A
The CPU
0%
B
System RAM
0%
C
The GPU
0%
D
Storage disks
0%
Correct! Incorrect!     View the DMA definition.
More Quizzes →

The Tech Terms Computer Dictionary

The definition of DMA on this page is an original definition written by the TechTerms.com team. If you would like to reference this page or cite this definition, please use the green citation links above.

The goal of TechTerms.com is to explain computer terminology in a way that is easy to understand. We strive for simplicity and accuracy with every definition we publish. If you have feedback about this definition or would like to suggest a new technical term, please contact us.

Sign up for the free TechTerms Newsletter

How often would you like to receive an email?

You can unsubscribe or change your frequency setting at any time using the links available in each email.

Questions? Please contact us.