我将购买一个新的高端系统,我想更好地了解双处理器至强系统(我正在研究新的高端至强 E5-2687W)是否可以实际提供由于 L3 缓存翻倍(每个 CPU 20 MB),性能显着提高。
(这是由于内核和 RAM 加倍而偶尔增加的优势。)
我的使用场景大致是,我有许多后台应用程序随时运行——3 或 4 个数据压缩/备份应用程序、一个低影响的 Web 服务器、在任何给定时间(通常相当空闲)的一两个虚拟机,以及可能有 20 个实用程序利用了 CPU 核心的显着(但很小)部分。总的来说,当我不主动使用计算机时,我目前的 i7-970 6 核(12 线程)系统使用了大约 25% 的 CPU 总功率。
我在做日常工作的时候,CPU利用率经常超过50%,偶尔会达到75%-80%。
Xeon E5-2687W 不仅是第二代 i7(因此应该提高性能),而且还有 8 个内核(16 个线程),而不是 6 个内核。出于这个原因,我希望更少地运行到 75% 的 CPU 范围。尽管如此,将内核和 RAM 加倍的能力是一个考虑因素。
然而,最终,我相信这个决定归结为 L3 缓存加倍是否会提供明显的改进。有许多关于 CPU 能力的基准测试和大量讨论。但是,我发现很少讨论 L3 缓存利用率,以及 L3 缓存的增加(例如使用双处理器将其增加一倍)如何影响性能。
例如:如果只有两个进程在运行,但每个进程都受益于大型 L3 缓存(例如频繁扫描文件系统的后台进程可能是这种情况),也许使用双 CPU 可能会显着提高整体系统性能 - 甚至如果每个 CPU 上只有一个内核处于活动状态 - 由于每个进程都有两倍的有效 L3 缓存。
我希望有人了解增加(或加倍)L3 缓存大小的好处。
注意:我正在考虑的 CPU(至强 E5-2687W)具有 20 MB L3 缓存,因此具有双 CPU 的系统将具有 40 MB L3 缓存。
与缓存问题一样,答案是“这完全取决于您的工作量”。如果您正在运行的进程花费大量时间访问内存并表现出明显的内存寻址参考局部性(并且不满意每个内核存在的较小 L1/L2 缓存对此问题),则缓存才有任何用处。
在不同线程中运行大量进程会增加共享缓存抖动的几率,从而降低原本可以实现的性能提升。这也是随着内核数量的增加而增加缓存大小的原因 - 您运行的内存竞争线程越多,您的共享缓存可能需要越大才能发挥作用。
有一篇来自Tom's Hardware 的旧文章比较了两个带有和不带有 L3 缓存的旧 P4 芯片用于许多渲染/图形工作负载。这些数字和整个基准测试一样都是垃圾,但它包含对一般缓存架构和特别是 L3 缓存的很好的解释。
底线:您可能不会注意到差异,但如果您需要确切的数字,您将必须购买两个 CPU 并在它们上运行您的工作负载以比较运行时间。
| 归档时间: |
|
| 查看次数: |
18519 次 |
| 最近记录: |