首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Matlab产生的线程太多了

Matlab产生的线程太多了
EN

Stack Overflow用户
提问于 2021-02-03 02:33:07
回答 1查看 134关注 0票数 1

因此,我在Linux集群上运行,有许多计算节点可供选择。我得到了节点的独占使用权。批量提交。我遇到了限制线程数量的问题。我应该提一下,我有一个parfor循环。当我使用-singleCompThread选项启动matlab时,它似乎不起作用。

我提交到一个有2个核心的节点,使用前面提到的单线程选项,当我检查提交的作业时,它开始运行32个线程。一旦它到达parfor循环,它就有600多个线程。

我还想运行特定数量的多线程,而不是单线程。因此,我使用函数maxNumCompThreads( 32 );将线程限制为32个。我把这个函数放在文件的开头,也放在parfor循环中。然后,我将作业提交给一个具有32个核心的节点。它使用了超过32个线程。

有什么建议吗?我没有头绪。

EN

回答 1

Stack Overflow用户

发布于 2021-02-03 03:35:09

您很可能看到MATLAB正在使用非计算性线程。您可以尝试在-nojvm模式下启动MATLAB -这将进一步减少启动的非计算性线程的数量。不幸的是,该模式与parfor不兼容。另外,您使用的是哪个版本的MATLAB?(旧版本在更高的核心计数机器中产生大量JVM垃圾收集线程时会出现问题)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66015606

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档