我在同一台机器上使用Linux处理两种不同的情况。这台机器有两个Xeon处理器,每个处理器都有8个内核和16个线程。
我有一个用OpenMP并行化的C++代码。在这种情况下,如果我使用所有线程(根据Linux内核计算为32个),是否会出现线程之间存在互相竞争的惩罚?也就是说,设置32个线程是此情景下的最佳配置吗?
我运行一定数量的进程(全部都是单线程),使用相同的二进制文件。基本上,我有一个脚本,利用不同的输入文件生成相同的二进制文件。在这种情况下,启动这些进程的最佳方法是什么,以避免过度消耗机器的性能?我认为,如果同时运行32个进程,会损害机器的性能。