Bor*_*isD -2 memory cpu computer-architecture hardware-failure
我的朋友想为他的 PC 购买最后的 i9 处理器,我告诉他那是浪费钱,计算机的所有组件都必须在相同的频率上运行,而且处理器比 RAM 内存更加先进。
如果 RAM 运行在 1Ghz(只是说)并且处理器运行在 2Ghz,则计算机将以 1Ghz 运行。
他说那不再是真的,但当我问他发生了什么变化时,他不知道说什么。
那么,有人可以向我们澄清吗?也许也提供一些来源
谢谢。
\n\n计算机的所有组件必须以相同的频率运行
\n
这根本不是真的。您的计算机将以 60 Hz 运行 - 这是显示器的刷新率。
\nCPU 具有内部缓存,由于其邻近性和所使用的技术,其速度明显快于 RAM。生成缓存的成本要高得多,而且增加缓存数量会增加延迟,因此我们不能在 CPU 上放置千兆字节的缓存,但现代 CPU 拥有几十 MB 的缓存。它甚至分为三个级别。较低级别较小,但速度极快,较高级别容量更大,但延迟也更长。
\n由于速度优势,处理器尽可能在高速缓存而不是 RAM 上运行。编写程序时也考虑到了缓存。RAM 的某些部分被访问的次数越多,它出现在 L1(一级)缓存中的可能性就越大。当有看起来更相关的数据时,以前的值会移至 L2,然后移至 L3,最后移至 RAM。同样,如果必须读取某些数据,CPU 将首先检查 L1 缓存中是否存在该数据,然后检查 L2、L3,最后检查 RAM。
\n这个描述是一个非常简化的模型,实际上,由于需要协调 CPU 核心等的单独缓存,还有更多的事情发生,但这足以回答您的问题。
\n现在,当CPU等待来自高级缓存或RAM的数据时,它不会空闲。它的时钟完全独立于 RAM 的时钟,并且仍然会滴答作响。如果以下操作不依赖于当前操作的结果,它将尝试执行以下操作,甚至对结果进行有根据的猜测,并尝试根据该猜测继续工作。所有这些都是为了避免浪费时间等待 RAM。
\n您似乎还假设 RAM 将在每个时钟周期传送数据。事实并非如此。RAM 模块具有许多称为时序的延迟参数,其中 CL(CAS 延迟)时序与模块的时钟频率相结合是最重要的参数。Clock/CL 可用作粗略的性能指标,可用于比较相同类型的模块(例如 DDR4 与 DDR4),值越高越好。例如,尽管时钟频率较低,2400 MHz CL15 模块仍优于 2666 MHz CL18 模块,因为 2400M\xc3\xb715=160 M 操作/秒和 2666M\xc3\xb718\xe2\x89\x88148 M 操作/秒。
\n确实,某些组件的某些时钟是同步运行的。特别是,Ryzen 处理器中的 IF 互连以 RAM 速度运行。在第一代 Ryzen 中,人们可以通过增加 RAM 时钟来超频 IF,但代价是更高的 RAM 延迟(这样可以保持整体 RAM 性能,并且即使使用更便宜的模块也可以达到更高的时钟)。较新的 Ryzen 和 Intel 并没有从高频 RAM 中受益太多。
\n如果您想从集成 GPU 中获得更多性能,那么选择更高的 RAM 时钟非常有意义。如果您要使用专用 GPU 和非 Ryzen 1xxx CPU,则没有太大区别。购买主频高于 RAM 的 CPU 绝对很有意义。
\n