GPU 中的 GART
2023-06-09 本文已影响0人
陈成_Adam
缩写 | 全称 |
---|---|
GART | Graphics Address Remapping Table |
GTT | Graphics Translation Table |
IOMMU | I/O Memory Management Unit |
AGP | Accelerated Graphics Port |
PCIe | Peripheral Component Interconnect Express |
GART,图形地址重映射表。也被称为 GTT,图形翻译表。
Graphics address remapping table - Wikipedia
GART 作为一个 IOMMU(输入/输出存储管理单元),用于 AGP 或者 PCIe 接口的显卡。它使得显卡可以直接访问主机的内存,常用于加载内存中的纹理、顶点等数据,也可以用来扩展集成显卡的显存大小。
Graphics address remapping table - Wikipedia
需要注意,当用于扩展显存大小时,任何预分配的GART内存都变成预留的(pooled),不能用于除了作为显存使用以外的任何其他目的。这将挤压主机内存的可用大小,从而影响整个系统。
Graphics address remapping table - Wikipedia
GPU 访问 CPU 内存的过程为,
-
GPU 做主(master)发起请求,GPU 虚拟地址
-
GPU 中的 MMU 翻译成总线地址。
-
总线地址经过 GART 翻译成物理地址。该物理地址最终指向 CPU 内存
![](https://img.haomeiwen.com/i1293315/162618c320e5199e.png)
A deeper look into GPUs and the Linux Graphics Stack (mupuf.org)
GART 中记录的存储空间充当了 CPU 和 GPU 之间的共享存储。
![](https://img.haomeiwen.com/i1293315/7f67884d4c8cbddf.png)
A deeper look into GPUs and the Linux Graphics Stack (mupuf.org)