过去,时钟频率曾经是比较 CPU 的标准(或者您可能必须考虑它是 DX 还是 SX)。那时的世界很简单,但在这些快速发展的现代,要弄清楚如何最好地将辛苦赚来的钱花在新 CPU 上并不那么容易。
有人可以告诉我什么样的应用程序可以从不同的方面受益吗?
什么时候应该选择更多内核而不是时钟速度?什么是缓存?什么时候最需要它?游戏?视频编辑?开发?
- 时钟频率:
- 核心数:
- 高速缓存存储器:
- 其他:
答案1
更多核心:适合执行多项任务(托管虚拟机等) 更快的速度:适合更快地完成每项任务
缓存基本上是 CPU 上速度更快(且更小)的 RAM 内存。所需的缓存量取决于工作量以及 CPU 交换数据的频率,但数量越多越好。缓存通常“分步”进行,因为速度越快的缓存越昂贵,因此缓存量也就越小,因此您会得到 1、2 和 3 级缓存,其中 1 级是最快的,您通常会在 CPU 上找到一定数量的缓存。CPU 会尝试将其最常需要的数据保存在有空间的最快的缓存中。
不过,你问的问题范围相当广泛,最好还是用谷歌搜索关于这个主题的合适的文章。
答案2
时钟频率
每个时钟周期,CPU 都会尝试工作。时钟越快,它可以尝试完成的工作就越多。但是,CPU 经常在等待 RAM 或 I/O 设备输入要处理的内容,因此这通常是性能的限制因素,而不是时钟速度。如果您正在做的事情涉及大量数学计算或大量加密,那么更快的时钟频率会有所帮助。
如果你正在做的工作不是数学密集型的,那么较慢的时钟可以节省电量。因此,如今许多 CPU 都允许操作系统以某种方式管理时钟速度。
缓存
CPU 可以处理的任何东西都必须存储在 RAM 中。DIMM 中的外部 RAM 比 CPU 慢 - 这意味着占用外部 RAM 的东西会让 CPU 等待,但缓存 RAM 的速度与 CPU 相同或接近。因此 CPU 的内存控制器会尝试将经常访问的东西保存在缓存中。
缓存 RAM 将极大地影响性能,因为 CPU 处理的任何东西都必须至少暂时存储在 RAM 中。对于大多数应用程序和操作系统,您需要尽可能多的缓存。
核心
如果您有 2 个内核,那么在每个时钟周期,基本上相当于 2 个 CPU 可以尝试同时执行独立工作。它们仍然受到 RAM 和 I/O 的限制。必须编写程序和操作系统以在多个内核之间分配工作(现在所有现代程序和操作系统都是这样)。
许多程序都会使用线程来处理事务 - 线程是程序的一部分,可以独立于主程序完成或工作。在多核系统上,可以同时执行多个线程,这意味着工作完成得更快。不将工作划分为线程的程序(较旧的程序、某些游戏)不会受益,但如果您运行两个这样的程序,那么您仍然会受益,因为每个这样的程序都可以在自己的 CPU 核心上运行。
鉴于现代操作系统在后台执行许多操作,并在一定程度上与程序争夺 CPU 资源,因此拥有多个核心几乎总是有好处的,而且越多越好。如果您主要运行旧程序或始终运行单个非线程程序,那么拥有 2 个以上核心可能没什么大不了的。