gpt4 book ai didi

c++ - 强制程序/线程使用 100% 的处理器资源

转载 作者:太空狗 更新时间:2023-10-29 23:21:40 25 4
gpt4 key购买 nike

我做一些与 map 软件和数学建模相关的 C++ 编程。有些程序需要一到五个小时才能执行并输出结果;然而,他们只消耗了我核心二人组的 50%。我在另一台基于双处理器的机器上尝试了代码,结果相同。

有没有办法强制程序使用所有可用的处理器资源和内存?

注意:我使用的是 ubuntu 和 g++

最佳答案

一个线程一次只能在一个核心上运行。如果您想同时使用两个内核,则需要找到一种方法在另一个线程中完成一半的工作。

这是否可行,如果可行,如何在线程之间划分工作,完全取决于您正在做的具体工作。

要实际创建一个新线程,请参阅 Boost.Thread docs ,或 pthreads docs ,或 Win32 API docs .

[编辑:其他人建议使用库来为您处理线程。我没有提到这些的原因是因为我没有它们的经验,而不是因为我认为它们不是一个好主意。他们可能是,但这完全取决于您的算法和平台。线程几乎是通用的,但要注意多线程编程通常很困难:您会给自己带来很多问题。]

关于c++ - 强制程序/线程使用 100% 的处理器资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1165707/

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