首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使用matlab内核i7中的所有8个内核

无法使用matlab内核i7中的所有8个内核
EN

Stack Overflow用户
提问于 2017-01-12 19:01:00
回答 1查看 296关注 0票数 3

当我执行的时候

代码语言:javascript
复制
matlabpool open 4;

一切都正常工作,但是当我尝试执行

代码语言:javascript
复制
matlabpool open 8;

错误立即发生。我读过关于超线程的文章,我知道8个内核中有4个是虚拟的。是否意味着我不能有效地使用所有8个内核

代码语言:javascript
复制
parfor loop 

在Matlab中?

例如,我有8个类似的独立任务。

我可以在python或C#/C++中使用所有8个内核,加速速度快8倍吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-12 22:05:47

默认情况下,MATLAB使用物理核心的数量,而不是机器上的超线程核心的数量,因为超线程最终仍然共享相同的物理CPU资源。在MATLAB Answers上的这篇文章中,有关于使用超线程可能/可能没有好处的特定情况的更多信息

如果要使用8个工作进程,则需要修改'local'配置的NumWorkers属性

代码语言:javascript
复制
cluster = parcluster('local');
cluster.NumWorkers = 8;
saveProfile(cluster);

或者,您可以设置用于maxNumCompThreads的最大计算线程数

代码语言:javascript
复制
maxNumCompThreads(8)
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41611447

复制
相关文章

相似问题

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