图像缩略图

PAR进度监视器(进度条)v4

版本2.0.4(53 kB) 弗雷克萨克森
具有估计剩余时间的Matlab Parcon(并行)循环的进度监视器

1.4K下载

更新2019年9月5日

来自GitHub.

在github上查看许可证

一个非常Ressource高效的MATLAB类,用于在“阶段”过程中的进度监测,显示每个工作人员的剩余时间和可选进度。
它支持万博1manbetx分布式工人池(即不仅适用于本地池)。

用法:
%'numiterations'是一个整数,其中循环中的迭代总数。
%随意增加这甚至更高,看到其他进度监视器失败。
numiterations = 100000;

然后,构造一个parforprogressbar对象:
ppm = parforprogressbar(numiterations);

il id = 1:numitrations
%做一些并行计算
暂停(100 / numiterations);
%递增计数器以跟踪进度
ppm.increment();
结尾

%删除Paret循环完成时删除进度句柄(否则使更新进度可能不会停止的计时器)。
删除(ppm);

可选参数:
ppm = parforprogressbar(numiterations)构造一个parforprogressbar对象。
'numiterations'是一个整数,总数
循环中的迭代。

ppm = parforprogressbar(___,'showworkerprogress',true)将显示
所有工人的进度(默认值:假)。

ppm = parforprogressbar(___,'progressbarupdateperiod',1.5)将
每1.5秒更新ProgressBar(默认值:1.0秒)。

ppm = parforprogressbar(___,'标题','我的花哨冠军')将
在Progressbar上显示“我的花哨冠”。

ppm = parforprogressbar(___,'parpool','local')将会
使用“本地”配置文件启动并行池(Parpool)。

PPM = ParforProgressBar(___,'parpool',{profilename,poolsize,name,value})
将使用profileName配置文件启动并行池(Parpool)
池化工人和功能Parpool支持的任何名称值对。万博1manbetx

好处:
1.它是第一个进度监视器,也显示剩余时间。
2.这是第一个进度监视器,也显示每个工人的进度。
3.它从非常少量的迭代中缩放,以便在具有非常小的占地面积中任意大量的迭代。

缺点:
它确实减慢了计算。多少?这取决于您更新ProgressBar的频率(默认为1.0秒 - 但这是您可以调整的参数)。
更新计算机上的ProgressBar平均需要40毫秒。即,其中一个工人更新了ProgressBar(默认为每秒),每秒额外花费40毫秒= 4%。
但是你有X-1工人根本没有延迟(呼叫增量也有一个甚至数百万迭代的近似效果)。
2.它需要仪器控制工具箱

差异到60135-parim-progress-monitor-progress-progress-bar-v3:
1.使用[ProgressBar](https://de.mathwands.com/matlabcentral/fileexchange/6922-progressbar.)与剩下的时间很好。
2.完成MATLAB实施,没有Java。
3.每个增量,Dylan的基于Java的实现通过TCP连接到服务器,立即关闭连接而不发送任何数据。
服务器基于建立的连接递增计数器。
这是非常快的,但对于非常短的循环周期(如上所述)它会导致太多连接。
原始的ParforProgmonv3通过让用户手动选择STAPEIZE来解决此问题。然而,这是Comberome和非直观的。
此更新自动计算步骤,因此即使对于非常短的循环周期,也维持一个非常快速的执行时间。
4.而不是TCP套接字我们使用UDP插座,该UDP插座在施工上建立,并且在每个循环周期上未打开/关闭/关闭。
5.要跟踪每个工人的进度,每个工作人员通过UDP向服务器发送自己的进度。
6.小界面更改:我真的不关心进度条的窗口标题。这是现在是一个可选的参数,现在也由Matlab的输入解析器正确监控。

引用

褶皱saxen(2021)。PAR进度监视器(进度条)v4(https://github.com/fsaxen/parforprogmon),github。检索到

Matlab释放兼容性
用R2018B创建
兼容任何释放
平台兼容性
视窗 苹果系统 Linux.

社区宝藏狩猎

找到Matlab Central中的宝藏,并发现社区如何帮助您!

开始狩猎!
在此GitHub附加组件中查看或报告问题,访问github存储库
在此GitHub附加组件中查看或报告问题,访问github存储库