计算机系统结构

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机科学与技术系研究生课程
高等计算机系统结构
清华大学计算机科学与技术系高性能计算研究所
郑纬民 教授
2007年9月
高等计算机系统结构
第一章 第二章 第三章 第四章 第五章 第六章 第七章 第八章 第九章 第十章 十 高等计算机的核心技术——并行处理 加速比性能模型与可扩展性分析 互连与通信 划分与调度 并行存储器系统 Cache Coherence Memory Consistency 指令级并行处理 微处理器设计与实现方法 网格计算
Execution Time Ts Ts
Wp
Wp
Wp
Wp
Tp Tp
Ts Tp 3
Ts Tp 4 N
1
2
3
4
N
1
2
固定负载
执行时间随N增加而减少
固定负载加速比模型下的负载和执行时间情况
当处理器数目n=1024,加速比Sn随α变化的情况如下:
S1024 = 1024 1024 = 1+ ( 1024 −1 α 1+1023 ) α
增大问题规模的办法使所有处理机保持忙碌状态,在问题扩大到 与可用的计算能力匹配时,程序中的顺序部分就不再是瓶颈了。 当处理器数目n=1024,加速比Sn随α变化的情况如下:
S1024' = n −α(n −1 =1024 −1023 ) α
Sn’
1100
1050
1024
1000
1014 1004
993 983
在固定时间加速比模型下,负载和执行时间随系统 中处理机数目n变化的情况如下图:
Workload Ws Ws Ws Ws Wp 1 Wp 2 Wp Wp Tp Tp Tp Tp Execution Time Ts Ts Ts Ts
3
4
N
1
2
3
4
N
并行负载不断增加
执行时间固定
固定时间加速比模型下的负载和执行时间情况
加速比= 采用改 进措施后的性能 没有采用改进措施前执行某任 务的时间 = 没有采用改进措施前的性能 采用改进措施后执行某任务的 时间
加速比的两个决定因素:
1.计算机执行某个任务的总时间中可被改进部分的时间 所占的百分比,即 可被改进部分占用时间/改进前整个任务的执行时间, 记为Fe,它总小于1。 2.改进部分采用改进措施后比没有采用改进措施前性能 提高的倍数,即 改进前改进部分执行时间/改进后改进部分执行时间, 记为Se。
工作负载 900 (问题规模)
∴S = 1 F e e ( −F )+ 1 S e
例1:
假设将某系统的某一部件的处理速度加快到10倍,但 该部件的原处理时间仅为整个运行时间的40%,则整 个系统的性能提高了多少? 解:Fe = 0.4,Se = 10,
∴S = 1 0.4 ( − 0.4) + 1 10 = 1.56
例2:
采用哪种实现技术来求浮点数平方根FPSQR的操作对系统的性 能影响较大。假设FPSQR操作占整个测试程序执行时间的20%。 一种实现方法是采用FPSQR硬件,使FPSQR操作的速度加快到 10倍。另一种方法是使所有浮点数据指令的速度加快,使FP指 令的速度加快到2倍,还假设FP指令占整个执行时间的50%。请 比较这两种设计方案。 解:Fe_FPSQR = 0.2,Se_FPSQR = 10, Fe_FP = 0.5,Se_FP = 2, 1 ∴SFPSQR = =1.22 0.2 ( − 0.2) + 1 10
加速比可以表示如下:
Ws + G(n)Wp S = * = * Ws +Wp / n Ws + G(n)Wp / n
* n * s * p
W +W
其中:
在单个处理机上顺序执行的工作负载与问题的规模 或系统的规模无关,即:
Ws = Ws' = W
* s
而G(n)反映的是存储容量增加n倍时并行工作负载增 加的倍数。
W +W s p Sn = W +W / n s p
设串行因子α为串行部分所占的比例。即
W s W p α= 或 −α = 1 W +W s p W +W s p
代入即得Amdahl’law:
W +W s p 1 W +W s p ∴Sn = = W s W /n p α + (1−α) / n + W +W s p W +W s p
讨论: 1. G(n) = 1,即为固定负载的情况; 2. G(n) = n,即存储器增加n倍,负载也增 加n倍,为固定时间的情形; 3. G(n) > n,计算负载的增加情况比存储器 增加快,会有较高的加速比。 比较三种加速比,对于相同的处理机数量,有:
S ≥ S ≥ Sn
* n ' n
在受限于存储器的加速比模型下,负载和执行时间 随系统中处理机数目n变化的情况如下图:
2.并行度(Degree Of Parallelism—DOP) 并行度(DOP)是在一定时间间隔内执行 一个程序所用的处理机的数目。 3.并行性分布图 执行一个给定的程序时DOP对时间的分布 图。 DOP与对应时间的间隔之积即为处理机要 完成的工作或工作负载。 下图所示为一个并行性分布图。
DOP
模型提出的背景:
固定负载模型有缺陷:因为Amdahl’law中,α 取决于问题及并行编译器的效率,无法描述系统固 有的特性。
加速比的公式:
Ws'+Wp' Ws + nWp α + n(1−α) Sn' = = = = n −α(n −1) Ws'+Wp' / n Ws +Wp α + (1−α)
其中,Wp’=nWp和Ws+Wp=Ws’+Wp’/n作为固定时间 的条件。 Ws’+Wp’/n表示在扩大负载后在增加处理机 台数的情况下的平均负载(执行时间),它应当和负 载没有扩大情况下的平均负载(执行时间)Ws+Wp 相等。即有Ws+Wp=Ws’+Wp’/n。同时,负载的串行 部分并没有改变,即有Ws=Ws’。
t1
t2
t
并行性分布图
2.1.2 加速比
1. 绝对加速比 将最好的串行算法与并行算法相比较. 定义一(与具体机器有关)将最好的串行算 法在一台上的运行时间与并行算法在N台运行 的时间相比。 定义二(与具体机器无关)将最好的串行算 法在最快的顺序机上的执行时间与并行算法 在并行机上的运行时间相比。
T S = best T (N)
∴SFP = 1 ( − 0.5) + 1 0.5 2 = 1.33
Amdahl’law又称为固定规模加速比模型,问 题规模不随处理机变化而变化。固定问题 规模,看用并行技术能达到的最短时间是 多少。 在固定规模加速比模型下,负载和执行时间 随系统中处理机数目n变化的情况如下图:
Workload Ws Ws Ws Ws
2.1.3 三种加速比性能模型
1.固定负载加速比性能模型—Amdahl定律
在许多实时应用领域,计算负载的大小常固 定。在并行机中,此负载可分布至多台并行执行, 获得的加速比称为fixed-load speedup。一个问题的 负载可表示如下: W = Ws + Wp 其中,Ws代表问题中不可并行化的串行部分负载, Wp表示可并行化的部分负载。 则n个节点情况下,加速比可以表示如下:
不管采用多少处理机,可望达到的最好加速比:
1 1 Sn = lim = n→ α + ( −α) / n ∞ 1 α
效率En可以表示为:
Sn 1 1 1 En = = = = n [α + ( −α) / n] × n 1 nα +1−α 1+ (n −1 α )
处理机数目n越大,效率En越低。 Amdahl定律告诉我们:系统中某一部件由于采 用某种更快的执行方式后整个系统性能的提高 与这种执行方式的使用频率或占总执行时间的 比例有关。
2.固定时间加速比性能模型—Gustafsun定律
有许多应用领域强调精度而不时运行时间。 1988年,Gustafsun提出了固定时间加速比模型。当 机器的规模扩大时,解题的规模也随着扩大,从而 得到更加精确的解,而使运行时间保持不变。 比如:有限元方法做结构分析,流体动力学做 天气预报解PDE(偏微分方程组)就需要提高精度。 粗格要求的计算量较少,而细格的计算量多, 得到的精确度也较高。天气预报模拟求解四维PDE, 如果使每个实际方向(X,Y,Z)的格点距离减少 10倍,并以同一幅度增加时间步,那么可以说格点 增加了104倍,因而工作负载也至少增大了10000倍。
3n3 = 3N 2 ⇔ N = n1.5
W* 大 2N3 2n4.5 = = n1.5 ∴G(n) = 扩 后 = W 来 2n3 2n3 原
∴S* = W + n1.5Wp s W + n Wp / n s
1.5
=
W + n1.5Wp s W + n0.5Wp s
4.并行计算的应用模型
随机器规模的增大,工作负载增长的模式如下图:
高等计算机系统结构
第十一章 十 第十二章 十 第十三章 十 第十四章 十 第十五章 十 第十六章 第十七章 第十八章 DSM 传感器网络 对等计算 海量网络存储器 多核CPU技术 可信计算系统 虚拟化技术 基于集群的海量数据处理
第二章 加速比性能模型与可扩展性分析 2.1 加速比性能分析
2.1.1 一般概念 2.1.2 加速比 2.1.3 三种加速比性能模型
2.2 可扩展性分析
2.1 加速比性能模型
2.1.1 一般概念
1.处理机—时间积 处理机数目与处理时间的乘积用以度量 这些处理机运行时的资源利用率。 若一程序在≤P台处理机上运行的时间为 Tp,则此P台处理机在Tp时间间隔内完成的工 作最大数量为Tp * P。 可将处理机实际工作曲线对时间的积分 看成是这些处理机完成的有效工作量。 效率为有效工作量与最大工作量之比。
10
1
10
2
10
1
10 0 10
0
10
2
10
3
10
4
n
α=0时得到理想加速比,当α值增加时,加速比性能急剧下降。
结论:加速比曲线随α的上升急剧下降,原因是存 在顺序部分Ws,无法用增加系统的处理机数目 来解决。这一性质在过去二十年间给人们造成了 对并行处理非常悲观的印象。 影响:两种意见: 1.劝阻制造商生产大规模并行计算机。 2.研究并行编译器,以降低α的值,从而提高 系统的性能。 规定负载加速比模型的可能应用范围: 对时间要求严格的应用问题。
得出曲线如下图:
Sn
1200
1000
1024
800
600
400
200
91
0.01
48 31 24
0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09
10
0.1
0 0
α
可以比较不同的α对加速比带来的不同影响:
Sn
10
4
10Hale Waihona Puke Baidu
3
α =0 α =0.01 α =0.1 α =0.9
950
900
850
800 0
0.01
0.02
0.03
0.04
0.05
0.06
0.07
0.08
0.09
0.1
α
3.受限于存储器的加速比模型
1993年,由Sun和Ni提出。 大型科学计算和工程设计需要较大的存储空间, 许多应用问题是存储器受限,而不是CPU受限或者 I/O受限。 比如:在分布存储系统中常遇到,总存储容量 随节点数线性增加,许多节点集合起来解一个大题。 基本思想:要在存储空间有限条件下解尽可能 大的问题,这同样需要扩展工作负载,才能提供较 高的加速比、较高的精度和较好的资源利用率。
Workload Ws Ts Ws Ws Wp 1 2 3 4 N Wp Wp Ts Wp Ts Tp 1 Ts Tp 2 Tp 3 Tp Ws Execution Time
4
N
规模扩展的工作负载
执行时间稍有增加
受限于存储器的加速比模型下的负载和执行时间情况
例:
n维矩阵乘法:A * B = C,其中A、B、C都是n*n的方阵。为得 到C的每一个元素需要进行n次乘法、n次加法,所以总的计算 量为:(n+n)*n2 = 2n3。需要的存储量为3n2(两个源矩阵,一 个结果矩阵)。如果n台计算机组成多计算机系统,则存储容 量扩大n倍,那么矩阵的维数(原来为n)也可以增加了,设为N 倍,那么加速比为多少? 解:存储容量变为:nM = n* 3n2 = 3n3,而N维需要的存储量 为3N2,计算量变为2N3,则有:
2.相对加速比 同一并行算法在单节点上运行时间 与在多个相同节点构成的处理机系统上的 运行时间之比。 这种定义侧重于描述算法和并行计 算机本身的可扩展性。
T(1 ) S= T(N)
线性加速比:中间开销小,通信少,弱耦合计算 超线性加速比:当应用需要大内存时可能出现 病态加速比:加速比递减,可能是计算量太小
相关文档
最新文档