繁体   English   中英

在仅 CPU 的 tensorflow 上运行 DDQN,我的笔记本电脑比我的 AMD 3900 快 50 倍

[英]Running a DDQN on CPU-only tensorflow, my laptop is 50x faster than my AMD 3900

我在我的笔记本电脑上运行了一个示例程序(来自这里的 DDQN)。

我的笔记本电脑可以大约每 04 秒执行一个步骤(Lenovo P51 运行 Ubuntu 18.04,32gb 的 memory,ssd)。 我在我的工作站上尝试了同样的程序(AMD 3900x,64GB RAM,运行 Windows 10,GNU Python 3.8),每一步需要 2-3 秒。 两者都设置为使用 Tensorflow 2.3.1 和 NO GPU(我在代码中添加了额外的行以确保这一点)。 我也在我的 Mac(自制 Python 3.8)上尝试了这个,并得到了与我的工作站相似的结果。 Mac 是 2014 年的 Macbook Pro,所以我预计它会很慢,但对台式机的结果感到惊讶。

我还尝试在工作站上的 Linux (Lubuntu 20.04) 上运行相同的代码并得到相同的结果(每个步骤大约 2-3 秒)。 这让我觉得我可能有硬件问题,但我在工作站上运行了许多基准测试,但没有任何问题出现。

我真的在寻找有关如何解决此问题的任何想法,因为它似乎可能是硬件,但也许在我的联想笔记本电脑上配置了“正确”的东西,而其他两个平台上还没有设置。

我在所有平台上的安装基本上是确保安装 python 3.8,然后 pip 安装 tensorflow、Z063009 和 0BB15C812722Z1DCDF0DCDF0 据我所知,没有进行其他调整或调整。

更新:我发现笔记本电脑环境仍然指向较旧的 python (3.6),它安装了较旧的 tensorflow (1.14)。 所以现在我的问题是,为什么 2.3.1 在这段代码上这么慢,而 1.1.4 这么快? 我会在谷歌上搜索更多,但感谢您提出建议。

这可能是由于很多事情发生了变化——在我的脑海中,最有可能是num_workers这是工人的数量,应该随着线程数量的增加而增加,默认为 1——将其更改为 8 或 16 并查看性能是否提高。

然而,这可能是由于 BLAS 的不同实现 - Tensorflow 使用英特尔 MKL 加速,在 AMD 上运行速度要慢得多(可能是英特尔的市场细分),很难说。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM