定 价:¥79.00
作 者: | [意] 詹卡洛·扎克内 著 |
出版社: | 中国电力出版社 |
丛编项: | |
标 签: | 暂缺 |
ISBN: | 9787519850203 | 出版时间: | 2020-12-01 | 包装: | 平装 |
开本: | 16开 | 页数: | 300 | 字数: |
目录
前言
第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