200803
本篇是郑纬民《计算机系统结构》的读书笔记,欢迎各位路过指正!今天是第九章也就是最后一章:多处理机。
9. 多处理机
- 多处理机:两个或两个以上处理机通过高速互连网络连接起来,在统一的操作系统管理下,实现指令以上级(任务级、作业级)并行。
9.1 多处理机结构
-
分类:
- 按照处理机之间的连接程度:紧密偶合和松散偶合多处理机;
- 按照是否共享主存储器:共享存储器和分布存储器多处理机;
- 按照处理机类型:同构型和异构型多处理机;
- 按照处理机的个数:大规模并行处理机MPP和对称多处理机SMP。
- 按照PE与IOP之间互连方式:对称型(每个IOP能够连接到所有PE上)、非对称型(每个IOP只与一个PE连接)、冗余对称型(一个PE与多个IOP连接)
- 按照存储器的访问方式:均均存储器,UMA模型;非均均存储器,NUMA模型;只有Cache,COMA模型。
-
松散耦合多处理机:处理机之间的连接频带比较低,通过并行口或串行口把多台计算机连接起来。通过Ethernet网络接口连接多台计算机。
-
紧密耦合多处理机:处理机之间共享主存储器,通过高速总线或高速开关连接。处理机个数不能太多,一般几个到几十个。要求有很高通信频带
-
多处理机系统的特点:结构灵活、程序并行性、并行任务派生、进程同步。
9.2 多处理机性能模型
-
引起峰值性能下降的原因:通信延迟、同步开销、空闲状态、无用工作、系统调度。
-
并行性在很大程度上依赖于R/C比值,其中R为程序执行时间,C为通信开销。R/C是衡量任务粒度的尺度。粗粒度并行:R/C大,通信开销小;细粒度并行:R/C小,通信开销大
-
2台处理机总处理时间 T = R max { M − K , K } + C ( M − K ) K T=R\max \{M-K,K\}+C(M-K)K T=Rmax{ M−K,K}+C(M−K)K。K为任务分配参数。当通信时间很小时,把M个任务平均分给两台处理机当通信时间很大时,把M个任务分配给一台处理机。
-
N台处理机:M个任务,N台处理机。当R/C>M/2时采用平均分配方法,当R/C<M/2时采用集中分配方法。
- 通信开销为线性函数的模型。总处理时间 T = R M N + C N T=R\frac{M}{N}+CN T=RNM