PyTorch VS TensorFlow 谁最强?这是标星 15000+ Transformers 库的运行结果

网友投稿 726 2022-05-30

在 CPU 上,使用 GCP n1-standard-32,它有 32 个 vCPU 和 120GB 的内存。CPU 的型号是 Intel Xeon@2.3GHz:

在 GPU 上,使用了带有 12 个 vCPU、40GB 内存和一个 V100 的 GPU(16GB 的    VRAM)的定制 GCP 机器;

上述测量使用的 Intel Xeon CPU 带有 AVX 和 AVX2 的扩展,而 TensorFlow 需要从源代码编译之后才能够利用这些扩展,所以只能这么做;

PyTorch VS TensorFlow 谁最强?这是标星 15000+ Transformers 库的运行结果

我们通过使用 tf.function 和预先跟踪模型来确保我们没有使用 TensorFlow 的 eager 模式;

我们比较了依赖于库和不依赖于库的工具:Pytorch的 TorchScript 和带有 GPU 的TensorFlow 的 XLA(自动聚类),后面会详细介绍这两个工具;

我们使用了原生的 Python 模块 timeit 来测量推断时间。另外,用repeat=30 和number=3 来进行每个实验。然后求出30 个值的平均数,就会得到所期望的平均推理时间。通常超过30 个值就会获得非常稳定的结果了;

我们不会使用如 TFX 这样的生产环境,并且我们使用的测量模型的可调用方法是:PyTorch 的nn.module.forward 和 TensorFlow 的tf.keras.layers.layer.call;

对于 TensorFlow 和 PyTorch,我们会很谨慎地使用适当的 CUDA 版本;

所有的模型中,在 CPU 上,PyTorch 的平均推断时间为 0.748s,而 TensorFlow 的平均推断时间为 0.823s;

所有模型中,在 GPU 上,PyTorch 的平均推断时间为 0.046s,而 TensorFlow 的平均推断时间为 0.043s;

人工智能

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:用DevCloud研发一款APP,这6大优势能提高交付效率
下一篇:New UWP Community Toolkit 6.0
相关文章