我是GeForce GTX670的显卡,pcie 是2.0*16的,理论带宽是16G/s,主机端内存都是用cudaMallocHost分配的,
传送7.5M数据块若干,带宽从11G/S到4G/S变化
还有一个700k的数据块若干,每次测试带宽基本都是10G/S
最惨的是一块2.2k的,带宽从2G/S到200M/S浮动,我的神啊,传个小数据就要10us+,泪奔:'(
要是一直慢就算了,为何浮动如此巨大啊,求大侠指点啊
我是GeForce GTX670的显卡,pcie 是2.0*16的,理论带宽是16G/s,主机端内存都是用cudaMallocHost分配的,
传送7.5M数据块若干,带宽从11G/S到4G/S变化
还有一个700k的数据块若干,每次测试带宽基本都是10G/S
最惨的是一块2.2k的,带宽从2G/S到200M/S浮动,我的神啊,传个小数据就要10us+,泪奔:'(
要是一直慢就算了,为何浮动如此巨大啊,求大侠指点啊
计时精度问题?
带宽=数据量/传输时间
估计传输时间记录有问题
我是用NVIDIA visual profiler 查看的呢,要是这个都不准。。。那还有谁准啊。。。。:o
LZ您好,pci-e 2.0 16X的单向理论传输速度最大值为8GB/s,因此您的显卡如果真的运行在pci-e 2.0 16X模式下,单向copy速度应该不会超过8GB/s的,而您给出了超过10GB/s的速度,这似乎不是很合理。
以及,传递小的数据的时候,可能很多时间是传输开销和延迟,而不能用数据量和理论带宽衡量。
其他情况请LZ提供进一步的信息以便讨论。
大致如此,祝您编码顺利~
你看我的11.7GB/S的截图哈
那个我知道传的数少带宽会比较低,但是我想不明白的是为何带宽浮动这么大,传2.25k的时候,带宽从2GB/S到200MB/S,如果我知道是什么因素导致传输变慢了就可以采取措施避免啊
LZ您好,您的图挂了。
以及4#并非单纯质疑您超过10GB/s的传输能力,而是指出您说的pci-e 2.0 @16X和单向超过8GB/S的传输能力之间的矛盾。
以及您的显卡是支持PCI-E3.0的,此时的最大单向传输能力为16GB/s。但这需要CPU和主板支持。
祝您好运~
LZ您好,尚不清楚该波动的原因。
以及2.25KB,这个数量似乎太小了一点,一般都建议尽量减少传输次数,每次尽量多传一些的。
祝您好运~