4个你未必知道的内存小知识
除了CPU,内存大概是最重要的计算资源了。基本成为分布式系统标配的缓存中间件、高性能的数据处理系统及当前流行的大数据平台,都离不开对计算机内存的深入理解与巧妙使用。本文将探索这个让人感到熟悉又复杂的领域。本文选自《架构解密:从分布式到微服务》。 复杂的CPU与单纯的内存 多核CPU与内存共享的问题 著名的Cache伪共享问题 深入理解不一致性内存 1 复杂的CPU与单纯的内存 首先,我们澄清几个容易让人混淆的CPU术语。 Socket或者Processor:指一个物理CPU芯片,盒装的或者散装的,上面有很多针脚,直接安装在主板上。 Core:指Socket里封装的一个CPU核心,每个Core都是完全独立的计算单元,我们平时说的4核心CPU,就是指一个Socket(Processor)里封装了4个Core。 HT超线程:目前Intel与AMD的Processor大多支持在一个Core里并行执行两个线程,此时在操作系统看来就相当于两个逻辑CPU(Logical Processor),在大多数情况下,我们在程序里提到CPU这个概念时,就是指一个Logical Processor。 然后,我们...
