8

假设您有一个 (1) Intel/AMD x86-64 位 2 GHz 8 核处理器。

8 个内核中的每一个是否都以全 2 GHz 运行,或者每个内核是否以全 2 GHz 时钟的一部分运行(例如 250 MHz)?

4

4 回答 4

9

在满负荷下(即,当您的程序运行占用所有内核上的所有可用处理器时间时),所有内核将以额定速度运行(例如,8 核 2 GHz 处理器以 2 GHz 运行所有 8 个内核)。

现在,内核可以根据实际负载以不同的速度运行:

  1. 节能技术可以在负载低时单独关闭空闲内核以节省能源(8核机器上可能经常出现这种情况)
  2. 省电技术还可以“降频”整个处理器以节省能源。
  3. 英特尔的 TurboBoost 和 AMD 即将推出的 Turbo CORE 都允许其中一个内核在单个线程或进程与 CPU 挂钩的非常常见的情况下动态超频。

因此,一般来说,处理器将处于全速状态,但速度可能会动态波动。

于 2010-04-12T03:45:23.767 回答
5

第一个,时钟是由石英振荡器产生的输入,它被“注入”到 CPU 中,用于同步整组晶体管。虽然硬件的不同部分可以使用不同的时钟,驱动CPU(每个内核都是一样的)。

一个侧节点:一些高级 CPU 能够降级一些内核,因为它们目前处于空闲状态。这通常是通过将基本时钟速度缩放一个因子来实现的,但这只是为了节省功耗。

请注意,拥有更多 CPU 不应增加上下文切换:每当进程的量子结束或发生抢占时,都会进行上下文切换,因此使用更多的内核,您将拥有更多能够执行进程的“消费者” ,更换它们的需求较低。

于 2010-04-12T03:37:35.440 回答
2

我想,在全功率下,它们都应该以 2GHz 运行。但是,这并不能准确地创建一个 16GHz 处理器,因为在 100% CPU 上运行的单线程单进程程序只能使用一个。不过,8个2GHz核心在工作负载分配好的情况下,可以比1个16GHz核心好,因为每个核心都有自己的缓存等。从更实际的角度来看,拥有8个2GHz核心意味着如果一个程序以100%的速度运行,它不会减慢您的系统速度(除非它使用所有 8 个内核)。

请注意,现代硬件(具有适当的操作系统支持)在低工作负载时通常会降低时钟速度并关闭内核以节省电力。后者在今天可能不那么正确,但将来会如此。

于 2010-04-12T03:39:31.710 回答
0

在 Sandy Bridge 和 Ivy Bridge 中,不同的内核不能同时以不同的速度运行。L3 高速缓存总线以与内核相同的时钟速度运行,因此为防止出现同步问题,它们都必须以该速度运行或关闭。

资料来源:http ://www.anandtech.com/show/3922/intels-sandy-bridge-architecture-exposed/4

于 2014-10-07T19:11:05.793 回答