gpt4 book ai didi

c++ - gcc 4.4.6 上的原子变量非常慢

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

我正在使用 gcc 4.4.6 并且可以通过 #include <cstdatomic> 访问 atomics .使用它们之后,我意识到它们非常非常慢。最后我看到了一篇关于 stackoverflow 的帖子,这里描述了它 Why is std::atomic<bool> much slower than volatile bool?

但是我跟不上。有人可以帮助我理解该帖子或解释为什么 gcc4.4.6 中的原子如此慢吗?

最佳答案

我相信 gcc-4.4 很早就支持原子。 gcc 中的原子最近在 gcc-4.7 中重新设计。我相信这是第一个版本,不同的硬件目标能够使用特定于硬件的高效内置函数。在 gcc-4.8 中提供了一个 libatomic。在 4.7 和 4.8 的过程中,各种平台都升级了它们的原子支持。 wiki解释了使用原子时各种内存模型的一些优化权衡。

基本上,gcc-4.4 有点早。 IIRC 甚至原子的标准规范也在 gcc-4.7 中不断变化。

关于c++ - gcc 4.4.6 上的原子变量非常慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14665977/

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