• Python并行编程实战
21年品牌 40万+商家 超1.5亿件商品

Python并行编程实战

33.18 4.2折 79 全新

库存50件

四川成都
认证卖家担保交易快速发货售后保障

作者[意]Giancarlo Zaccone

出版社中国电力出版社有限责任公司

ISBN9787519850203

出版时间2020-11

装帧平装

开本16开

定价79元

货号10803633

上书时间2024-12-22

柏艺文库

已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
作者简介
[意]詹卡洛·扎克内(Giancarlo Zaccone),在科学和工业领域的研究项目管理方面已经有超过15年的经验。他是欧洲航空局(ESTEC)的一位软件和系统工程师,主要处理卫星导航系统的网络安全。Giancarlo拥有物理学硕士学位和科学计算高级硕士学位。Giancarlo有以下著作:《Python Parallel Programming Cookbook(第1版)》 《Getting Started with Tensor Flow 》《Deep Learning with Tensor Flow (第1版)》和《Deep Learning with Tensor Flow (第2版) 》。

目录
目录
前言
第1章 并行计算和Python入门 1
1.1 为什么需要并行计算?  1
1.2 费林分类法 2
1.2.1 单指令流单数据流 (SISD)  2
1.2.2 多指令流单数据流 (MISD)  3
1.2.3 单指令流多数据流 (SIMD)  4
1.2.4 多指令流多数据流 (MIMD) 4
1.3 内存组织 5
1.3.1 共享内存  6
1.3.2 分布式内存  7
1.3.3 大规模并行处理 (MPP)  8
1.3.4 工作站集群  8
1.3.5 异构体系结构  9
1.4 并行编程模型 9
1.4.1 共享内存模型 10
1.4.2 多线程模型  10
1.4.3 消息传递模型 10
1.4.4 数据并行模型 11
1.5 并行程序性能评价  13
1.5.1 加速比  14
1.5.2 效率  14
1.5.3 扩缩性  15
1.5.4 阿姆达尔定律 15
1.5.5 古斯塔夫森定律 15
1.6 Python介绍  16
1.6.1 帮助函数  16
1.6.2 语法  18
1.6.3 注释  19
1.6.4 赋值  19
1.6.5 数据类型  19
1.6.6 字符串  21
1.6.7 流控制  21
1.6.8 函数  23
1.6.9 类  24
1.6.10 异常  25
1.6.11 导入库  26
1.6.12 管理文件  26
1.6.13 列表推导  27
1.6.14 运行Python脚本 28
1.6.15 使用pip安装Python包  28
1.7 Python并行编程介绍  29
第2章 基于线程的并行 33
2.1 什么是线程?  34
2.2 Pythonthreading模块  35
2.3 定义一个线程  35
2.3.1 准备工作  35
2.3.2 实现过程  36
2.3.3 工作原理  36
2.3.4 相关内容  37
2.4 确定当前线程  37
2.4.1 准备工作  37
2.4.2 实现过程  37
2.4.3 工作原理            38
2.5 定义一个线程子类  39
2.5.1 准备工作  39
2.5.2 实现过程  39
2.5.3 工作原理  41
2.5.4 相关内容  42
2.6 使用锁的线程同步  42
2.6.1 准备工作  43
2.6.2 实现过程  43
2.6.3 工作原理  45
2.6.4 相关内容  46
2.7 使用RLock的线程同步  47
2.7.1 准备工作  47
2.7.2 实现过程  48
2.7.3 工作原理  49
2.7.4 相关内容  50
2.8 使用信号量的线程同步  51
2.8.1 准备工作  51
2.8.2 实现过程  51
2.8.3 工作原理  53
2.8.4 相关内容  54
2.9 使用条件的线程同步  54
2.9.1 准备工作  54
2.9.2 实现过程  54
2.9.3 工作原理  56
2.9.4 相关内容  58
2.10 使用事件的线程同步 58
2.10.1 准备工作  59
2.10.2 实现过程  59
2.10.3 工作原理  61
2.11 使用屏障的线程同步 62
2.11.1 准备工作  62
2.11.2 实现过程  62
2.11.3 工作原理  63
2.12 使用队列的线程通信 63
2.12.1 准备工作  64
2.12.2 实现过程  64
2.12.3 工作原理  65
2.12.4 相关内容  66
第3章 基于进程的并行 68
3.1 理解Python的multiprocessing模块  68
3.2 创建进程  69
3.2.1 准备工作  69
3.2.2 实现过程  69
3.2.3 工作原理  70
3.2.4 相关内容  71
3.2.5 参考资料  71
3.3 命名进程  72
3.3.1 准备工作  72
3.3.2 实现过程  72
3.3.3 工作原理  73
3.3.4 相关内容  73
3.3.5 参考资料  73
3.4 在后台运行进程  73
3.4.1 准备工作  74
3.4.2 实现过程  74
3.4.3 工作原理  75
3.4.4 参考资料  76
3.5 杀死进程  76
3.5.1 准备工作  76
3.5.2 实现过程  76
3.5.3 工作原理  77
3.5.4 参考资料  78
3.6 子类中定义进程  78
3.6.1 准备工作  78
3.6.2 实现过程  78
3.6.3 工作原理  79
3.6.4 相关内容  80
3.6.5 参考资料  80
3.7 使用队列交换数据  80
3.7.1 准备工作  80
3.7.2 实现过程  80
3.7.3 工作原理  82
3.7.4 相关内容  83
3.7.5 参考资料  84
3.8 使用管道交换对象  84
3.8.1 准备工作  84
3.8.2 实现过程  84
3.8.3 工作原理  86
3.8.4 相关内容  87
3.8.5 参考资料            87
3.9 同步进程  87
3.9.1 准备工作  87
3.9.2 实现过程  87
3.9.3 工作原理  89
3.9.4 相关内容  89
3.9.5 参考资料  89
3.10 使用进程池 90
3.10.1 准备工作  90
3.10.2 实现过程  91
3.10.3 工作原理  91
3.10.4 相关内容  92
3.10.5 参考资料  93
第4章 消息传递 94
4.1 技术需求  94
4.2 理解 MPI结构 95
4.3 使用mpi4pyPython模块  96
4.3.1 实现过程  96
4.3.2 工作原理  97
4.3.3 相关内容  98
4.3.4 参考资料  98
4.4 实现点对点通信  98
4.4.1 实现过程  99
4.4.2 工作原理  100
4.4.3 相关内容  101
4.4.4 参考资料  102
4.5 避免死锁问题 102
4.5.1 实          现过程  102
4.5.2 工作原理  103
4.5.3 相关内容  105
4.5.4 参考资料  106
4.6 使用广播的聚合通信 106
4.6.1 准备工作  107
4.6.2 实现过程  107
4.6.3 工作原理  107
4.6.4 相关内容  109
4.6.5 参考资料  109
4.7 使用scatter函数的聚合通信  109
4.7.1 实现过程  109
4.7.2 工作原理  110
4.7.3 相关内容  111
4.7.4 参考资料  112
4.8 使用gather函数的聚合通信  112
4.8.1 准备工作  112
4.8.2 实现过程  112
4.8.3 工作原理  113
4.8.4 相关内容  113
4.8.5 参考资料  114
4.9 使用Alltoall的聚合通信  114
4.9.1 实现过程  114
4.9.2 工作原理  114
4.9.3 相关内容  115
4.9.4 参考资料  116
4.10 归约操作  116
4.10.1 准备工作  116
4.10.2 实现过程  116
4.10.3 工作原理  117
4.10.4 相关内容  118
4.10.5 参考资料  119
4.11 优化通信  119
4.11.1 实现过程  119
4.11.2 工作原理  121
4.11.3 相关内容  123
4.11.4 参考资料  124
第5章 异步编程  125
5.1 使用concurrent.futuresPython模块 125
5.1.1 准备工作  126
5.1.2 实现过程  126
5.1.3 工作原理  128
5.1.4 相关内容  130
5.1.5 参考资料  130
5.2 使用asyncio管理事件循环  130
5.2.1 理解事件循环  131
5.2.2 实现过程  132
5.2.3 工作原理  134
5.2.4 相关内容  135
5.2.5 参考资料  136
5.3 使用asyncio处理协程  136
5.3.1 准备工作  136
5.3.2 实现过程  137
5.3.3 工作原理  3_x005ff4139
5.3.4 相关内容  141
5.3.5 参考资料  141
5.4 使用asyncio管理任务  141
5.4.1 实现过程  142
5.4.2 工作原理  143
5.4.3 相关内容  145
5.4.4 参考资料  145
5.5 处理asyncio和future  145
5.5.1 准备工作  145
5.5.2 实现过程  146
5.5.3 工作原理  147
5.5.4 相关内容  148
5.5.5 参考资料  149
第6章 分布式Python 150
6.1 分布式计算介绍 150
6.2 分布式应用的类型 151
6.2.1 客户-服务器应用  151
6.2.2 多层应用  153
6.3 使用Pythonsocket模块  153
6.3.1 准备工作  154
6.3.2 实现过程  154
6.3.3 工作原理  156
6.3.4 相关内容  157
6.3.5 参考资料  159
6.4 使用Celery的分布式任务管理  160
6.4.1 准备工作  160
6.4.2 实现过程  161
6.4.3 工作原理  162
6.4.4 相关内容  164
6.4.5 参考资料  166
6.5 使用Pyro4实现RMI  167
6.5.1 准备工作  167
6.5.2 实现过程  167
6.5.3 工作原理  169
6.5.4 相关内容  170
6.5.5 参考资料  173
第7章 云计算  174
7.1 什么是云计算?  174
7.2 理解云计算架构 176
7.2.1 服务模型  176
7.2.2 发布模型  177
7.2.3 云计算平台  178
7.3 用PythonAnywhere开发 Web应用  179
7.3.1 准备工作  179
7.3.2 实现过程  180
7.3.3 工作原理  185
7.3.4 相关内容  186
7.3.5 参考资料  187
7.4 Docker化Python应用  187
7.4.1 准备工作  188
7.4.2 实现过程  189
7.4.3 工作原理  190
7.4.4 相关内容            
7.4.5 参考资料  192
7.5 无服务器计算介绍 192
7.5.1 准备工作  193
7.5.2 实现过程  193
7.5.3 工作原理  196
7.5.4 相关内容  199
7.5.5 参考资料  200
第8章 异构计算  201
8.1 理解异构计算 201
8.2 理解GPU架构  202
8.3 理解GPU编程  203
8.3.1 CUDA  203
8.3.2 OpenCL  203
8.4 处理PyCUDA  204
8.4.1 准备工作  204
8.4.2 实现过程  204
8.4.3 工作原理  205
8.4.4 相关内容  205
8.4.5 参考资料  206
8.5 使用PyCUDA的异构编程  206
8.5.1 实现过程  207
8.5.2 工作原理  209
8.5.3 相关内容  211
8.5.4 参考资料  211
8.6 使用实现内存管理 211
8.6.1 准备工作  212
8.6.2 实现过程         
8.6.3 工作原理  215
8.6.4 相关内容  218
8.6.5 参考资料  218
8.7 PyOpenCL介绍 219
8.7.1 准备工作  219
8.7.2 实现过程  219
8.7.3 工作原理  221
8.7.4 相关内容  222
8.7.5 参考资料  223
8.8 使用PyOpenCL构建应用  223
8.8.1 实现过程  223
8.8.2 工作原理  226
8.8.3 相关内容  228
8.8.4 参考资料  228
8.9 使用PyOpenCL处理元素级表达式  229
8.9.1 准备工作  229
8.9.2 实现过程  229
8.9.3 工作原理  230
8.9.4 相关内容  232
8.9.5 参考资料  233
8.10 评价PyOpenCL应用  233
8.10.1 准备工作  233
8.10.2 实现过程  233
8.10.3 工作原理  235
8.10.4 相关内容  237
8.10.5 参考资料  238
8.11 使用Numba的GPU编程  238
8.11.1 准备工作  239
8.11.2 实现过程  241
8.11.3 工作原理  242
8.11.4 相关内容  243
8.11.5 参考资料  245
第9章 Python调试和测试  246
9.1 什么是调试?  246
9.2 什么是软件测试?  247
9.3 使用 WinpdbReborn调试  248
9.3.1 准备工作  248
9.3.2 实现过程  248
9.3.3 工作原理  252
9.3.4 相关内容  254
9.3.5 参考资料  255
9.4 与pdb交互  255
9.4.1 准备工作  255
9.4.2 实现过程  257
9.4.3 工作原理  258
9.4.4 相关内容  258
9.4.5 参考资料  259
9.5 实现rpdb调试  259
9.5.1 准备工作  259
9.5.2 实现过程  261
9.5.3 工作原理  263
9.5.4 相关内容  264
9.5.5 参考资料  265
9.6 处理unittest 265
9.6.1 准备工作  266
9.6.2 实现过程  266
9.6.3 工作原理  267
9.6.4 相关内容  269
9.6.5 参考资料  270
9.7 使用nose测试应用  270
9.7.1 准备工作  270
9.7.2 实现过程  271
9.7.3 工作原理  272
9.7.4 相关内容  272
9.7.5 参考资料  273

