本书主要以分形图形为研究对象,介绍构筑并行/分布式系统的方法。书中的内容是燕山大学并行/分布式处理实验室近几年在并行计算和分布式系统研究方面的成果,主要目的是为国内从事并行计算和分布式系统研究的工作者提供一本实用的参考书。书中前半部分论述了分形图形的分类、特点、计算的复杂性和利用并行环境生成与处理分形图形的必要性。后半部分介绍了在PVM和Mn两种并行编程环境下定义并行平台的编译实现、分布式计算处理、图形的生成与输出等内容。书中给出了一些典型的设计实例和实例生成时的一些性能与并行参数分析。
本书具有理论深入,实用性强等特点,可作为有关专业教师、计算机科研人员与应用技术人员的业务参考书,也可以作为高等学校计算机专业本科生和研究生的参考书。
第1章 绪论
1.1 概述
1.2 分布式分形图形处理的研究内容
1.3 分布式分形图形处理的研究意义
1.4 分布式分形图形处理系统的定义
1.5 分布式分形图形处理的研究概况
1.6 分布式分形图形处理技术发展展望
第2章 分布式分形处理基础
2.1 并行处理的基本概念
2.2 分形图形及其生成算法
2.3 分形图形开发平台参数确定准则
2.4 本章小结
第3章 开发环境简介
3.1 Linux简介
3.2 GTK+简介
3.3 PVM系统分析
3.4 操作环境
3.5 本章小结
第4章 分形语言设计
4.1 定义
4.2 FDL语法说明
4.3 本章小结
第5章 软件设计
5.1 系统分析
5.2 总体设计
5.3 关键部分的详细设计
5.4 本章小结
第6章 系统实现
6.1 系统描述
6.2 系统总体说明
6.3 程序说明
6.4 实现各模块之间的接口
6.5 本章小结
第7章 绘制分形图形
7.1 使用16种颜色绘制分形图形的弊端
7.2 使用多种颜色绘制分形图形
7.3 本章小结
第8章 提高DFGGS的并行性
8.1 PVM自动分配任务策略的缺点
8.2 任务均衡分配的启发式搜索算法
8.3 一种提高DFGGS并行性的方案
8.4 本章小结
第9章 MPI和MPI程序设计
9.1 MPI简介
9.2 MPI程序设计
9.3 本章小结
第10章 Linux进程和进程间通信
10.1 Linux进程的环境
10.2 Linux进程控制
10.3 UNIX/Linux中的进程间通信
10.4 本章小结
第11章 MPI模块的设计与实现
11.1 PVM和MPI比较
11.2 MPI模块设计
11.3 性能分析
11.4 本章小结
第12章 分布式分形图形应用实例
12.1 配置和调试网络并行计算环境PVM
12.2 并行分布式处理matrix程序
12.3 经典Mandelbrot分形图形使用与未使用WHILE循环比较
12.4 其他分形图形程序生成实例
12.5 安装与配置MPI
附录A
A1 hello源程序代码清单
A2 matrix源程序代码清单
A3 Mandelbrot源程序代码清单
A4 其他公式变换
A5 本系统生成的一些分形图形的图例
参考文献
图形的分布式处理是20世纪80年代末、90年代初期发展起来的一项新技术,它是图形学和分布式系统相结合的产物。分形图形学是图形学的一个分支,将分形图形学与分布式系统结合的分形图形的分布式处理是目前的新兴技术。
燕山大学并行分布式处理实验室主要从事分布式处理、并行计算和集群计算方面的研究工作。该实验室在教育部骨干教师基金和河北省教委基金的资助下,从1999年开始对分形图形分布式处理技术进行系统研究, 并开发了分形图形分布式并行生成系统DFGGS(Distfibuted Fract~ Graphics Generation System)。
本书结合作者的研究工作介绍了在分形图形分布式处理方面的研究理论和实际应用技术,主要涉及分形图形分布式处理基础理论、分形图形分布式处理开发环境、分形图形分布式生成语言设计、分形图形分布式生成系统设计与实现,以及相关并行编程技术的改进等。
第1章—第3章从整体角度介绍了分形图形分布式处理技术的理论发展情况,包括分布式处理系统理论基础、分形图形生成算法、分形图形分布式系统生成参数开发准则及并行编程环境。比较国际上已发表的分形图形生成系统,并提出了一个平台的设计目标和思想。
第4章讲解了分形图形分布式生成语言FDL(Fractal Definition Language),本章以复动力分形图形为例,通过对复动力分形公式的分析提取共性特征并参照通用语言的功能,设计了适用于分布式并行处理的分形描述语言。
第5章-第6章描述了DFGGS的软件设计和系统实现,主要涉及PVM(Parallel Virtual Machine)环境下分形图形生成算法并行化实现的研究、解决并行编译、并行执行、任务的拆解、发送与接收等问题,以及分形图形分布式生成系统图形界面等方面的内容。
第7章—第8章首先阐述了分形图形生成中关键的着色处理,根据操作系统本身的显示机制,制定分形图形生成系统的调色板;其次分析了现有PVM在本系统使用中任务分配方面的弱点,提出了改进算法。
第9章—第11章介绍了Linux进程通信机制和另一并行编程环境MPI(Message Passing Interface)。比较PVM和MPI并行编程环境,并给出了MPI环境下分形图形生成的实现算法及系统模块设计。为系统的进一步扩展和用户的进一步开发提供了选择余地。
第12章介绍了系统安装配置方法及一些应用实例。
本书的目的是介绍一个运行在Linux环境下,分布式处理过程对用户透明、用户界面友好、速度快、能够解释分形公式以生成各种复杂分形图形的通用生成工具。希望本书的问世能够对那些迫切需要这方面参考资料的读者有所帮助。
在此,对参与本书工作的燕山大学并行分布式处理实验室全体人员、本书选用参考文献的著作者,特别是参与过本书内容研究工作的我的硕士研究生曹立强、阎镇、周永强、马隽、马梁等同学表示真诚的谢意。
由于水平有限,书中错误和不妥之处在所难免,恳请广大读者批评指正。