高级搜索
使用帮助
热门搜索:2014考研 教材 励志 单片机 嵌入式 计算机 外语
图书专区:新书专区 精品图书专区 教材专区 考研考试专区
首 页网上书城服务专区下载专区试读频道增值服务关于我们贺银成2017医学类
免费注册
 
登录
 
论坛
本版图书分类
 
您的位置》首页>>网上书城
实战Matlab并行程序设计
定    价: ¥35.00
关 注 度: 0 库存状态: 未知 图书状态: 销售中
 
作    者: 刘 维
出版时间: 2012-03      
版    次: 1 印    次: 1 字    数: 480千字
开    本: 787×1092 1/16
纸    张: 1 ISBN: 978-7-5124-0597-4
 详细信息
 作者简介
 编辑推荐
 图书简介

本书对基于Matlab的并行程序设计的原理进行了深入的剖析,并结合各章给出的大量实例对基于Matlab的并行计算程序设计方法和技巧给出了详细的说明。

通过阅读和学习本书的内容,读者可以掌握基于多种平台(多核、多处理器、集群和GPU等),利用多项技术(Matlab并行计算工具箱、多线程MEX文件、Open MP和GPU等),学习理解Matlab并行程序设计的原理、方法和技巧。

全书共分10章:第1章为Matlab开发环境和程序设计基础;第2章为利用parfor对for循环进行并行;第3章为SPMD并行结构;第4章为其他Matlab并行结构;第5章为Matlab并行计算数据类型;第6章为Matlab通用并行程序设计;第7章为MDCE配置;第8章为创建多线程MEX文件;第9章为在Matlab中应用OpenMP进行并行计算;第10章为利用GPU并行执行Matlab程序。书中附录共包括三个部分,即MEX文件基础知识、用户配置项和Matlab并行计算常用概念说明。

书中所有的源代码均可在出版社网站的下载中心和Matlab中文论坛(www.iLoveMatlab.cn)中下载。除特别说明之外,其开发和编译环境均为Matlab 2010与Visual C++ 2010。本书的阅读对象包括大中专院校学生以及利用Matlab开发并行程序的人员。

 图书目录

第1章 Matlab开发环境和程序设计基础1

1.1本章导读1

1.2 Matlab环境1

1.2.1命令行窗口2

1.2.2代码编辑器3

1.2.3工作空间窗口5

1.2.4历史命令窗口5

1.2.5利用Matlab环境的界面操作7

1.2.6 Matlab帮助8

1.2.7代码输入提示9

1.3 Matlab语言基础10

1.3.1 Matlab脚本文件10

1.3.2 Matlab运算符与表达式11

1.3.3 Matlab函数14

1.3.4 Matlab的向量运算16

1.3.5 Matlab的程序控制19

1.3.6面向对象程序设计23

1.4 Matlab常用的数据类型27

1.4.1数值阵列28

1.4.2字符阵列30

1.4.3逻辑阵列31

1.4.4元组阵列32

1.4.5结构体阵列34

1.4.6函数句柄阵列36

1.5 Matlab常用数据显示函数38

1.5.1 figure窗口38

1.5.2绘制曲线39

1.5.3显示图像数据40

1.5.4显示三维曲面数据40

第2章 利用parfor对for循环进行并行43

2.1本章导读43

2.2循环和并行43

2.3 for循环的并行性43

2.4 parfor关键字44

2.5 Matlab client和worker44

2.6利用parfor并行for循环的基本原理44

2.7利用parfor并行for循环的基本步骤45

2.8配置Matlab并行计算池45

2.8.1 matlabpool命令45

2.8.2 matlabpool配置47

2.9第一个parfor程序及其与for循环的对比48

2.10 parfor循环比for循环快多少?50

2.10.1不启动matlabpool,直接执行parfor程序51

2.10.2打开matlabpool51

2.11 parfor和for的不同52

2.12数据通信的影响53

2.12.1数据通信较大的情况53

2.12.2 parfor和for的执行时间曲线55

2.12.3数据通信影响较小的情况57

2.13函数句柄在parfor并行程序分析中的应用60

2.14简约操作61

2.14.1简约操作的基本概念及并行原理61

2.14.2简约操作并行效率分析62

2.14.3简约操作的执行顺序66

2.14.4简约操作与简约变量的特征66

2.15 parfor循环中的主要变量类型71

2.15.1 parfor循环变量概述71

2.15.2循环变量73

2.15.3分段变量73

2.15.4广播变量78

2.15.5临时变量78

2.16 parfor程序设计需要考虑的其他问题81

2.16.1变量名称(函数优先)81

2.16.2显式使用变量82

2.16.3 parfor中使用函数句柄82

2.16.4在parfor中调用递归函数83

2.16.5 parfor性能考虑84

2.16.6 Matlab并行计算池中worker的位置85

第3章SPMD并行结构87

3.1本章导读87

3.2 SPMD87

3.3 SPMD的使用方法88

3.4 Matlab client与Matlab lab数据交互90

3.5 distributed或codistributed数值阵列93

3.5.1采用distributed对象创建分布式阵列94

3.5.2采用codistributed对象创建分布式阵列97

3.6在SPMD中获取job、task、lab、scheduler信息98

3.7利用SPMD并行结构解决计算密集型问题99

3.8利用SPMD并行结构解决数据密集型问题102

第4章 其他Matlab并行结构105

4.1本章导读105

4.2 fordrange105

4.2.1 fordrange应用于分布式阵列105

4.2.2 fordrange应用于非分布式阵列107

4.3利用pmode并行执行Matlab程序108

4.3.1启动pmode窗口108

4.3.2 pmode窗口界面109

