随着近年来多核 CPU 的广泛采用,人们不禁想到一个问题:CPU/核心比率与性能有何关系?
哪一个更好、如何更好以及为什么更好?
- 1 个 8 核 CPU
- 2 个 4 核 CPU
- 4 个 2 核 CPU
我已经知道许可的含义(有些软件无论实际核心如何都是在物理 CPU 上获得许可的,而其他软件实际上关心这一点),当然,具有更多物理 CPU 插槽的系统更加可定制并且可以更轻松地扩展;但我感兴趣的是这些配置之间的性能差异......如果有的话。
答案1
这取决于。
您的问题最终归结为内存。正如 Ben 提到的,它们是通过缓存还是通过主内存进行通信。但是,1x8 或 4x2 哪个更好完全取决于您的应用程序 - 取决于它是否会使缓存饱和。
如果工作负载类型基本相同且共享大量内存,那么具有大缓存的 1x8 就很不错。如果工作负载有许多独立的动态进程,那么 4x2 可能更好,因为通信开销最小。
为什么不从增量成本效益的角度来看待它呢?
轶事:我曾经构建过一台带有 2x6 处理器的 VM 主机,一旦跨越主内存,性能就会急剧下降。也就是说,通过主内存通信的内核较多时,其性能要比通过缓存通信的内核较少时慢。每个 VM 基本上只做一件事。
答案2
看了您对这个问题的评论,我想说,全速运行时,我认为 4 个 2 核 CPU 会由于缓存共享而获胜。1 个 8 核 CPU 必须以 8 种方式共享相同的缓存,而 4 个 CPU 只需 2 种方式。
尽管内核在处理时需要更长的时间进行通信,但我认为这比共享更多缓存的效果要小。