主要内容

本页采用了机器翻译。点击此处可查看最新英文版本。

start

开始收集并行池活动监控数据

自 R2025a 起

    说明

    start(monitor) 使用 ActivityMonitor 对象 monitor 开始收集池活动监控数据。

    使用 start 函数,使用先前已停止监控活动的 ActivityMonitor 对象重新启动监控池活动。

    如果 monitor 已经开始监控池活动,软件将丢弃任何已收集的结果。

    示例

    示例

    全部折叠

    使用集群配置文件 myCluster 创建一个并行池。

    pool = parpool("myCluster",4);
    Starting parallel pool (parpool) using the 'myCluster' profile ...
    Connected to parallel pool with 4 workers.
    

    创建一个 ActivityMonitor 对象来收集池的监控数据,但不要立即开始收集数据。

    monitor = parallel.pool.ActivityMonitor(pool,Start=false);

    在客户端创建一些大型数据,然后构建一个 Constant 对象、C,将数据只传输到池一次。

    data = rand(1000);
    C = parallel.pool.Constant(data);

    使用 ActivityMonitor 对象 monitor 开始收集池监控数据。

    start(monitor)

    运行多个 parfor 循环,访问 Constant 对象 C。为了提高效率,预先分配结果数组。

    x = eye(5);
    for ii = 1:5
        parfor jj = 1:5
            x(ii,jj) = C.Value(ii,jj);
        end
    end

    停止活动监控程序并获取在执行 parfor 循环过程中收集的监控结果。

    monitoringResults = stop(monitor);

    创建一个 ActivityMonitor 对象,开始收集池监控数据。在默认设置下,如果不存在默认配置文件,parallel.pool.ActivityMonitor 会自动使用默认配置文件启动交互式并行池。

    monitor = parallel.pool.ActivityMonitor;
    Starting parallel pool (parpool) using the 'Processes' profile ...
    Connected to parallel pool with 6 workers.
    

    提交多个 parfeval 计算以计算幻方矩阵。请等待所有任务完成。

    f(1:100) = parallel.Future;
    for idx = 1:100
        f(idx) = parfeval(@magic,1,idx);
    end
    wait(f);

    使用 stop 函数停止收集监控数据并获取监控结果。

    monitoringResults = stop(monitor);

    要重新开始收集监控数据,请使用 start 函数。

    start(monitor);

    输入参数

    全部折叠

    并行池活动监控程序,指定为 ActivityMonitor 对象。

    示例: monitor = parallel.pool.ActivityMonitor

    版本历史记录

    在 R2025a 中推出