Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Opencl ATI FirePro上的PCIe带宽_Opencl - Fatal编程技术网

Opencl ATI FirePro上的PCIe带宽

Opencl ATI FirePro上的PCIe带宽,opencl,Opencl,我尝试在ATI FirePro 8750上测量PCIe带宽。SDK中的amd应用程序示例PCIeBandwidth测量以下传输的带宽: 主机到设备,使用clenqueueredbuffer() 设备到主机,使用clEnqueueWriteBuffer() 在我的系统(windows 7,Intel Core2Duo 32位)上,输出如下: Selected Platform Vendor : Advanced Micro Devices, Inc. Device 0 : ATI RV770 Ho

我尝试在ATI FirePro 8750上测量PCIe带宽。SDK中的amd应用程序示例PCIeBandwidth测量以下传输的带宽:

  • 主机到设备,使用clenqueueredbuffer()
  • 设备到主机,使用clEnqueueWriteBuffer()
  • 在我的系统(windows 7,Intel Core2Duo 32位)上,输出如下:

    Selected Platform Vendor : Advanced Micro Devices, Inc.
    Device 0 : ATI RV770
    Host to device : 0.412435 GB/s
    Device to host : 0.792844 GB/s
    
    此特定卡具有2 GB DRAM,最大时钟频率为750 Mhz

    1-为什么每个方向的带宽不同

    2-为什么带宽这么小

    我也知道这种通信是通过DMA进行的,所以带宽可能不受CPU的影响

    这篇来自微软研究实验室的文章为GPU和CPU之间的PCIe数据传输带宽不对称提供了一些线索。本文描述了PCIe上FPGA-GPU数据传输带宽的性能指标。它还包括PCIe上CPU-GPU数据传输带宽的指标

    引用相关章节

    “还应该注意的是,GPU-CPU本身也传输数据 表现出一定程度的不对称行为。在GPU到CPU的情况下 传输,其中GPU启动总线主写入,GPU 达到最大值 6.18千兆字节/秒。在从CPU到GPU的相反方向上,GPU启动总线主读,产生的带宽下降到5.61 千兆字节/秒。在我们的观察中,通常情况下 对于任何PCIe,主写入比总线主读取更有效 由于协议开销和 实施而解决这种不对称的一个可能办法是 使用CPU启动的总线主机处理CPU到GPU的方向 写入时,该硬件设施在PC体系结构中不可用 一般来说。”

    关于带宽的第二个问题的答案可能是由于数据传输大小的单位。 参见图2、3、4和5。我在第一届AMD Fusion大会上也看到过类似的图表。解释是,由于协议和设备延迟,PCIe数据传输有开销。对于较小的传输尺寸,开销更为显著,而对于较大的尺寸,开销变得不那么显著

    您有哪些杠杆来控制或提高绩效?

    获得芯片/主板和GPU的正确组合是H/W杠杆。具有最大PCIe通道数的芯片更好。使用更高规格的PCIe协议,PCIe 3.0优于PCIe 2.0。所有组件都需要支持更高的标准

    作为程序员控制数据传输的大小,是一个非常重要的杠杆

    128K-256K字节的传输大小大约占最大带宽的50%。1M-2M字节的传输占最大带宽的90%以上。

    微软研究实验室的这篇文章为GPU和CPU之间的PCIe数据传输带宽不对称提供了一些线索。本文描述了PCIe上FPGA-GPU数据传输带宽的性能指标。它还包括PCIe上CPU-GPU数据传输带宽的指标

    引用相关章节

    “还应该注意的是,GPU-CPU本身也传输数据 表现出一定程度的不对称行为。在GPU到CPU的情况下 传输,其中GPU启动总线主写入,GPU 达到最大值 6.18千兆字节/秒。在从CPU到GPU的相反方向上,GPU启动总线主读,产生的带宽下降到5.61 千兆字节/秒。在我们的观察中,通常情况下 对于任何PCIe,主写入比总线主读取更有效 由于协议开销和 实施而解决这种不对称的一个可能办法是 使用CPU启动的总线主机处理CPU到GPU的方向 写入时,该硬件设施在PC体系结构中不可用 一般来说。”

    关于带宽的第二个问题的答案可能是由于数据传输大小的单位。 参见图2、3、4和5。我在第一届AMD Fusion大会上也看到过类似的图表。解释是,由于协议和设备延迟,PCIe数据传输有开销。对于较小的传输尺寸,开销更为显著,而对于较大的尺寸,开销变得不那么显著

    您有哪些杠杆来控制或提高绩效?

    获得芯片/主板和GPU的正确组合是H/W杠杆。具有最大PCIe通道数的芯片更好。使用更高规格的PCIe协议,PCIe 3.0优于PCIe 2.0。所有组件都需要支持更高的标准

    作为程序员控制数据传输的大小,是一个非常重要的杠杆


    128K-256K字节的传输大小大约占最大带宽的50%。1M-2M字节的传输占最大带宽的90%以上。

    您使用的是什么CPU?如果PCIe传输足够糟糕,CPU通常会阻塞PCIe传输。传输是通过DMA进行的(在此传输之前,缓冲区始终固定),CPU是坏是好这有什么关系您的GPU位于x16通道上。。对吗?你的系统内存速度是多少?如果在Windows Vista或更高版本下,请进入命令行并键入“winsat mem”。我的意思是,应该不止这些,但你永远不知道..系统内存性能:2011.77 MB/s你在用什么CPU?如果PCIe传输足够糟糕,CPU通常会阻塞PCIe传输。传输是通过DMA进行的(在此传输之前,缓冲区始终固定),CPU是坏是好这有什么关系您的GPU位于x16通道上。。对吗?你的系统内存速度是多少?如果在Windows Vista或更高版本下,请进入命令行并键入“winsat mem”。我的意思是,应该不止这些,但你永远不知道..系统内存性能:2011.77 MB/s