问题标签 [parfor]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1144 浏览

matlab - 强制 parfor 尊重某些命令

我知道一些不确定性源于parfor的并行性质,但我不明白为什么它应该是完全随机的。有没有办法强制parfor尊重(至少松散地)循环的顺序?更具体地说,我希望在以下情况下:

当请求一个新任务(即在这种情况下是循环的新迭代)时,池中的每个工作人员都会受到尚未计算或影响工作人员的最低 i 的影响。

0 投票
1 回答
67 浏览

matlab - 在 MATLAB 中并行 for 循环对变量进行分类时出错

下面的代码M1是一个 4d 矩阵。我在运行此代码时收到的错误消息是:

parfor 中的变量this_volume无法分类。

据我了解,我只是将变量同时用作切片输入和输出变量,因为我正在为其中的一些元素赋值。我不确定这两个额外的 for 循环parfor是否是问题的原因。我将不胜感激任何建议。

0 投票
1 回答
259 浏览

matlab - Killing a script in the middle of a parfor: how to close open files?

When I interrupt a script in the middle of a parfor, some files are still opened by Matlab (e.g. I cannot delete them). I usually call flcose('all') to close all open files but it doesn't seem work in this case. What should I do?

0 投票
1 回答
306 浏览

batch-processing - 在 Matlab 中使用 HPC 的 parfor 更慢?

parfor在 Matlab 中使用时遇到问题:

- 在我的笔记本电脑中,使用具有12 个工作人员的本地集群配置文件,循环能够大大减少与循环相关的计算时间;parforfor

- 在同一台笔记本电脑上,但使用我部门的HPC 集群,有30 个工作人员,parfor循环比循环慢得多,for也比parfor使用本地集群有 12 个工作人员的循环慢得多。

我不明白为什么。要解决的迭代次数超过 1000 次,并且每次迭代都足够复杂,原则上可以从parfor循环中受益,正如我使用本地集群时所证明的那样。也许有些步骤我忘记了?要激活工人,我输入命令matlab pool open 30

0 投票
1 回答
628 浏览

matlab - 在 Matlab 中使用命令行验证集群配置文件

我需要在 Matlab 中验证集群配置文件。官方文档只是展示了如何使用 GUI 来做到这一点:

在此处输入图像描述

这很好,但我使用的一些 Matlab 是在没有 GUI 的操作系统上。如何仅使用命令行验证集群配置文件?

0 投票
3 回答
2016 浏览

out-of-memory - parfor 中的内存不足错误:杀死从设备,而不是主设备

当 a 中出现内存不足错误时parfor,有没有办法只杀死一个 Matlab 从站来释放一些内存而不是让整个脚本终止?

这是在 a 中发生内存不足错误时默认发生的情况parfor:脚本终止,如下面的屏幕截图所示。

在此处输入图像描述

我希望有一种方法可以杀死一个奴隶(即从中删除一个工人parpool)或停止使用它来释放尽可能多的内存:

在此处输入图像描述

0 投票
1 回答
3362 浏览

matlab - 如何在 MATLAB 的 PARFOR 循环外使用变量?

在 MATLAB 中,我有一个变量probaparfor loop如下所示:

MATLAB 表示:“临时变量 'proba' 在 PARFOR 循环之后使用,但它的值是不确定的”

我不明白如何纠正这个错误。我需要使用并行循环,并且需要proba在循环之后。这个怎么做?

0 投票
2 回答
1685 浏览

matlab - 如何在我的 matlab 脚本(临时变量)中使用“parfor”?

我有这个代码:

每次 'k' 迭代大约需要 20 分钟,因为函数 'test' 很重。如您所见,变量“结果”是一个单元矩阵,其中每一行包含函数的结果以及其他变量。

如果我将第一个“for循环”更改为“parfor”,结果首先是一个警告(警告:临时变量 Result 将在 parfor 循环的每次迭代开始时被清除),最后是一个错误(对已清除变量的引用结果)。

作为附加数据,两个循环可以并行运行,因为“测试”功能是独立的。问题是存储结果。

你会怎么做才能解决这个问题?

0 投票
1 回答
264 浏览

matlab - Parfor 切片变量导致 Matlab 崩溃

我试图证明代码可以并行运行,代码运行良好,除非我将数据分配给切片变量,我相信我尊重 Matlab 的 parfor 限制,实际上它对于一些 parfor 迭代运行顺利,但是某些点 Matlab 崩溃要求退出。

将值分配给“功能”时,问题出在最后一行(我也尝试过使用单元格但同样的问题):

有什么建议吗?我究竟做错了什么?(只是说代码可以在没有 parfor 的情况下工作)

提前致谢,

塞尔吉

0 投票
1 回答
528 浏览

bash - gnu 与 matlab parfor 循环并行

我正在使用 gnu 并行通过 bash 脚本运行 matlab 函数。matlab 函数将我使用 bash 中的 find 命令传入的单个文件作为输入:

matlab 函数使用 parfor 循环,我无法确定这是否真的有效,因为它似乎比我简单地在 matlab gui 中手动运行该函数要慢。我的意思是它肯定正在执行,但我担心因为 bash 脚本正在打开 8 个 matlab 实例,每个实例都运行一个 parfor 循环,也许他们实际上无法运行 parfors?任何人都可以帮助我至少确定这是否实际上并行运行正确?

哦,我目前有两个终端实例在不同的数据部分上运行脚本,所以我相信有 16 个 matlab 实例正在运行。

谢谢