matlab多核计算设置1

2023-11-01

刚才试了一下,我使用的MATLAB2010可以多核运行的。需要多核多线程跑的算法,在之前要让matlab在本地建立4个“实验室”(我的机器是4核,所以是4个)
>> matlabpool local 4
Starting matlabpool using the 'local' configuration ... connected to 4 labs.
显示正在进行多核配置,一会说,连接到4个“实验室”。我理解就是在本地虚拟出4台可以运行matlab的工作站,这样用分布式计算工具箱可以进行并行计算(matlabpool这个命令好像是在并行计算工具箱里的)。观察windows任务管理器,可以发现一共有5个MATLAB.exe进程。其中一个占内存较多的,我理解是主控的,他基本不干活,只负责分配,进行计算时他的cpu占用率只有1~2%,剩下四个进程专门用来计算的,跑起来各占cpu 25%左右。看上去还是每个matlab进程单核运算,但是一下开4个进程,所以能把cpu用满。
如果后续还需要多核运算,就直接用parfor好了,不用每次都用matlabpool命令。那个配置一次就好。
算完了,不再跑了,临退出时关闭配置就行。
>> matlabpool close
Sending a stop signal to all the labs ... stopped.

下面是我一个M文件的程序,测测4核并行计算和单核计算的差距,很简单。
function testtime

runtimes = 1e9;
dummy1   = 0;
dummy2   = 0;

%matlabpool local 4

tic
%for x= 1:runtimes;
parfor x= 1:runtimes;
    dummy1 = dummy1 + x;
    dummy2 = 2 * x + 1;
end
toc

plot([1 2], [dummy1, dummy2]);

第一次用普通for语句,单核跑,6.09秒
>> testtime
Elapsed time is 6.094267 seconds.

第二次用parfor语句,4核跑,1.63秒
>> matlabpool local 4
Starting matlabpool using the 'local' configuration ... connected to 4 labs.
>> testtime
Elapsed time is 1.631350 seconds.
>> matlabpool close

加速比 6.09 / 1.63 = 3.736,将近4倍(还有开销吧),还比较可观。


原文地址:http://blog.sina.com.cn/s/blog_6fb22e5b0100pxie.html


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

