gpt4 book ai didi

c - 在核心之间共享数据的最有效方式

转载 作者:IT王子 更新时间:2023-10-29 01:27:39 25 4
gpt4 key购买 nike

在多核之间共享数据的效率最高的是什么。当然你可以使用共享内存,但这也是有代价的。假设一个核心不断地写入一个变量,而另一个核心必须不断地从中读取。使用 MESI 缓存一致性协议(protocol),写入核心会导致读取核心时不时地使其缓存失效。那么在这种情况下,最有效的数据共享方式是什么。

最佳答案

在典型的共享内存机器上,您描述的场景可能已经是最有效的方法:

  • Core A 写入内存位置。使核心 B 的副本无效。
  • 核心 B 从内存或核心 A 的缓存中获取数据。

无论哪种方式,数据都必须从核心 A 发送到核心 B。现代处理器中的缓存一致性有时会支持直接缓存到缓存的传输,而无需一直传输到内存。


您要(尽可能)避免过度锁定共享资源。这将增加双向缓存一致性流量(和延迟)。

关于c - 在核心之间共享数据的最有效方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10065747/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com