【发布时间】:2022-01-23 09:04:44
【问题描述】:
我对虚假共享有所了解,所以我想避免它,一个解决方案是让数据的大小是缓存行,但我不知道如何找出cpu的缓存行,我不知道cpu读取一个或一次更多的缓存行数据,请,有人知道吗?
【问题讨论】:
我对虚假共享有所了解,所以我想避免它,一个解决方案是让数据的大小是缓存行,但我不知道如何找出cpu的缓存行,我不知道cpu读取一个或一次更多的缓存行数据,请,有人知道吗?
【问题讨论】:
在 X86_64 上,高速缓存行是 64 字节。因此,为了防止错误共享,您需要确保变量不会出现在同一缓存行中。
在实践中,由于相邻缓存行预取,最好将其扩展为 128 字节。
【讨论】: