c++ - 在多核 (linux) 中运行进程的命令行参数是什么

标签 c++ linux multithreading gcc parallel-processing

我试图在多个核心中运行我的程序。我的桌面有 12 个内核,想让计算机一个一个地使用 1,2,3,4,......,11,12,想测试程序在不同内核数下的表现如何。我尝试在可执行文件之后使用 -t4 或 -t 4。

./a.out -t4 

但我不能确定它是否正好使用 4。任何人都可以帮助我理解这一点或指出正确的方向。

最佳答案

您的程序必须是多线程的才能使用机器的多个内核。

这意味着程序的实际代码必须知道线程并有效地使用它们。

您不能简单地要求程序在给定数量的线程上运行。

您必须使用诸如 pthread 之类的线程库来生成线程并在其上分配工作。

关于c++ - 在多核 (linux) 中运行进程的命令行参数是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14637771/

相关文章:

c++ - 指向成员函数错误的指针

android - 尝试稍等片刻,然后刷新适配器

iphone - iOS:在单独的线程中反序列化 JSON?

c++ - 具有不同模板参数的模板类的默认赋值运算符

c++ - C++ GUI 编程的建议

python - 在 linux 上使用 python 确定防火墙的存在

linux - 如何在一个文件中运行多个命令

c++ - 单个多对象卡尔曼滤波器与多个单对象卡尔曼滤波器(复数)

c++ - 如何在 Visual Studio Code 中为 C++ 启用 IntelliSense?

c++ - 服务器 UDP 函数 recvfrom