gpt4 book ai didi

C++/g++ : Concurrent program

转载 作者:行者123 更新时间:2023-11-30 00:41:42 25 4
gpt4 key购买 nike

我有一个据说可以并行工作的 C++ 程序(源代码)。但是,如果我用 g++ 编译它(我使用的是 Ubuntu 10.04 和 g++ 4.4.3)并运行它,我的两个 CPU 内核之一会满载,而另一个则“什么都不做”。

所以我和给我程序的人谈了谈。有人告诉我,我必须为 g++ 设置特定的标志,以便为 2 个 CPU 内核编译程序。但是,如果我查看代码,我找不到任何指向并行性的行。

所以我有两个问题:

  • 是否有任何用于多线程应用程序的 C++ 内在函数,即是否可以在没有任何额外库的情况下编写并行代码(因为我没有发现包含任何非标准库)?
  • 是否真的有 g++ 标志告诉编译器为 2 个 CPU 内核编译程序并编译它以使其并行运行(如果:它们是什么)?

最佳答案

据我所知,除了循环迭代的并行化 (-ftree-parallelize-loops) 之外,没有旨在使单线程应用程序利用并行性的编译器标志(这绝对是一个重要的操作),它仍然必须是小心启动;尽管如此,即使没有明确的线程创建,也可能有一些 OpenMP并行化多个指令序列的指令。

关于C++/g++ : Concurrent program,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3035609/

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