第一章 基础知识
1.1 并行计算
1.2 CUDA FORTRAN的入门程序
1.2.1 第一个CDUA FORTRAN程序
1.2.2 扩展到大型数组
1.2.3 扩展到多维数组
1.3 支持CUDA的硬件特性和限制
1.4 错误的处理
1.5 CUDA代码的编译
1.6 系统和环境管理
第二章 CUDA FORTRAN编程指导和语法参考
2.1 基本概念介绍
2.1.1 CUDA FORTRAN核函数
2.1.2 设备子程序中的预定义变量
2.1.3 线程块
2.1.4 存储体系
2.1.5 执行配置
2.2 Subroutine和function的新属性
2.2.1 Host subroutine and function
2.2.2 G10baI subroutine
2.2.3 Device subroutine和function
2.2.4 Device subprogram限制
2.3 变量修饰符
2.3.1 设备数据
2.3.2 常量数据
2.3.3 共享数据
2.3.4 形参value
2.3.5 pinned数组
2.4 CUDA FORTRAN模块
2.4.1 设备模块(Device module)
2.4.2 主机模块(Host module)
2.5 主机和设备空间的数据传输
2.5.1 使用赋值语句传输数据
2.5.2 使用表达式的隐性数据传输
2.5.3 使用runtime routine传输数据
2.6 异步并发执行
2.6.1 主机和设备并发执行
2.6.2 流的并发执行
2.7 Kernel循环指令
2.8 FORTRAN内置函数
第三章 代码性能测试
3.1 测量kernel的执行时间
3.1.1 主机到设备的同步和CPU计时器
3.1.2 应用CUDA event计时
3.1.3 命令行编译
3.2 指令、带宽及kernel延迟
3.3 存储带宽
3.3.1 理论带宽
3.3.2 有效带宽
3.3.3 有效带宽下的数据传输量
第四章 代码优化
4.1 主机和设备的数据传输
4.1.1 固定内存
4.1.2 应用cudaMemcpy()显式地传输数据
……
第五章 案例一:蒙特卡罗方法
第六章 案例二:有限差分法
第七章 案例三:非稳定温度场有限元法
附录
参考文献
展开