搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
基于GPU的多尺度离散模拟并行计算
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787030239426
  • 作      者:
    多相复杂系统国家重点实验室,多尺度离散模拟项目组著
  • 出 版 社 :
    科学出版社
  • 出版日期:
    2009
收藏
编辑推荐
  本书可供力学、物理、化学、过程工程,以至经济和社会等领域对复杂系统的计算机模拟及其高性能计算感兴趣的研究生、科研人员和工程技术人员参考。
展开
内容介绍
  本书介绍了多尺度离散模拟的基本思路、方法和不同应用领域,并就分子动力学模拟、复杂流动和多相流动模拟、数据图像分析等若干重点领域具体讨论了利用图形处理器(GPU)实现其多级并行计算的实施方案和编程技巧,书中对现有的GPU编程环境及其使用方法和注意事项等从应用开发人员的角度作了比较详细的阐述。
  本书可供力学、物理、化学、过程工程,以至经济和社会等领域对复杂系统的计算机模拟及其高性能计算感兴趣的研究生、科研人员和工程技术人员参考。
展开
精彩书摘
  第1章  CUDA使用初步
  1.1 GPU介绍
  GPU是英文graphic processing unit的缩写,汉语的意思就是图形处理器。早期的计算机也需要处理图形,但相对简单,多数工作都交由中央处理器(central pro—cessing unit,CPU)来完成。其实当时的业界也有一些图形处理产品,例如20世纪80年代的GE(geometry engine),但是其功能还是较弱,直到NVIDIA公司在1999年推出了具有标志意义的图形处理器GeForce256,GPU才真正开始了迅速的发展。到目前为止,GPU已经过了八代的发展,每一代都拥有比前一代更强的性能和更完善的可编程架构。第一代GPU(到1998年为止)包括NVIDIA的TNT2,ATI的Rage和3dfx的Vood003;第二代GPufl999—2000年)包括NVIDIA的GeForce256和GeForce2,ATl的RV200,S3的Savage3D;第三代GPU(2001年)包括NVIDIA的GeForce3和GeForce4 Ti,微软的Xbox,及ATl的R200;第四代GPU(2003年)包括NVIDIA的GeForce FX(具有CineFX架构),ATl的R300;第五代GPU(2004年)主要以NVIDIA的GeForce 6800为代表;第六代GPU(2006年)主要以NVIDIAGeForce 7800为代表;第七代GPU(2007年)主要以NVIDIA的GeForce 8800为代表;目前的第八代GPU(2008年)主要有NVIDIA的GeForce 200系列以及AMD的RV670、RV770等。GPU的计算能力也在过去10年间有了飞速的发展,基本上是平均每6个月就有性能翻倍的产品面市。同时,GPU的计算性能发展速度也大大快于CPU,如图1.1所示。
展开
目录

前言
第0章 引言
第1章 CUDA使用初步
1.1 GPU介绍
1.2 CUDA介绍
1.2.1 CUDA特性
1.2.2 CUDA编程模型
1.2.3 CUDA语法简单介绍

1.3 CUDA安装和使用
1.3.1 安装
1.3.2 配置
1.3.3 编译
1.3.4 执行

1.4 第一个CUDA程序——矩阵相加
1.4.1 CPU计算
1.4.2 改编成CUDA算法
1.4.3 CUDA程序代码matrixAdd.cn详细解释

1.5 调试和优化
1.5.1.调试查错
1.5.2 性能优化

第2章 基于CUDA的CT图像重建
2.1 CT介绍
2.2 CT扫描及重建原理
2.2.1 投影
2.2.2 傅里叶切片定理
2.2.3 滤波反投影(FBP)重建算法

2.3 FBP图像重建算法的CUDA实现
2.3.1 单GPU重建
2.3.2 多GPU重建
2.3.3 结果及性能
2.3.4 优化
2.3.5 重建图像的显示

2.4 总结

第3章 分子动力学模拟的GPU并行实现
3.1 建立适合GPU计算的分子动力学模拟算法
3.1.1 分子动力学模拟简介
3.1.2 单个GPU上的算法
3.1.3 多个GPU并行算法
3.1.4 多相分子动力学的GPU算法

3.2 GPU-MD算法的应用
3.2.1 单相流动——方腔流
3.2.2 多相流动

3.3 GPU性能发挥

第4章 基于GPU的原子间多体作用计算及其在材料领域的应用
4.1 材料计算领域的原子间多体相互作用模型
4.1.1 对势
4.1.2 多体相互作用势

4.2 模拟算法
4.2.1 原子初始生成与布置
4.2.2 时间步长积分方法
4.2.3 邻近粒子搜索算法
4.2.4 边界条件
4.2.5 对系统的控制方法
4.2.6 统计分析结果的提取
4.2.7 CPU上的算法
4.2.8 单GPU算法
4.2.9 多GPU并行计算算法

4.3 实例应用
4.3.1 单GPU计算实例
4.3.2 多GPU并行计算实例

4.4 性能分析
4.4.1 单GPU不同算法的比较
4.4.2 多GPU并行计算

4.5 一些GPU程序开发调试经验

第5章 长链分子分子动力学模拟的GPU实现
5.1 长链分子分子动力学模拟的常用模型和算法
5.2 算法的GPU实现
5.2.1 粒子信息的存储
5.2.2 邻居列表的建立
5.2.3 非成键力的计算
5.2.4 成键力的计算
5.2.5 迭代算法的选择

5.3 模拟体系和GPU程序性能
5.3.1 非成键力的计算
5.3.2 成键力的计算
5.3.3 迭代算法和网格的更新

第6章 颗粒流体系统宏观粒子模拟的GPU实现
6.1 宏观粒子方法(MaPM)
6.2 MaPM的算法实现
6.2.1 颗粒流体系统MaPM模拟在CPU上的单机实现
6.2.2 CPU上的并行实现
6.2.3 GPU上的单机实现
6.2.4 GPU上的并行实现

6.3 并行程序性能分析
6.4 体会与展望

第7章 基于GPU的格子玻尔兹曼方法计算
7.1 格子玻尔兹曼方法
7.1.1 LBM方法简介
7.1.2 LBM方法理论基础

7.2 格子玻尔兹曼方法在GPU上的实现
7.2.1 单GPU的LBM计算
7.2.2 多GPU的LBM计算

7.3 LBM在GPU上的计算实例及结果分析
7.3.1 LBM模拟多孔介质流动
7.3.2 GPU上LBM计算的性能分析

7.4 结语

第8章 其他非CPU编程
8.1 流计算平台的基本结构
8.1.1 流计算平台的硬件
8.1.2 流计算平台的软件

8.2 Brook+编程
8.2.1 Brook+程序的编译过程
8.2.2 Brook+程序的结构
8.2.3 Brook+中的数据类型
8.2.4 流和流操作
8.2.5 内核
8.2.6 注意事项

8.3 欧拉粒子体系模拟
8.3.1 CPU代码
8.3.2 GPU代码
结束语
参考文献
附录
附录A CUDAprofiler的使用与配置
附录B 符号说明
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证