谁能分享给我并行编程.net 4.0中“虚假共享”的知识?如果您可以举例说明,那就太好了。提前致谢 。我想要我的代码的最高性能。

最佳答案

错误共享是一个术语,用于描述单个处理器高速缓存将不同的数据集视为共享的情况。造成这种情况的原因与硬件高速缓存行的工作方式的细节有关,并且可能会因一种体系结构而异于另一种体系结构。关键是,当单个处理器缓存的内容标记为共享时,用于维护主内存与其他单个处理器缓存之间的一致性的缓存一致性协议(protocol)必须更加努力地工作。碰到的是当他们确实不应该将它们标记为共享时。您可以阅读此article了解更多信息。

09-12 17:44