【发布时间】:2011-11-23 19:51:39
【问题描述】:
为什么我们需要在Cache Memory中缓存?为什么 RAM 内存不能像寄存器一样快,高速缓存或高速缓存不能像 RAM 内存(4GB)一样大,以便所有内容都可以在缓存中?有什么好的文章/书籍可以理解这些概念吗?
【问题讨论】:
-
+1 回答我一直只是“盲目假设是这种情况”但从未花时间真正问自己为什么的问题...
-
Petzold 的“代码”书可能涉及到这一点,它也是非常初级的。您的问题跨越了数十年的技术。有些微控制器,如旧处理器,内存和寄存器的速度相同。大多数情况下,答案是“按设计”、“出于成本考虑”。你可以做一个 4GB 内存的处理器,没有等待状态,但由于价格,没有人会买它。
-
缓存往往是多层的,最贵最快的内存在最底层的缓存,大小受芯片面积特别是价格的影响,有多少人愿意花4000美元他们计算机中的处理器只是为了获得更多的l1缓存?不多,不够。越接近处理器(高速缓存)的内存越接近处理器速度,千兆赫兹的处理器会想要读取往返时间与速度相似的内存。
-
1333MHz DRAM 不是 1333MHz 内存读取周期时序,mhz 来自到芯片的总线速度,其中多个事务在进行中,但往返速度非常慢。系统工程,尤其是 x86,严重依赖缓存层,如果您要关闭这些缓存,您的计算机将会非常缓慢。不过,这就是它的美妙之处,有点贵的内存,更便宜的内存是速度的一半或四分之一,而且内存很慢。
-
显然这个问题不应该被关闭...使用谷歌研究 sram 与 dram。例如,我们今天使用的是 DDR DRAM,在搜索中使用 ddr 可能会发现更多关于它是如何工作的信息。在阅读技术时,您必须推断性能影响和成本在哪里。然后,如果您想查找缓存以了解缓存如何平滑处理,并推断缓存内存由昂贵的 sram 组成,并且通常比 dram 或它后面的其他缓存快得多。
标签: caching memory hardware ram