![机器的差异](https://linux22.com/image/1410162/%E6%9C%BA%E5%99%A8%E7%9A%84%E5%B7%AE%E5%BC%82.png)
我有一个非常大的解决方案,有 11K+ 个单元测试,在我的桌面上运行它们大约需要 30 分钟;在我的笔记本电脑上运行它们需要 60 分钟。
笔记:我已经将 HDD 换成了 SSD,但并没有任何提升。
机器的差异
处理器
- 台式机:Intel Xeon W3550 @ 3.07 GHz(8 核)
- 笔记本电脑:AMD A10-5745M APU,配备 Radeon HD Graphics(4 核)
内存
- 台式机:6 GB
- 笔记本电脑:6 GB(可升级至 16 GB)
笔记:我不确定如何确定 RAM 的更多规格,因此希望得到指导如果需要的话。
问题
好了,有了这些信息,在运行单元测试时,我该如何确定是 RAM 还是处理器是瓶颈?如上所述,RAM 是可升级的,而我认为处理器可以升级一点,但幅度很小。
答案1
我认为回答你的问题的一个好方法是使用KISS 方法:保持极致简单。
因为您要比较两台计算机,所以总会有一些小因素(RAM 速度、FSB 速度、硬件使用年限、后台进程运行、硬盘碎片、主板制造商)影响解决方案的完成速度。大多数情况下,这些小因素只会对最终结果造成 0.1% - 5% 的影响(可以忽略不计)。
抛开这些小事,让我们比较一下您列出的两个硬件规格:
至于内存,台式机和笔记本电脑的 RAM 大小相同(6 GB)。如果您在笔记本电脑中增加更多内存,我相信您会看到解决方案的完成时间略有减少。增加 RAM 数量将为操作系统提供更多空间来存储所需的信息和您在解决方案中运行的信息。根据您使用的软件和运行的解决方案类型,您可能会看到从 5% 到 200% 的增长。但由于您没有提供这些信息,我无法肯定地说。
但是由于两台计算机的内存量相同,因此运行在一台计算机上的程序无法通过使用比另一台计算机更多的内存来获得优势。至于这个原因,内存不是这里的问题,也是一个没有实际意义的问题。
至于处理器,这两台电脑在这方面有很大不同。台式电脑配备 8 核 Intel Xeon 处理器,而笔记本电脑配备 4 核 AMD 处理器。就每个处理器的速度而言,英特尔的时钟频率为 3.06 GHz,而 AMD 的时钟频率为 2.9 GHz。虽然这不会给台式机带来巨大的优势,但确实给它带来了一点优势。
这里最大的问题是英特尔处理器有 8 个内核,而 AMD 只有 4 个内核。因此,英特尔在相同时间内处理的信息量是 AMD 的 2 倍。这使得英特尔处理器比 AMD 处理器快 2 倍。这也是为什么英特尔处理器完成任务的速度比 AMD 处理器快 2 倍的原因。
总之,我想说笔记本电脑中的 AMD 处理器是您要寻找的主要瓶颈。当您比较两件事物时,请记住可以将相同的部分从等式中剔除,以便您只关注不同之处。
PS:台式机的内存和处理器几乎总是可以升级,而笔记本电脑只有内存可以升级。95% 的笔记本电脑处理器无法升级。