首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >您能在低优先级的窗口上启动matlabpool/parpool吗?

您能在低优先级的窗口上启动matlabpool/parpool吗?
EN

Stack Overflow用户
提问于 2013-11-27 19:15:31
回答 2查看 970关注 0票数 1

在R2013a和Win 7 64位以及i5第3代cpu上,以下代码将启动一个由4名工作人员组成的池:

代码语言:javascript
复制
matlabpool 4

在流程中的任务管理器中可以看到:

现在,我知道如何在快捷方式的低优先级中启动MATLAB,我采用了这种方法,认为会继承的相同优先级,但是默认情况下他们会正常运行。

您知道如何以优先级启动匹配池吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-11-28 07:09:36

您可以在注释中结合@natan的建议,将此文件交换提交poolStartup.m文件结合使用。有关如何使用医生的更多信息,请参见poolStartup.m

票数 1
EN

Stack Overflow用户

发布于 2013-11-28 21:48:32

我在艾德里克的回答之后创建了一个特定于项目的艾德里克的回答脚本,这降低了工人的优先级。

启动池的语法如下:

代码语言:javascript
复制
matlabpool('open', 4, 'AttachedFiles',{'path\poolStartup.m'})

其中,poolStartup.m将包含对WMIC的system()调用,这是实用程序。有关使用和示例的更多信息,请阅读WMIC语法、概要WMIC.exe过程类感兴趣的官方文档。

我选择了以下对的调用,以降低优先级(按几行进行解释):

代码语言:javascript
复制
pid    = feature('getpid');
cmdstr = sprintf('wmic process where processid="%d" CALL setpriority 64', pid)
system(cmdstr)

有趣的部分是:

代码语言:javascript
复制
'wmic process where processid="PID" CALL setpriority 64'

几个注意事项:

  • 冲浪我经常发现条款where name="name.exe"。虽然调用where name="MATLAB.exe"会同时降低具有该名称的所有进程,即工人和客户端,但这可能不是期望的效果。例如,我可能希望保留客户端的正常优先级。
  • 每个工作人员都会调用众所周知的但函数,从而返回其特定的PID。
  • SetPriority类的Win32_Process方法将值64映射为“空闲”,并且没有任务管理器条目"low“的值。一个非常快速的检查显示,通过任务管理器将进程设置为“空闲”或“低”后,使用wmic查询的优先级是相同的。
  • 我避免了可编译的解决方案,因为绝大多数MATLAB用户仍然对那些东西有点不同(双关意)。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20251143

复制
相关文章

相似问题

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