Unix 多线程程序编译后只在单处理器上运行,如何进行故障排除?

Unix 多线程程序编译后只在单处理器上运行,如何进行故障排除?,unix,bioinformatics,Unix,Bioinformatics,我正在尝试运行一个应该在多个处理器上运行的编译程序。但是,对于相同的数据,这个程序有时并行运行,有时不使用相同的PBS脚本文件!。我怀疑某些计算节点出了问题,无法并行运行。我无法选择所需的计算节点。如果这是程序中的错误或是计算节点的问题,我如何进行故障排除? 根据系统管理员的建议,我正在使用ulimit-s100000,但这不会改变任何事情。此外,此程序不是仅在单个节点上运行的mpi程序,具有多个处理器。 我运行的代码如下所示: 谢谢你提供的任何建议。我将非常感谢你的帮助! 附言:我没有sudo

我正在尝试运行一个应该在多个处理器上运行的编译程序。但是,对于相同的数据,这个程序有时并行运行,有时不使用相同的PBS脚本文件!。我怀疑某些计算节点出了问题,无法并行运行。我无法选择所需的计算节点。如果这是程序中的错误或是计算节点的问题,我如何进行故障排除? 根据系统管理员的建议,我正在使用ulimit-s100000,但这不会改变任何事情。此外,此程序不是仅在单个节点上运行的mpi程序,具有多个处理器。 我运行的代码如下所示:

谢谢你提供的任何建议。我将非常感谢你的帮助! 附言:我没有sudo权限


编辑:我知道它应该使用多个处理器,因为当我使用SSH连接到节点并执行top-c时,我可以看到上面的命令有时一直运行着3200%的CPU,有时一直只有100%的CPU。这是所涉及的唯一步骤,该计划中没有其他子流程。另外,我使用的是HPC,我将作业提交给一个计算节点,每个节点有32个进程,512GB内存

你怎么知道它应该运行在多个处理器上?另外,您提到计算节点,这与多处理器不同。因此,请澄清您的问题。多线程并不意味着多进程。一个进程可能有多个线程。多线程单进程也可能具有CPU相关性。不要期望多线程单进程在多个CPU上运行。

quorum_error_correct_reads -q 68 \
--contaminant=/data004/software/GIF/packages/masurca/2.3.0rc1/bin/../share/adapter.jf \
-m 1 -s 1 -g 1 -a 3 --thread=32 -w 10 -e 3 \
quorum_mer_db.jf aa.renamed.fastq ab.renamed.fastq ac.renamed.fastq ad.renamed.fastq ae.renamed.fastq af.renamed.fastq ag.renamed.fastq \
--no-discard -o pe.cor --verbose