gpt4 book ai didi

c++ - 如何检测错误共享会降低性能?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:14:47 25 4
gpt4 key购买 nike

我正在调整一个高性能多线程应用程序,我怀疑错误共享可能是导致性能不佳的原因。我如何验证是否属于这种情况?

我在 Ubuntu 12.04 上使用 gcc 4.82 运行 C++。

最佳答案

我将发布一些我刚从 C++ 并发实战中了解到的内容。

测试错误共享的一种方法是在数据元素之间添加巨大的填充 block ,这些数据元素可以被不同线程并发访问。

struct protected_data
{
std::mutex m;
char padding[65536];
my_data data_to_protect;
};

如果这提高了性能,那么您就知道错误共享是一个问题。

关于c++ - 如何检测错误共享会降低性能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26404376/

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