内容摘要
本书介绍了并行编程体系结构,主要内容包括基于线程和进程并行性的基本技巧;利用threading和multiprocessing等构建并行应用的基本工具了解互斥锁、信号量、锁以及队列;通过学习MPI编程技巧.使用mpi4py的基本消息传递技术实现进程同步;掌握异步编程并使用PyCUDA和PyOpenCL框架发挥GPU的强大功能;了解如何用Celery设计分布式计算系统以及如何用PythonAnywhere、Docker和无服务器应用在云上部署Python应用。本书可以帮助读者快速准确地掌握并行编程技能并在项目中具体应用,读完这本书,你将能够自信地用Python构建并发高性能应用。

精彩内容
本书介绍了并行编程体系结构,主要内容包括基于线程和进程并行性的基本技巧;利用threading和multiprocessing等构建并行应用的基本工具了解互斥锁、信号量、锁以及队列;通过学习MPI编程技巧.使用mpi4py的基本消息传递技术实现进程同步;掌握异步编程并使用PyCUDA和PyOpenCL框架发挥GPU的强大功能;了解如何用Celery设计分布式计算系统以及如何用PythonAnywhere、Docker和无服务器应用在云上部署Python应用。本书可以帮助读者快速准确地掌握并行编程技能并在项目中具体应用,读完这本书,你将能够自信地用Python构建并发高性能应用。

媒体评论
本书介绍了Python 3.7中构建有效并发应用的前沿技术,还介绍了并行编程体系结构,提供了基于线程和基于进程的并行性的基本技巧。你会学习利用threading和multiprocessing模块了解互斥锁、信号量、锁以及队列,所有这些都是构建并行应用的基本工具。MPI编程技巧会帮助你使用mpi4py的基本消息传递技术实现进程同步。另外,你会了解异步编程以及如何使用PyCUDA和PyOpenCL框架发挥GPU的强大功能。最后,你会了解如何用Celery设计分布式计算系统以及如何用PythonAnywhere、Docker和无服务器应用在云上部署Python应用。
读完这本书,你将能够自信地用Python构建并发高性能应用。

本书从原理到实践系统的对并行编程技术进行分析,利用大量实例演示每一个知识点的运用方式。

   相关推荐   

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP