为什么在 opencl 中随着消息大小的增加带宽增加?

Why in opencl As the message size increases the bandwidth increases?

你好,我在一篇关于 opencl 中的数据传输的论文中阅读了随着我们要发送到设备内存的数据大小的增加,带宽也会增加,但我不知道为什么。谁能给我解释一下为什么带宽会增加?

每次内核启动或传输 to/from GPU 时,都会有几微秒的短暂延迟。从历史上看,这在 AMD GPU 上比在 Nvidia GPU 上更大。因此,发送数据所需的时间有两个组成部分:latency + X * Y B/s 其中 X 是字节数,Y 是理论带宽。 X小的时候,X * Y并不比latency大多少。随着 X 变大,例如多兆字节,总时间的 latency 部分在总时间中变得如此微小,以至于变得微不足道。