matlab多核计算设置1 的相关文章

  • Simulink 仿真引擎如何工作?

    我想了解 Simulink 仿真引擎的工作原理 它是否使用离散事件模拟机制 那么如何处理连续时间 它是否依赖于基于静态循环的代码生成 或者 在第一个周期之前 它会计算出块的执行顺序 从不需要任何其他块输入的块开始 每个周期 它都会根据输入和
  • 如何找到在matlab中重复的矩阵的每一行的索引?

    我想找到矩阵中所有有重复项的行的索引 例如 A 1 2 3 4 1 2 3 4 2 3 4 5 1 2 3 4 6 5 4 3 要返回的向量将是 1 2 4 很多类似的问题建议使用unique函数 我已经尝试过 但我能得到的最接近我想要的功
  • 使用 MATLAB 进行线路跟踪

    我有一个图像 我想将其转换为逻辑图像 包括线条为黑色 背景为白色 当然 可以使用阈值方法来实现这一点 但我不想使用这种方式来做到这一点 我想通过使用线路跟踪方法或类似的方法来检测它 这是关于视网膜血管检测的 我找到了一个article ht
  • 两个向量之间的欧氏距离(单行矩阵)

    我有两个向量 单行矩阵 假设我们已经知道长度len A x1 x2 x3 x4 x5 B y1 y2 y3 y4 y5 计算它们之间的欧几里德距离最快的方法是什么 我的第一次尝试是 diff A B sum 0 for column 1 l
  • 有没有办法在matlab中进行隐式微分

    我经常使用 matlab 来帮助我解决数学问题 现在我正在寻找一种在 matlab 中进行隐式微分的方法 例如 我想区分y 3 sin x cos y exp x 0关于dy dx 我知道如何使用数学方法通常做到这一点 但我一直在努力寻找使
  • 如何告诉 mex 链接到 /usr/lib 中的 libstdc++.so.6 而不是 MATLAB 目录中的 libstdc++.so.6?

    现在 MATLAB 2012a 中的 mex 仅正式支持 gcc 4 4 6 但我想使用 gcc 4 7 风险自负 现在如果我直接用 mex 编译一些东西 它会抱怨 usr lib gcc i686 linux gnu 4 7 cc1plu
  • 黑白随机着色的六角格子

    我正在尝试绘制一个 10 000 x 10 000 随机半黑半白的六边形格子 我不知道如何将该格子的六边形随机填充为黑色和白色 这是我真正想要从这段代码中得到的示例 但我无法做到 https i stack imgur com RkdCw
  • matlab中的排列函数是如何工作的

    这是一个有点愚蠢的问题 但我似乎无法弄清楚排列在 matlab 中是如何工作的 以文档为例 A 1 2 3 4 permute A 2 1 ans 1 3 2 4 到底是怎么回事 这如何告诉 matlab 3 和 2 需要交换 哇 这是我迄
  • 检测植物图片中的所有分支

    我想知道有什么可以检测下图中的所有绿色树枝 目前我开始应用 Frangi 过滤器 options struct FrangiScaleRange 5 5 FrangiScaleRatio 1 FrangiBetaOne 1 FrangiBe
  • 如何找到平面和 3d 矩阵之间的交平面

    如果我有一堆图像并且尺寸如下 size M 256 256 124 我有 3 个点 它们的坐标是 coor a 100 100 124 coor b 256 156 0 coor c 156 256 0 如何创建 M 与这 3 个点定义的平
  • 访问图像的 Windows“标签”元数据字段

    我正在尝试进行一些图像处理 所以现在我正在尝试读取图像 exif 数据 有 2 个内置函数可用于读取图像的 exif 数据 问题是我想读取图像标签 exifread and imfinfo这两个函数都不显示图像标签 Is there any
  • 如何在 MATLAB 中绘制 3D 曲面图?

    我有一个像这样的数据集 0 1 0 2 0 3 0 4 1 10 11 12 13 2 11 12 13 14 3 12 13 14 15 4 13 14 15 16 我想在 matlab 中绘制 3D 曲面图 使列标题位于 y 轴 行标题
  • 了解 fminunc 参数和匿名函数、函数处理程序

    请多多包涵 问题在最后 我试图找出 fminunc 调用方式的差异 这个问题源于 Andrew Ng 在他的 Coursera 机器学习课程中的第 3 周材料 我正在回答这个问题 Matlab Andrew Ng 机器学习课程中 t cos
  • 从开始/结束索引列表创建向量化数组

    我有一个两列矩阵M包含一堆间隔的开始 结束索引 startInd EndInd 1 3 6 10 12 12 15 16 如何生成所有区间索引的向量 v 1 2 3 6 7 8 9 10 12 15 16 我正在使用循环执行上述操作 但我想
  • 在matlab中绘制给定区域内(两个圆之间)的向量场

    我想在 Matlab 中绘制下面的向量场 u cos x x 0 y y 0 v sin x x 0 y y 0 我可以在网格中轻松完成 例如 x 和 y 方向从 2 到 2 x 0 2 y 0 1 x y meshgrid 2 0 2 2
  • 检测数据集中线性行为的算法

    我已经发布了一个关于对数据集的一部分进行多项式拟合的算法 https stackoverflow com q 17595932 2320757前一段时间收到一些建议去做我想做的事 但我现在面临另一个问题 我尝试应用答案中建议的想法 我的目标
  • matlab中求和函数句柄

    Hi我试图对两个函数句柄求和 但它不起作用 例如 y1 x x x y2 x x x 3 x y3 y1 y2 我收到的错误是 对于 function handle 类型的输入参数 未定义函数或方法 plus 这只是一个小例子 实际上我实际
  • 从动态 Java 类路径导入 Java 类时出现 Matlab 编译器 MCC 错误

    我怎样才能得到mcc识别来自用户提供的 Java 库的导入 还是简单地忽略无法解析的导入 我有一个使用 Matlab 编译器构建的 Matlab 代码库 但构建正在中断 因为mcc遇到的时候会报错importMatlab 动态类路径上的 J
  • 在 C++ 中使用 matlab 结构(matlab 函数调用的返回值)(由 matlab 编译器生成的库)

    你好 我有一个相当简单的 matlab 函数 例如 function MYSTRUCT myfunc MYSTRUCT prop1 test MYSTRUCT prop2 foo MYSTRUCT prop3 42 end 我用 matla
  • 如何使用SIFT算法计算两幅图像的相似度?

    我已经用过SIFT http en wikipedia org wiki Scale invariant feature transform实施安德里亚 维达尔迪 http www vlfeat org overview sift html

