jquery treetable
jquery treetable
JAVA设计模式.chm
内容简介
有感于设计模式在日常开发中的重要性,同时笔者也自觉对设计模式小有心得,故笔者编写二十三种设计模式的简单例子、
并整理二十三种设计模式的理论部分,综合汇总成这份Java设计模式(疯狂Java联盟版),希望对大家有所帮助。
本份帮助文档主要是为了向读者介绍二十三种设计模式,包括模式的描述,适用性,模式的组成部分,并附带有简单的例
子和类图,目的是为了让读者了解二十三种设计模式,并能方便的查阅各种设计模式的用法及注意点。
所附的例子非常简单,慢慢的引导读者从浅到深了解设计模式,并能从中享受设计的乐趣。
疯狂Java联盟网址:http://www.crazyjava.org
英特尔® C++编译器Cilk语言扩展.pdf
英特尔® C++编译器Cilk语言扩展 ............................................................................................... 1
1. 介绍............................................................................................................................................ 7
1.1 目标读者 ............................................................................................................................... 7
1.2 前提条件 ............................................................................................................................... 7
1.3 排字约定 ............................................................................................................................... 7
1.4 附加资源和信息 ................................................................................................................... 7
2. 新手上路 .................................................................................................................................... 8
2.1 编译运行一个Cilk用例 ..................................................................................................... 8
2.1.1 编译生成 qsort ........................................................................................................... 8
2.1.2 执行 qsort ................................................................................................................... 9
2.1.3 观察多核系统中的加速 ............................................................................................... 9
2.2 改写一个C++程序 .............................................................................................................. 10
2.2.1 从一个串行程序开始 ................................................................................................. 11
2.2.2 使用_Cilk_spawn加入并行性 .................................................................................. 12
2.2.3 编译,执行和测试 ..................................................................................................... 14
3. 编译、运行和调试Cilk程序 ......................................................
高性能并行计算.pdf
目录
第一部分并行计算基础3
第一章预备知识5
x1.1 并行计算的目标和内容. . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
x1.2 并行计算机发展历程. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
x1.2.1 计算机系统发展简史. . . . . . . . . . . . . . . . . . . . . . . . . . 6
x1.2.2 并行计算机发展简述. . . . . . . . . . . . . . . . . . . . . . . . . . 7
x1.3 目前世界高性能计算机的状况. . . . . . . . . . . . . . . . . . . . . . . . 9
x1.4 可扩展的并行计算机体系结构. . . . . . . . . . . . . . . . . . . . . . . . 11
x1.4.1 对称多处理机系统. . . . . . . . . . . . . . . . . . . . . . . . . . . 11
x1.4.2 分布共享存储处理机系统. . . . . . . . . . . . . . . . . . . . . . . 13
x1.4.3 大规模并行计算机系统. . . . . . . . . . . . . . . . . . . . . . . . 14
x1.4.4 机群系统. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
x1.5 国内外超级计算中心状况. . . . . . . . . . . . . . . . . . . . . . . . . . . 16
x1.5.1 美国超级计算中心简介. . . . . . . . . . . . . . . . . . . . . . . . 16
x1.5.2 中国大陆超级计算中心简介. . . . . . . . . . . . . . . . . . . . . . 17
第二章基础并行算法21
x2.1 并行计算基本概念. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
x2.2 并行算法设计基本原则. . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
x2.3 区域分解方法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
x2.4 功能分解方法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
x2.5 流水线技术. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
x2.6 分而治之方法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
x2.7 同步并行算法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
x2.8 异步并行算法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
x2.9 作业. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
第二部分并行算法设计与实现29
第三章矩阵并行计算31
x3.1 并行矩阵乘法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
i
ii 目录
x3.1.1 串行矩阵乘法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
x3.1.2 行列划分算法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
x3.1.3 行行划分算法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
x3.1.4 列列划分算法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
x3.1.5 列行划分算法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
x3.1.6 Cannon 算法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
x3.2 线性代数方程组并行求解方法. . . . . . . . . . . . . . . . . . . . . . . . 36
x3.2.1 分布式系统的并行LU 分解算法. . . . . . . . . . . . . . . . . . . 37
x3.2.2 三角方程组的并行解法. . . . . . . . . . . . . . . . . . . . . . . . 38
x3.3 对称正定线性方程组的并行解法. . . . . . . . . . . . . . . . . . . . . . . 41
x3.3.1 Cholesky 分解列格式的并行计算. . . . . . . . . . . . . . . . . . . 41
x3.3.2 双曲变换Cholesky 分解. . . . . . . . . . . . . . . . . . . . . . . . 42
x3.3.3 修正的双曲变换Cholesky 分解. . . . . . . . . . . . . . . . . . . . 44
x3.4 三对角方程组的并行解法. . . . . . . . . . . . . . . . . . . . . . . . . . . 46
x3.5 经典迭代算法的并行化. . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
x3.5.1 Jacobi 迭代法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
x3.5.2 Gauss-Seidel 迭代法. . . . . . . . . . . . . . . . . . . . . . . . . . 48
x3.6 异步并行迭代法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
x3.6.1 异步并行迭代法基础. . . . . . . . . . . . . . . . . . . . . . . . . . 49
x3.6.2 线性迭代的一般收敛性结果. . . . . . . . . . . . . . . . . . . . . . 50
x3.7 代数特征值问题的并行求解. . . . . . . . . . . . . . . . . . . . . . . . . . 51
x3.7.1 对称三对角矩阵特征值问题. . . . . . . . . . . . . . . . . . . . . . 51
x3.7.2 Householder 变换. . . . . . . . . . . . . . . . . . . . . . . . . . . 52
x3.7.3 化对称矩阵为三对角矩阵. . . . . . . . . . . . . . . . . . . . . . . 53
x3.8 作业. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
第三部分并行实现55
第四章并行程序设计57
x4.1 并行编程模式的主要类型. . . . . . . . . . . . . . . . . . . . . . . . . . . 57
x4.2 并行程序的基本特点. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
x4.3 并行程序的实现技术. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
目录iii
第五章消息传递编程接口MPI 59
x5.1 MPI 简介. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
x5.2 MPI 程序实例. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
第六章MPI 并行环境管理函数63
第七章MPI 进程控制函数65
x7.1 MPI 进程组操作函数. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
x7.2 MPI 通信子操作. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
第八章MPI 点到点通信函数71
x8.1 阻塞式通信函数. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
x8.2 非阻塞式通信函数. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
x8.3 特殊的点到点通信函数. . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
x8.4 MPI 的通信模式. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
第九章MPI 用户自定义的数据类型与打包87
x9.1 用户定义的数据类型. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
x9.2 MPI 的数据打包与拆包. . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
第十章MPI 聚合通信97
x10.1 障碍同步. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
x10.2 单点与多点通信函数. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
x10.3 多点与多点通信函数. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
第十一章MPI 全局归约操作107
第十二章HPL 程序实例剖析117
参考文献119
附录一并行程序开发工具与高性能程序库121
xA.1 BLAS、LAPACK、ScaLAPACK . . . . . . . . . . . . . . . . . . . . . . . 121
xA.2 FFTW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
xA.3 PETSc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
附录二MPI 函数reference 123
C++编程思想(Thinking in C++).pdf 中文清晰版
C++编程思想(Thinking in C++)
Bruce Eckel 刘宗田等译
机械工业出版社
2000-1-1
本书作者根据自己学习C++的亲身体会及多年教学经验,用简单的例子和简练的叙述讲解C++编程,别具特色。 全书共分十八章,内容涉及对象的演化、数据抽象、隐藏实现、初始化与清除、函数重载与缺省参数、输入输出流介绍、常量、内联函数、命名控制、引用和拷贝构造函数、运算符重载、动态对象创建、继承和组合、多态和虚函数、模板和包容器类、多重继承、异常处理和运行时类型识别。 本书作为正式教材和自学用书均非常优秀,作为程序设计者的参考用书亦极为合适。
Bjarne Stroustrup的FAQ.pdf
C++之父Bjarne Stroustrup的关于C++问题的回答中文版。