4.3.3显示pmode数据110

4.3.4在集群中启动pmode窗口110

4.3.5通过pmode命令在各个lab和Matlab client之间传输数据111

4.4并行执行Matlab函数113

4.4.1同步模式113

4.4.2异步模式117

第5章Matlab并行计算数据类型118

5.1本章导读118

5.2 Matlab并行计算数据类型118

5.2.1同体变量119

5.2.2异体变量119

5.2.3独有变量120

5.2.4分布式变量121

5.3并行计算数据类型的转换方法122

5.3.1将同体变量转换为其他变量123

5.3.2将异体变量转换为其他变量124

5.3.3将独有变量转换为其他变量124

5.3.4将分布式变量转换为其他变量126

5.4 Matlab并行计算数据类型的应用127

5.4.1 parallel job中应用并行计算数据类型127

5.4.2 SPMD并行结构中应用并行计算数据类型130

5.5 Matlab分布式阵列131

5.5.1分布式阵列的特点131

5.5.2 Matlab如何分割分布式阵列?132

5.5.3 Matlab如何显示分布式阵列? 133

5.5.4在Matlab客户端创建分布式阵列137

5.5.5在parallel job或SPMD并行结构中创建分布式阵列139

5.5.6 codistributed对象操作分布式阵列144

5.5.7创建二维分割的Matlab分布式阵列148

5.5.8利用codistributor函数构造codistributor对象152

5.5.9支持分布式阵列的Matlab函数153

第6章Matlab通用并行程序设计154

6.1本章导读154

6.2概述154

6.3通用Matlab并行计算的基本概念155

6.4 Matlab并行计算架构156

6.5 job的状态及运行周期157

6.6开发调试并行程序基本流程158

6.7 distributed job的操作方法159

6.7.1 distributed job159

6.7.2创建distributed job的方法159

6.8 parallel job的操作方法162

6.8.1 parallel job162

6.8.2 distributed job和parallel job 的区别162

6.8.3创建parallel job的方法163

6.8.4避免死锁问题164

6.9 matlabpool job的操作方法166

6.10 batch job的操作方法168

6.11 job manager、worker、job和task对象的属性170

6.11.1 job manager对象170

6.11.2 job对象171

6.11.3 worker对象172

6.11.4 task对象173

6.12 worker对象的操作方法174

6.12.1启动worker174

6.12.2 findResource方法174

6.12.3操作worker对象的函数174

6.13 task对象的操作方法175

6.14 job对象的操作方法176

6.14.1利用createTask函数创建task176

6.14.2等待任务状态改变177

6.15 scheduler对象的操作方法178

6.15.1 findResource函数178

6.15.2利用scheduler对象创建和管理job的方法181

6.16 parallel job和SPMD结构中lab间数据通信问题185

6.17关于路径问题192

6.18利用Callback函数193

6.19并行程序调试和分析195

第7章MDCS配置202

7.1本章导读202

7.2 Matlab并行构架202

7.2.1 Matlab并行计算平台及拓扑结构202

7.2.2单集群节点202

7.2.3多集群节点203

7.3 MDCS的配置项203

7.4 MDCS操作指令及操作方法203

7.4.1 MDCS的命令及选项203

7.4.2 mdce命令操作实例204

7.4.3 nodestatus命令及选项205

7.4.4 nodestatus命令操作实例205

7.4.5 remotecopy命令及选项206

7.4.6采用remotemdce远程执行mdce指令207

7.4.7 startjobmanager208

7.4.8停止jobmanager运行208

7.4.9 startworker209

7.4.10 stopworker209

7.5管理job manager、集群节点和worker的方法210

7.5.1利用命令行管理210

7.5.2利用管理中心管理210

第8章 创建多线程MEX文件213

8.1本章导读213

8.2利用MEX文件在Matlab中创建并行应用213

8.3多线程MEX文件创建及调试过程213

第9章在Matlab中应用OpenMP进行并行计算220

9.1本章导读220

9.2O penMP及其工作原理220

9.3O penMP与Matlab221

9.4第一个OpenMP实例221

9.5利用OpenMP并行执行for循环223

9.6 OpenMP并行编译指令227

9.6.1引导parallel并行结构的指令和选项227

9.6.2引导worksharing并行结构的指令和选项233

第10章 利用GPU并行执行Matlab程序257

10.1本章导读257

10.2操作GPU设备257

10.3创建GPU数值阵列258

10.4操作GPU数据的函数260

10.5自定义支持GPU的函数262

10.6扩展Matlab对GPU支持的方法263

10.6.1直接编写GPU程序,通过Matlab调用264

10.6.2 GPU与C语言混合并编译为MEX268

附录A MEX文件基础知识272

A.1设置Matlab C/C++编译器用于编译MEX文件272

A.2 MEX文件的功能273

A.3 MEX文件与M文件的关系273

A.4 MEX文件实例273

A.5 MEX文件结构说明274

A.6编译MEX文件275

A.7采用C++创建MEX文件276

附录B Matlab并行计算配置项278

B.1 配置项的管理和创建工具278

B.2选择默认的配置项278

B.3打开配置项管理工具278

B.4创建新的配置项278

B.5配置项编辑工具279

B.6将配置项保存为文件279

B.7验证配置选项282

B.8操作配置项的命令283

附录C Matlab并行计算常用概念说明284

 图书前言
 相关资料
 相关书评
 
版权所有 2017 北京航空航天大学出版社 备案编号:京公海网安备110108001067号
地址:北京市海淀区学院路37号工程训练中心楼5层 邮政编码:100191
联系电话:86(10)82317024 传真:86(10)82328026 电子邮箱:bhpress@263.net
 
京ICP备05030743号