小编Mic*_*diš的帖子

TensorFlow 中 CPU 到 GPU 的数据传输速度慢吗?

我已经使用 TensorFlow 测试了 CPU 到 GPU 的数据传输吞吐量,它似乎明显低于 PyTorch。对于大张量,速度要慢 2 倍到 5 倍。在 TF 中,我达到了 25MB 张量的最大速度(~4 GB/s),并且随着张量大小的增加,速度下降到 2 GB/s。PyTorch 数据传输速度随着张量大小而增长,并在 9 GB/s(25MB 张量)时饱和。该行为在 RTX 2080ti 和 GTX 1080ti 以及 TF 2.4 和 2.6 上是一致的。

难道我做错了什么?有什么方法可以匹配 PyTorch 的数据吞吐量吗?我不仅仅是想隐藏延迟,例如使用异步队列,而且我想获得完整的数据带宽。

TF 中批量 256x256x3 图像的结果(平均超过 100 次传输):

code: tf.cast(x, dtype=tf.float32)[0, 0]
Batch size 1; Batch time 0.0005; BPS 1851.8; FPS 1851.8; MB/S 364.1
Batch size 2; Batch time 0.0004; BPS 2223.5; FPS 4447.1; MB/S 874.3
Batch size 4; Batch time 0.0006; BPS 1555.2; FPS …
Run Code Online (Sandbox Code Playgroud)

python performance gpu pci-e tensorflow

8
推荐指数
1
解决办法
1541
查看次数

标签 统计

gpu ×1

pci-e ×1

performance ×1

python ×1

tensorflow ×1