Als Unified Memory Architecture (UMA) bezeichnet man Rechnerarchitekturen, in denen verschiedene Komponenten (z. B. die CPU und der Grafikprozessor) zusammen auf einem gemeinsamen Speicher arbeiten, anstatt dedizierten Speicher zu besitzen.
x86-Computer-Systeme
Der allgemeinere Begriff ist bei x86-Systemen Memory Mapped Graphics (MMG). Dieser war in der Anfangszeit der Personal Computer die übliche Art, Grafik darzustellen. Ein weiterer Name für das Prinzip ist Shared Memory.
Durch den Wegfall eines dedizierten Speichers wird eine kostengünstigere Produktion des Systems ermöglicht. Durch den gemeinsamen Zugriff auf den Hauptspeicher kommt es zu Leistungseinbußen für das System: In den Zeiten, in der der Grafikprozessor (GPU) auf den Speicher zugreift, steht dieser der CPU nicht zur Verfügung und die CPU muss solange untätig warten. Im 3D-Modus vermehrt sich diese von der GPU benötigte Datenübertragungsrate um ein Vielfaches durch komplexe Textur-Berechnungen. Außerdem kann der von der GPU genutzte Speicherbereich (meist zwischen 128 und 256 MB) permanent nicht von der CPU genutzt werden und dezimiert dadurch den verfügbaren Hauptspeicher. Die Grafikleistung ist ebenfalls geringer, da der Zugriff auf den Hauptspeicher langsamer ist als auf dedizierten Grafikspeicher.
SGI/MIPS-Systeme
SGI brachte Mitte der 1990er Jahre Workstations auf den Markt, in denen sich CPU und Grafikprozessor auf einem gemeinsamen Hochleistungsspeicher arbeiteten. Der Speicher war 256 bit breit organisiert, was 3,2 GByte/s bei 100 MHz Taktfrequenz ergab. Der verwendete Chipsatz hieß Cobalt, der Hauptvorteil war eine flexible Aufteilung zwischen Hauptspeicher und Grafikspeicher und der Wegfall des PCI-Busses als Engpass.
UMA bei Spielkonsolen
Die von Microsoft entwickelten Spielkonsolen Xbox und Xbox 360 verwenden ebenfalls UMA. Diese besitzen also keinen dedizierten Grafikspeicher, sondern einen gemeinsamen Speicher für CPU und GPU.
Abgrenzung
Geht es bei dem Zugriff auf den gemeinsamen Speicher um die parallele Nutzung der Inhalte innerhalb eines Symmetrischen Multiprozessorsystems (SMP), so spricht man von Uniform Memory Access.