首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在缓存一致性方面,迁移和复制有什么区别?

在缓存一致性方面,迁移和复制有什么区别?
EN

Stack Overflow用户
提问于 2020-06-15 05:39:13
回答 1查看 438关注 0票数 2

在“计算机组织与设计”(Computer Organization and Design,RISC-V ed.)中,对于"Basic增强一致性方案“,我混淆了两个概念,即迁移和复制。

所给出的两个定义如下:

在高速缓存与多处理器相一致的

中,缓存提供共享数据项的迁移和复制:

  1. 迁移:数据项可以移动到本地缓存,并以透明的方式使用。迁移既减少了访问远程分配的共享数据项的延迟时间,也减少了共享内存的带宽需求。

  1. 复制:当共享数据同时被读取时,缓存在本地缓存中生成数据项的副本。复制减少了访问延迟和读取共享数据项的争用。

支持迁移和复制对于访问共享数据的性能至关重要,因此许多多处理器引入了一种硬件协议来维护一致的缓存。

我认为复制在缓存系统中是非常熟悉的,但是,我不知道迁移是如何工作的。

EN

回答 1

Stack Overflow用户

发布于 2020-08-07 17:33:27

共享数据的迁移和复制是缓存有益的两种方式。

  1. 迁移:假设A处理单元想要执行许多操作--共享数据项。该数据项可能位于附加到处理单元B的存储器中,或者位于某种遥远的共享内存中。因此,访问此项目将是缓慢的。为了解决这个问题,我们将said项迁移/移动到附加到A的本地缓存,在这里我们可以更快地访问它,并且不需要加载共享内存。这是我们在单处理器系统中缓存的一个好处,就像well.
  2. Replication:一样,这仅与多处理器上下文相关。假设处理单元A和B同时希望访问共享内存中的数据。因为这两个请求不能同时处理,所以两个请求中的一个必须等待另一个请求完成,从而引入额外的延迟。如果将这些数据复制/复制到A和/或B的本地缓存中,则不必争用共享内存资源,因为其中一个或两者都可以访问自己的本地副本。

迁移意味着将数据移动到本地缓存,因为它比共享或远程内存更快。

复制意味着为多个处理单元拥有数据的本地副本,这样它们就不必争夺共享内存的访问权限。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62381962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档