随机推荐

  • 安装Anaconda/Python3.9/Tensorflow

    安装Anaconda Python3 9 Tensorflow 安装Anaconda 官网安装 开梯子 Download即可 打开下载好的安装包 按照提示 一路 Next 选择安装路径 这里官方并没有推荐自动配置环境变量 自动或手动配置均可
  • 【python量化】将极限学习机(Extreme Learning Machine)用于股票价格预测

    写在前面 下面的这篇文章首先将介绍极限学习机 Extreme Learning Machine ELM 的基本原理 然后通过python实现ELM 并将其用于股票价格预测当中 原代码在文末进行获取 1 极限学习机的基本原理 极限学习机 Ex
  • scrapy爬取链接

    近期因为工作需要 开始学习和写爬虫 学习到了很多内容 就整理了一下发上来 需求 这里爬虫的目的是检测网站的漏洞 因此希望做成类似于burpSuit的历史记录一样的 初步需求是简单地爬取网站的链接 去重 尝试绕过反爬虫 更进一步的是希望像bu
  • React既在constructor内部写state又在外部写了state的情况

    React既在constructor内部写state又在外部写了state的情况下 state到底是里面生效还是外面生效 查了一下 没有说这俩同时的帖子 所以自己验证的时候第一个想法是考虑代码的顺序 还有constructor的特殊性 看了
  • 今天在做微信分享功能的时候,遇到项目部署后出现 config:invalid url domain 弹窗提示的解决办法

    产生此错误的原因是微信公众号后台配置的微信安全网址跟当前页面的域名不一致导致的 要解决这种情况就需要在公众号的后台设置js接口安全域名 打开微信公众平台 把MP verify sfpa0ES1106ZRXnp txt 这个文件放到你的服务器
  • Codeforces 808G(KMP+DP)

    转移的时候要注意对于S 0 i 后缀的最长匹配 如果最长匹配为整个T串 那么就可以开始转移 转移时新出现的T可以从上一个完整的T的公共前缀的next转移加1过来 这就相当于用上一个T中的后缀作为当前T的前缀 不断求NEXT求出一个最大的转移
  • 蛇形矩阵/算法

    常见的蛇形矩阵 1 回性蛇形矩阵 2 上三角s型蛇形矩阵 3 完整s型蛇形矩阵 回型蛇形矩阵 输入数据 x是作为横坐标起点 y纵坐标起点 思路 四个方向右下左上 顺时针填进数字 每一次都可以用while循环一行一列依次填写 每次判断下要填的
  • Android ANR问题定位 实战

    在Android开发过程中 ANR问题可能是非常常见的一个问题 下面我分享一个亲身经历的ANR问题以及解决方法 1 发生ANR 必然会有log日志 在系统的data anr目录下 我们将所有的anr log日志pull出来 由于权限的原因
  • Lua实现定时器

    Lua实现定时器 An highlighted block local index 1 local delays local elasped 0 local function SetTimeout delay fn table insert
  • Dynamics CRM2011自定义框架解决方案

    Dynamics CRM2011自定义框架解决方案 解决方案文件下载 一 目的 许多客户习惯之前系统自定义开发的页面 操作习惯或界面风格 但使用了Dynamics CRM2011后只能使用产品自带的风格 为解决此类问题提供了此解决方案 在C
  • 阿里巴巴为什么不用 ZooKeeper 做服务发现?

    转载自 https developer aliyun com article 601745 历史的迷思 站在未来的路口 回望历史的迷途 常常会很有意思 因为我们会不经意地兴起疯狂的念头 例如如果当年某事提前发生了 而另外一件事又没有发生会怎
  • 面向对象的程序设计思想

    面向对象是当今主流的一种程序设计理念和设计规范 它取代了早期的 结构化 过程设计开发技术 主张一切皆为对象 程序以人的思维模式去解决问题 面向对像的程序是由类组成的 每个类包含对用户公开的特定功能部分和隐藏的实现部分 面向对象 Object
  • 人工智能练习题 + 知识点汇总(期末复习版)

    目录 第一章 人工智能绪论 第二章 知识与谓词 第三章 谓词与自然演绎推理 第四章 语义网表示法和框架表示法 第五章 归结原理 第六章 置换和合一 第七章 定理证明和问题求解 第八章 状态空间法和问题归约法 第九章 启发式搜索 第十章 与或
  • vite+element-plus项目基础搭建

    vite element plus项目基础搭建 1 引言 2 为什么是Vite 3 为什么是Element plus 4 项目搭建 5 参考文献 1 引言 其实本来不应该写这种CSDN比较多的博文的 主要是因为比较多 然后想解决问题的时候有
  • 设置ssh登录Linux服务器和git上ssh的使用

    设置ssh登录Linux服务器 前言 环境 配置 客户端 服务器端 可能碰到的问题 使用密钥命令登录依然提示输入密码 git如何使用ssh key 前言 我们在远程Linux服务器或者使用git的时候都需要输入密码登录后进行操作 在进行频繁
  • PaddleOCR对于手写符号识别,从零开始搭建(包括期间遇到的所有问题)

    需求 需要对手写图片进行识别 勾 叉 圈 识别成对于的 v x o 其他的符号识别成 e 搭建环境 win10 gpu模式 用cpu搭建过一版 但是cpu训练太慢 搭建cpu期间的问题比gpu问题的少 使用gpu的需要有一块N卡 英伟达 我
  • 非root用户安装 Python + MySQLdb 及使用

    资源不足时要充分发挥主观能动性 没有测试机的root权限 但想用python脚本对数据库进行压测 只能在自己的目录下安装 所以configure的 prefix以及后来install MySQLdb时的路径选项很重要 1 Python ta
  • Vue3中数组filter方法,使用reactive不更新界面,而使用ref定义更新界面

    Vue3中使用reactive定义数组 对其进行更改不更新界面 也检测不到变化 但数据变了 let todoList reactive JSON parse localStorage getItem todoList function cl
  • Initial job has not accepted any resources; check your cluster UI to ensure that workers are...

    在集群上运行spark应用程序时 出现 Initial job has not accepted any resources check your cluster UI to ensure that workers are register
  • matlab多核计算设置1

    刚才试了一下 我使用的MATLAB2010可以多核运行的 需要多核多线程跑的算法 在之前要让matlab在本地建立4个 实验室 我的机器是4核 所以是4个 gt gt matlabpool local 4 Starting matlabpo