实验三parfor程序调试

实验三parfor程序调试
实验三parfor程序调试

实验三parfor程序的调试

一、实验目的

1.熟悉parfor程序的编写。

2.使用profiler工具分析并行程序的性能。

3.完成课堂练习。

二、实验课时:4课时

三、实验原理

第一部分:Matlab的parfor的基本使用

Parfor适用于:

1、大量的简单计算的循环;

2、大量或少量的复杂计算的循环。

不建议在少量的简单计算的循环中使用parfor,因为它本身也有计算的损耗。

首先,parfor的语法和普通的for语法的区别

图1 for和parfor语法结构

for 语句是按照i的序列顺序执行的,而parfor是由多个worker同时执行i为不同值的结果,如下图2图3所示:

图2 for语句运行结果

第二部分:并行程序的调试与分析

在matlab并行程序中,matlab提供了专门调试的并行工具profiler,利用并行profiler可以调试最常见的paralleled job包括SPMD并行结

构和paralleled job结构。

并行profiler工具是profile命令和profile viewer的扩展,可以帮助用户分析Matlab并行程序的性能。

1、查看mpiprofile状态:

启动matlab并行任务后,采用mpiprofile查看运行状态如下:

2、启动和关闭matlab并行程序分析器

采用mpiprofile on启动并行profile功能,此时并行profile开始记录程序执行数据。同样,采用mpiprofile off关闭此功能,此时并行profile停止记录程序执行数据。

3、采用mpiprofile viewer启动并行profile查看功能

图3 profile启动方式

图4 profile启动画面

图5 profile启动查看列表

图6 并行profile工具分析结果点击函数名可以查看函数的分析数据,如下图所示:

图7 函数分析

四、课堂练习

1.根据附件1的内容完成相应的parfor练习。

2.根据实验二中的练习题2的计算π的并行算法,使用profile工具进行

分析。

五、实验报告要求

简述实验目的;写出实验内容中解答各个题目所需要的命令及实验结果;简写实验总结与心得体会。

相关主题
相关文档
最新文档