Skip to content
Surf Wiki
Save to docs
general/graphics-hardware

From Surf Wiki (app.surf) — the open knowledge base

Graphics address remapping table

I/O memory management unit for graphics


I/O memory management unit for graphics

The graphics address remapping table (GART), also known as the graphics aperture remapping table, or graphics translation table (GTT), is an I/O memory management unit (IOMMU) used by Accelerated Graphics Port (AGP) and PCI Express (PCIe) graphics cards. The GART allows the graphics card direct memory access (DMA) to the host system memory, through which buffers of textures, polygon meshes and other data are loaded. AMD later reused the same mechanism for I/O virtualization with other peripherals including disk controllers and network adapters.

A GART is used as a means of data exchange between the main memory and video memory through which buffers (i.e. paging/swapping) of textures, polygon meshes and other data are loaded, but can also be used to expand the amount of video memory available for systems with only integrated or shared graphics (i.e. no discrete or inbuilt graphics processor), such as Intel HD Graphics processors. However, this type of memory (expansion) remapping has a caveat that affects the entire system: specifically, any GART, pre-allocated memory becomes pooled and cannot be utilised for any other purposes but graphics memory and display rendering.

Operating system support

Linux

Jeff Hartmann served as the primary maintainer of the Linux kernel's agpgart driver, which began as part of Brian Paul's Utah GLX accelerated Mesa 3D driver project. The developers primarily targeted Linux 2.4.x kernels, but made patches available against older 2.2.x kernels. Dave Jones heavily reworked agpgart for the Linux 2.6.x kernels, along with more contributions from Jeff Hartmann.

FreeBSD

In FreeBSD, the agpgart driver appeared in its 4.1 release.

Solaris

AGPgart support was introduced into Solaris Express Developer Edition as of its 7/05 release.{{cite web |archive-url = https://web.archive.org/web/20090323100129/http://docs.sun.com/app/docs/doc/819-2254/agpgart-io-7i |archive-date = 2009-03-23 |url-status = dead

References

References

  1. (4 May 1998). "Accelerated Graphics Port Interface Specification: Revision 2.0".
  2. (September 2002). "AGP V3.0 Interface Specification".
  3. freedesktop.org. "GART".
  4. [https://support.amd.com/TechDocs/48882_IOMMU.pdf AMD I/O Virtualization Technology (IOMMU) Specification, 32-bit to 64-bit Legacy I/O Device Mapping]
  5. Jones, Dave. (2003-07-24). "Ugly Ducklings: Resurrecting unmaintained code – agpgart adapted for Linux 2.6 kernel".
  6. (2007-11-28). "agp(4)". freebsd.org.
Info: Wikipedia Source

This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page.

Want to explore this topic further?

Ask Mako anything about Graphics address remapping table — get instant answers, deeper analysis, and related topics.

Research with Mako

Free with your Surf account

Content sourced from Wikipedia, available under CC BY-SA 4.0.

This content may have been generated or modified by AI. CloudSurf Software LLC is not responsible for the accuracy, completeness, or reliability of AI-generated content. Always verify important information from primary sources.

Report