集中式缓存处理器结构(SMP)
不同核访问存储器时间相同。
分布式缓存处理器结构(NUMA)
共享存储器按模块分散在各处理器附近,处理器访问本地存储器和远程存储器的延迟不同,共享数据可进入处理器私有高速缓存,并由系统保证同一数据的多个副本的一致性。
每个处理器核拥有本地的LLC(最后一级缓存),并通过片上互连访问其他处理器核的LLC。
缓存一致性
在共享存储的多核处理器中,存在Cache一致性问题,如何使同一数据块在不同Cache以及主存中的多个备份保持数据一致的问题。一个数据块可能在主存和Cache之中保存多份,而不同的处理器核有可能同时读取或者修改这个数据,导致不同的处理器核观察到的数据的值是不同的。所以需要缓存一致性协议保证缓存一致。
缓存一致性协议分类
(1)从如何传播新值的角度看,Cache一致性协议可分为写无效协议与写更新协议;
(2)从新值将会传播给谁的角度看,它可以分为侦听协议与目录协议。
写无效:把一个处理器核对某一单元所写的值传播给其他处理器核时,就使其他处理器核中