mcq_2 发表于 2020-11-23 11:15

内存跟显存的工作关系是怎么样的?

这个概念一直比较模糊,显存带宽指的是显存跟gpu之间的带宽吧。数据是从硬盘读到内存,然后从内存再读到显存里面的?还是直接从硬盘读到显存?显存跟内存或者硬盘交换数据是靠cpu还是gpu发指令呢?

下面是猜测。玩游戏既要占内存,又要占显存。显存理解是图形数据提供分辨率支撑,但是显存带宽高理解上应该是提供更高的刷新率吧,显存容量影响分辨率。这个说法对么?

twy_2000 发表于 2020-11-23 11:28

显卡也可以用内存,但是因为pcie延迟高,所以用显存。显存的数据都是用显卡从内存里面读取的。大概原理是,显卡驱动在内存里面申请一段空间(几十兆),然后需要存入显存的数据由cpu搬运到这段空间里,然后通知显卡的dma去取。

twy_2000 发表于 2020-11-23 11:31

现在交换数据都是类似的依赖dma的步骤(硬盘的也一样)。不过显卡dma目前只能访问内存,游戏主机上的显卡支持直接读硬盘,估计需要特殊的硬盘驱动。另外,深度学习炼金术的显卡有些支持直接访问网卡,也需要特殊的网卡驱动配合。反正一切的核心就是dma模块。

twy_2000 发表于 2020-11-23 11:36

那些多卡并行的显卡有多个dma,一个负责读取内存,另一个负责读取其它显卡的显存。

liwangli1983 发表于 2020-11-23 11:46

现在是分开的,要读来读去,也是没办法,gpu对显存的带宽要求高,延时不敏感;cpu相反,目前没有一种内存能同时满足两方的需求。

游戏机上,比如ps4这些,都是cpu/gpu共用高带宽高延时的显存,cpu是吃亏的,但没办法, 毕竟是游戏机,gpu需求是第一位的。

pc上的集显机器是gpu/gpu共用内存,gpu这块相当受限,可以看到最近一些apu机器,内存2666/3600/4266下,表现差别会非常大。

其实我到是想,amd自家的cpu和独显cpu,可不可以不走pcie,或者说增加一个IF总线的接口,直接通过IF总线沟通,这样独显gpu也可以直接访问内存了,虽然cpu访问显存还是得走pcie,但这种需求相对很小

commanderyuri 发表于 2020-11-23 12:47

页: [1]
查看完整版本: 内存跟显存的工作关系是怎么样的?