Unified Memory Architecture

Unified Memory Architecture (abbreviated UMA) is a type of computer memory architecture that uses the same pool of memory for both the CPU and GPU. It is commonly used in computers with integrated graphics processors, as well as mobile devices like smartphones and tablets.

Computers with discrete graphics processing units have separate memory banks for the CPU and GPU. The CPU uses the main system RAM to store temporary data for applications and processes running on the computer, while GPUs use their own built-in memory banks of high-speed VRAM for image data. The PCI Express bus transfers data between the system RAM and the VRAM when necessary.

CPUs with an integrated GPU will share a single pool of memory between both processors, reducing the cost and complexity of the computer. This architecture eliminates the need to swap data between RAM and VRAM. In some cases, this results in slower performance as the CPU and GPU need to access memory over a bus that would otherwise only service the CPU.

Traditional Memory Architecture vs Unified Memory Architecture
Traditional Memory Architecture vs Unified Memory Architecture

Apple introduced their implementation of a UMA with their M1 series of processors. Since these processors include the system's memory on the same system-on-a-chip as the CPU and GPU cores, they can access the shared memory pool at much higher bandwidth and with much less latency than other implementations. The CPU and GPU do not need to move data from one cache to another, and the data never has to leave the chip to go to a separate memory module.

Updated March 1, 2023 by Brian P.

quizTest Your Knowledge

Which of the following is considered a "bare metal" system?

A
A computer chassis with no components
0%
B
A computer with no moving parts
0%
C
A computer that cannot be upgraded
0%
D
A computer with no operating system installed
0%
Correct! Incorrect!     View the Bare Metal definition.
More Quizzes →

The Tech Terms Computer Dictionary

The definition of Unified Memory Architecture 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.