书籍详情

基于MATLAB的GPU编程

基于MATLAB的GPU编程

作者:(希)尼古劳斯·普洛斯卡斯,(希)尼古劳斯·萨马拉斯

出版社:机械工业出版社

出版时间:2019-05-01

ISBN:9787111625858

定价:¥99.00

购买这本书可以去
内容简介
  《基于MATLAB的GPU编程》面向的读者群主要是想在保留MATLAB优点的同时利用GPU编程实现加速的科研人员、工程师或学生。书中对各种工具箱和函数做了清晰的梳理,不仅是对当前MATLAB文档的有益补充,而且提供了大量来自不同领域的应,用实例。《基于MATLAB的GPU编程》首先介绍支持GPU计算的MATLAB工具箱,这使得程序可以直接在GPU上运行,而不需要太多关于GPU编程的知识。接着介绍了MATLAB内置的GPU计算功能,包括在多核或不同计算机系统中利用GPU的方法。最后介绍了一些高阶主题。如在MATLAB中引入CUDA代码,以优化现有的GPU应用。《基于MATLAB的GPU编程》特点:●介绍支持GPU的MATLAB工具箱及函数,如并行计算工具箱、通信系统工具箱、神经网络工具箱以及统计和机器学习工具箱等。●讲解如何在不使用另一门编程语言(如CUDA C/C++或CUDA Fortran)的情况下加速计算密集型的MATLAB应用。●涵盖图像处理、信号处理、统计学等不同领域的实例,帮助读者快速理解GPU编程的关键概念。
作者简介
  尼古劳斯·普洛斯卡斯(Nikolaas Ploskas),希腊西马其顿大学信息与通信工程系助理教授,曾在美国卡内基一梅隆大学化学工程系从事博士后研究,研究方向包括运筹学、并行编程、GPU编程和决策支持系统。尼古劳斯·萨马拉斯(Nikolaos Samaras),希腊马其顿大学应用信息系教授,研究方向包括线性/非线性优化、网络优化以及高性能计算和GPU编程。张帆,北京化工大学信息科学与技术学院教授、博导,曾获北京高校青年英才计划资助。张帆博士从2008年开始从事GPU并行计算研究,201 4年获国家留学基金委全额资助,赴美国伊利诺伊大学香槟分校(UIUC)进行高性能计算方面的访问学习。长期致力于SAR数据模拟、高性能计算、图像处理等方面的研究,主持国家自然科学基金等科研项目20余项,发表学术论文70余篇。目前担任《IEEE Access》的副主编,以及《IEEETGRS》《雷达学报>等期刊的审稿人。倪军,北京化工大学信息科学与技术学院博士生,IEEE北京化工大学学生分会主席,研究方向包括极化SAR分类、高性能计算、人工智能。李征,北京化工大学信息科学与技术学院教授、博导,曾获教育部新世纪优秀人才支持计划资助。重点研究智能化软件工程,是中国基于搜索的软件工程研讨会(CSBSE)的发起人。单篇论文被引超过500次,主持多项国家和省部级项目。
目录
译者序
推荐序
前言
关于作者
第1章 引言 1
1.1 并行编程 1
1.1.1 并行计算导引 1
1.1.2 并行计算机的类别 4
1.1.3 并行计算机的内存架构 6
1.2 GPU编程 7
1.3 CUDA架构 7
1.4 为什么在MATLAB中进行GPU编程,什么情况下使用GPU编程 11
1.5 本书的组织结构 15
1.6 本章回顾 16
第2章 入门准备 17
2.1 硬件要求 17
2.2 软件要求 19
2.2.1 NVIDIA CUDA 工具包 19
2.2.2 MATLAB 26
2.3 本章回顾 29
第3章 并行计算工具箱 30
3.1 产品描述与目标 30
3.2 并行for循环(parfor) 32
3.3 单程序多数据(spmd) 43
3.4 分布式数组和共分布式数组 47
3.5 交互式并行开发(pmode) 52
3.6 GPU计算 53
3.7 集群和作业调度 53
3.8 本章回顾 57
第4章 基于MATLAB的GPU编程介绍 58
4.1 基于MATLAB的GPU编程特性 58
4.2 GPU数组 59
4.3 基于GPU的MATLAB内置函数 66
4.4 基于GPU的MATLAB逐元素操作 78
4.5 本章回顾 91
第5章 基于MATLAB工具箱的GPU编程 92
5.1 通信系统工具箱 92
5.2 图像处理工具箱 109
5.3 神经网络工具箱 112
5.4 相控阵系统工具箱 131
5.5 信号处理工具箱 136
5.6 统计和机器学习工具箱 137
5.7 本章回顾 142
第6章 多GPU并行 143
6.1 在指定GPU设备上定义和运行代码 143
6.2 多GPU运算举例 150
6.3 本章回顾 166
第7章 运行CUDA或PTX代码 168
7.1 CUDA C编程简介 168
7.2 在GPU上通过MATLAB运行CUDA或PTX代码的步骤 172
7.3 示例:向量加法 180
7.4 示例:矩阵乘法 182
7.5 本章回顾 185
第8章 包含CUDA代码的MATLAB MEX函数 186
8.1 MATLAB MEX文件简介 186
8.2 在GPU上执行MATLAB MEX函数的步骤 191
8.3 示例:向量加法 198
8.4 示例:矩阵乘法 201
8.5 本章回顾 204
第9章 CUDA加速库 205
9.1 引言 205
9.2 cuBLAS 206
9.3 cuFFT 210
9.4 cuRAND 213
9.5 cuSOLVER 216
9.6 cuSPARSE 219
9.7 NPP 223
9.8 Thrust 227
9.9 本章回顾 229
第10章 代码分析与GPU性能提升 230
10.1 MATLAB分析 230
10.2 CUDA分析 242
10.3 提升GPU性能的最佳实践 246
10.4 本章回顾 251
参考文献 252
猜您喜欢

读书导航