MATLAB分布式并行计算环境(2)
MATLAB分布式并行计算环境
l 高级别的结构,如分布式数组、并行算法,以及消息传递函数,可在多个处理器上处理大型的数据集
l 可在一个多核桌面上本地运行四个worker (至R2009a,4.1版可达8个)
l 与MA TLAB Distributed Computing Server 集成,可用于使用调度程序或任意数量worker 的基于集群的应用程序
l 提供交互模式和批量执行模式
1. 在MATLAB 中编写并行应用程序
Parallel Computing Toolbox(并行计算工具箱)提供了多种高级编程结构,利用此工具箱,可对串行MA TLAB 代码进行转换,使之在数个worker(独立于MA TLAB 客户端运行的MA TLAB 计算引擎)上并行运行。这些worker 既可在桌面上运行(工具箱在桌面上可本地运行多达四个worker),也可在集群上运行(使用MA TLAB Distributed Computing Server)。这样的结构可降低在MA TLAB 客户端与worker 之间、以及各worker 之间管理计算与数据的协调与分发的复杂性,从而简化并行代码开发。此外,可使用关键词,例如parfor(并行for 循环)和spmd(单程序多数据)语句来注释MA TLAB 代码,从而可以
探究算法的各个区段所提供的任务和数据并行机制。
MA TLAB 池(Pool)和并行命令窗口(pmode) 支持交互执行,这样,在设置耗时较长的运行或脱机任务前,可以先测试应用程序的某些区段。即使没有worker,这些结构仍能够运作,这样,只需维护单个代码版本,即可确保串行执行和并行执行。
2. 执行任务并行的算法
通过将Monte Carlo 仿真和其他粗粒度或密集并行问题组织为独立的任务(工作单元),即可实现其并行化。工具箱中的并行for 循环提供了一种在多个MA TLAB worker 间分配任务的方式。使用该循环,可以将独立的循环迭代自动分配给多个MA TLAB worker。parfor 结构管理着MA TLAB 客户端会话与worker 之间的数据和代码传输。它会自动检测是否有worker,如果没有,则会还原为串行方式。
此外,还可以将任务编写为MA TLAB 函数或MA TLAB 脚本。如果指定为函数,可以
通过在工具箱中处理任务和作业对象来执行任务;如果指定为脚本,则可以使用批处理功能。
MATLAB分布式并行计算环境
3. 执行数据并行的算法
对于需要大型数据集处理的MA TLAB 算法,Parallel Computing Toolbox 提供了分布式数组、并行函数,以及使用spmd 关键词注释代码区段的功能,可用于在数个worker 上并行执行。这些并行结构可处理worker 间通信,并协调后台的并行计算。
使用分布式数组,可以在参与并行计算的所有worker 间分配任何数据类型的矩阵。利用并行函数,可以执行多种数学运算,例如索引、矩阵相乘、分解,以及在分布式数组上直接转换。此外,工具箱还提供了150 个多个用于分布式数组的函数,包括基于ScaLAPACK 的线性代数例程。
使用spmd 语句和分布式数组编程。利用分布式数组和并行算法,仅需对代码做最少的更改即可创建数据并行的MA TLAB 程序,且无需使用MPI 编程。
MATLAB分布式并行计算环境
如要对并行方案进行显式的、细粒度的控制,同时还需要明确管理 worker 间的协调,通过 Parallel Computing Toolbox 函数可访问基于 MPI 标准(MPICH2) 的消息传递例程,包括用于发送、接收、广播、阻挡、以及探测操作的函数。
使用 spmd 结构,可以指定代码的区段以在所有参与并行计算的 worker 间并行运行。程序执行过程中,该结构会自动将在其内部使用的数据和代码传输给worker,并在执行完毕后将结果返回给 MATLAB 客户端会话。分布式数组、并行函数以及消息传递函数可以在 spmd 结构内部使用。在没有 worker 的情况下,MATLAB 会串行执行 spmd 语句。
4. 在交互式并行环境中工作
Parallel Computing Toolbox(并行计算工具箱)扩展了MA TLAB 交互式环境,可以使用熟悉的MA TLAB 环境来建立原型、开发任务并行和数据并行应用程序。matlabpool 命令可为分配一组专用的计算资源。它可将您的MA TLAB 会话连接至一个MA TLAB worker 池,这些worker 既可在桌面上本地运行,又可在计算机集群上运行。此外,它还可以建立一个交互式并行执行环境。在该环境中,用户可以从MA TLAB 命令提示符执行并行的MA TLAB 代码,并且在计算结束后立即得到结果。在该环境中,并行的编程结构(例如parfor 和spmd)会自动检测是否有worker,并在MA TLAB 会话与worker 之间分发计算和数据。
并行命令窗口(pmode) 是MA TLAB 命令窗口的扩展,可建立一个数据并行的执行环境,在该环境中,用户可以使用分布式数组、关联的并行函数,以及消息传递函数。在并行提示符下发出的命令会在所有参与的worker 上同时执行,并立即返回结果,这样,用户便可以更好地在每个步骤追踪应用程序在整个多处理器系统中的行为。此外,还可以将命令收集到
MATLAB分布式并行计算环境
MA TLAB 函数中,并将其提交用以脱机执行。
5. 在批处理环境中工作
利用Parallel Computing Toolbox(并行计算工具箱),用户可以使用批处理环境来脱机执行程序,从而在执行大型MA TLAB 和Simulink 应用程序时,自如地将MA TLAB 客户端会话用于其他活动。等待应用程序执行并返回结果时,用户也可以关闭MA TLAB 客户端会话。
利用批处理功能,可脱机执行MA TLAB 脚本。它提供了一种在MA TLAB 客户端和worker 工作区之间传输数据的机制,免除了在多个工作区分别管理数据的需要。利用Configurations Manager(配置管理器),可将程序执行导向使用四个本地worker 的工作站,或使用任何scheduler 和任意数量worker 的集群。
此外,该工具箱还提供了作业和任务对象。这些对象提供了一种较低级但更通用的机制,用以在批处理环境中执行并行MA TLAB 应用程序。批处理函数以及作业和任务对象都可用来减少执行串行MA TLAB 程序时,从桌面MA TLAB 会话向worker 传输数据的负载。
3.2.2 分布式计算引擎(服务器)(MDCE/S)
MA TLAB Distributed Computing Server可以使并行计算工具箱应用程序得到扩展,从而可以使用运行在任意数量计算机上的任意数量的worker。MA TLAB Distributed Computing Server还支持交互式和批处理工作流。此外,使用Parallel Computing Toolbox 函数的MA TLAB 应用程序还可利用MA TLAB Compiler(MA TLAB 编译器)编入独立的可执行程序和共享软件组件,以进行免费特许分发。这些可执行应用程序和共享库可以连接至MA TLAB Distributed Computing Server的worker,并在计算机集群上执行MA TLAB同时计算,加快大型作业执行速度,节省运行时间。
MA TLAB Distributed Computing Server 支持多个调度程序:MathWorks 作业管理器
MATLAB分布式并行计算环境
(随产品提供)或任何其他第三方调度程序,例如Platform LSF、Microsoft Windows Compute Cluster Server(CCS)、Altair PBS Pro,以及TORQUE。
使用工具箱中的Configurations Manager(配置管理器),可以维护指定的设置,例如调度程序类型、路径设置,以及集群使用政策。通常,仅需更改配置名称即可在集群间或调度程序间切换。
MA TLAB Distributed Computing Server 会在应用程序运行时在基于用户配置文件的集群上动态启用所需的许可证。这样,管理员便只需在集群上管理一个服务器许可证,而无需针对每位集群用户在集群上管理单独的工具箱和模块集许可 …… 此处隐藏:2436字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [专业资料]《蜜蜂之家》教学反思
- [专业资料]过去分词作定语和表语1
- [专业资料]苏州工业园区住房公积金贷款申请表
- [专业资料]保安管理制度及处罚条例细则
- [专业资料]2018年中国工程咨询市场发展现状调研及
- [专业资料]2015年电大本科《学前教育科研方法》期
- [专业资料]数字信号处理实验 matlab版 离散傅里叶
- [专业资料]“十三五”重点项目-虎杖白藜芦醇及功
- [专业资料]2015-2020年中国竹木工艺市场需求及投
- [专业资料]国际贸易理论与实务作业五:理论案例分
- [专业资料]财政部修订发布事业单位会计制度
- [专业资料]BCA蛋白浓度测定试剂盒(增强型)
- [专业资料]工程进度总计划横道图模板(通用版)
- [专业资料]七年级地理同步练习(天气与气候)
- [专业资料]X光安检机介绍火灾自动报警系统的组成
- [专业资料]衢州市人民政府办公室关于印发衢州市区
- [专业资料]经济全球化及其影响[1]
- [专业资料]质粒DNA限制性酶切图谱分析
- [专业资料]国家安全人民防线工作“六项”制度
- [专业资料]劳动力投入计划及保证措施
- 电子账册联网监管培训手册
- 人教版语文七年级上第1课《在山的那边
- 对我区担保行业发展现状的思考与建议
- 平面四边形网格自动生成方法研究
- 2016年党课学习心得体会范文
- 如何设置电脑定时关机
- 全球最美人妖排行榜新鲜出炉
- 社会实践调查报告及问卷
- Visual Basic习题集
- 《鱼我所欲也》课件2
- 浙江省会计从业资格考试试卷
- 全遥控数字音量控制的D 类功率放大器资
- 鞍钢宪法与后福特主义
- 电表的改装与校准实验报告(1)
- 2014年高考理科数学真题解析分类汇编:
- Windows 7 AIK 的使用
- 风电场全场停电事故应急处置方案
- 化工原理选填题题库(下)
- 关于产学研合作教育模式的学习与思考
- 西安先锋公馆项目前期定位报告




