【问题标题】:When is some memory "close" to the processor?一些内存何时“接近”处理器?
【发布时间】:2014-05-30 12:46:29
【问题描述】:

由于普通计算机的 RAM(与 CPU 相比)相对较慢,因此优化内存使用很重要。我大致了解如何使用缓存来掩盖糟糕的内存性能。

我一直在读到,将内存保持在靠近处理器的位置以实现良好的性能非常重要。让内存“靠近”处理器到底意味着什么?这是否指缓存内存(缓存更靠近处理器)?还是说主存不同部分的访问速度其实有区别?

【问题讨论】:

  • 可能意味着物理上更接近。 ;) 无论如何optimal memory usage is important 是的,如果您是硬件/操作系统开发人员。其他然后没人关心。现在是二十一世纪,我们不必再考虑这些事情了。

标签: multithreading performance caching memory cpu


【解决方案1】:

典型的内存架构由以下几个层次组成:

  • CPU 寄存器
  • 一级缓存
  • 二级缓存
  • 三级缓存
  • RAM 连接到同一个 CPU 插槽
  • RAM 连接到其他 CPU 插槽

内存访问时间按此顺序减少。形容词“close”指的是这个顺序,例如L1 缓存比 L2 缓存更接近。

如果性能很重要,您应该让内存尽可能接近处理器内核。然而,形容词“关闭”本身就令人困惑。

【讨论】:

  • 对于最近的 Intel 高性能 x86 芯片,L3 被切片,因此每个“节点”都有一个本地部分,其他切片根据环互连上需要多少跳而有额外的延迟。以类似的方式,使用多个内存控制器,距离较远但仍在片上的内存控制器可能具有更高的延迟。这些因素并不是特别重要,但为了更完整,它们似乎值得一提。
【解决方案2】:

它指的是缓存。尝试搜索 L1、L2、L3 缓存。 L1 是最近的,即当CPU 想在内存中查找一些数据时,它会访问最近的(L1)并检查。如果在这里找不到,它将进入随后的较低级别,最后进入主存储器(RAM),然后进入辅助存储器(硬盘)。 通常,靠近 CPU 的内存会更小但更快,而更远的内存会更大且更慢

【讨论】:

    猜你喜欢
    • 2012-02-17
    • 1970-01-01
    • 2018-12-01
    • 1970-01-01
    • 2020-05-24
    • 2021-12-31
    • 1970-01-01
    • 1970-01-01
    • 2018-07-14
    相关资源
    最近更新 更多