我知道,由于许多不同的因素,这两个 CPU 在时钟速度相同的情况下仍然不同,但我意识到我没有足够的知识来清楚地解释这一点。我认为缓存和优化在其中发挥了相当大的作用,但有人能解释一下,即使核心数量和时钟速度相同,我如何才能告诉我的开发人员,他们的 MacBook Pro CPU 不如暂存 VM Xeon CPU 快?如果这两个指标相同(或者我认为它可以),那么是什么使得一个 CPU 能够在一个周期内比另一个 CPU 完成更多工作?
我知道磁盘子系统、网络等都是影响性能的因素;这只关注 CPU 性能。
答案1
首先,Xeon 有 6 核 12 线程,而 i7 最多有 4 核 8 线程(有些 i7 有 6 核/12 线程,但对于笔记本电脑来说它们运行时温度太高)。
唯一以 3.0Ghz 运行的 i7 是 2 核/4 线程 3540M 和 4610M 以及 4 核/8 线程 3940M 和 4930MX - 所有这些都使用 DMI 2.0,其四通道最大内存传输速率为 20Gbps,因此理论上最大为 10GBps。
X5670 实际上是 2.93Ghz 芯片,而不是 3.0Ghz,但具有 2 × 6.4 GT/s QPI,计算结果为 25.6GB/s,并且由于可用的 L2/3 缓存显著增加,实际上比 i7 更容易实现。
答案2
除了核心数量和时钟速度、缓存速度和大小以及内存总线速度之外,至少还有两个因素:
现代英特尔 CPU 会动态调整时钟速度以控制热量/功耗。当只有一个进程受计算限制时,它们的时钟会加快,使一个内核运行得非常“热”,而其他内核则基本处于空闲状态。当多个内核繁忙时,时钟速度会降低。台式机和服务器通常比笔记本电脑能处理更多的热量,因为笔记本电脑更看重尺寸和低噪音,而不是原始功率。
英特尔 CPU 架构的不同迭代对 x86 指令集中的许多指令有不同的实现。对于许多指令,可以有不同的实现选择,以权衡电路复杂性、速度和功耗。每个核心中都有多个“执行单元”,允许一些指令或部分指令同时执行;指令本身被“流水线化”成几个步骤,不同的 CPU 线路以不同的方式分解这些步骤。想象一下单核有点像餐厅厨房,有一定数量的煎锅、炉子、碗、餐具、量杯和厨师——显然可以做出很多权衡,从而改变任何给定食物订单的表现。
答案3
尽管存在很多差异,例如缓存大小、内存延迟、分支预测效率等,但基本差异就这么简单——两个 CPU 需要不同的总时钟周期数来执行相同的指令序列。
答案4
好吧,下面是比较。您没有说明 i7 的型号,因此我选择了最接近的型号:
http://ark.intel.com/compare/71255,47920
如您所见,Xeon 已经有 4 年历史了,而 i7 也已经存在了大约一年左右,因此采用了更新的技术。
Mhz 曾经是很重要的一个指标,但如今,即使是时钟频率较低的处理器也能超越时钟频率较高的处理器(想想 Pentium 4 及其高时钟频率与当今时钟频率的比较),这得益于各种技术。这些技术包括优化指令(如 SSE4.2)、超线程和缓存。
所以回答你的问题,Xeon 可能会被配备 i7 的机器所超越,仅仅是因为它更加优化(同时也消耗更少的电量!)。然而人们在服务器中使用 Xeon 的原因是,与 i7 相比,Xeon 能够支持更大的 RAM,因此在服务器中很受欢迎。
然而,较新的 Xeon 8 与 i7 相比具有竞争力,非常适合此类任务。