第1章计算机系统概述__计算机系统性能评价之2_用执行速度进行性能评估
最早用來衡量計算機性能的速度指標(biāo)是每秒鐘完成單個運算(如加法) 指令的條數(shù)。
指令速度所用的計量單位為MIPS (Million?Instructions Per Second) ,其含義是平增多每秒鐘執(zhí)行多少百萬條指令
即MIPS: ?平均每秒鐘執(zhí)行多少百萬條指令
一 ?還有一個概念:指令平均執(zhí)行時間,也稱等效指令速度法或Gibson混合法。根據(jù)該法,通過統(tǒng)計各類指令在程序中所占比例進行折算。
設(shè)某類指令 i 在程序中所占比例為Wi, ?執(zhí)行時間為 ti, 則等效指令的執(zhí)行時間為 T = w1 * t1 + w2 * t2 + ...+ wn * tn(n 為指令種類數(shù)). 若指令執(zhí)行時間用時鐘周期數(shù)來衡量的話, 則上式計算的結(jié)果就是 CPI。 對指令平均執(zhí)行時間求倒數(shù)能夠得到 MIPS 值。
二 選取一組指令組合, 使得得到的平均CPI最小, 由此得到的MIPS就是峰值MIPS (Peak MIPS)
三 ?MIPS反映了機器執(zhí)行定點指令的速度, 但是用MIPS來對不同的機器進行性能比較有時是不準(zhǔn)確或不客觀的。
看一個例子:假定某程序 P 編譯后生成的目標(biāo)代碼由A、B、C、D四類指令組成,它們在程序中所占的比例分別為43%, 21%, 12%, 24%, 已知它們的CPI分別為1 、2、2、2。 現(xiàn)重新對程序P進行編譯優(yōu)化,生成的新目標(biāo)代碼中 A 類指令條數(shù)減少了50%, 其他類指令的條數(shù)沒有變。 請回答下列問題。
(1) 編譯優(yōu)化前后程序的 CPI 各是多少?
(2) 假定程序在一臺主頻為 50 MHz 的計算機上運行,則優(yōu)化前后的 ?MIPS各是多少?
解: 優(yōu)化后 A類指令的條數(shù)減少了50%, 因而各類指令所占比例分別計算如下。
A類指令: 21.5/(21.5 + 21 + 12+ 24)= 27%
B類指令: ?21 / (21.5+ 21 + 12 +24) = 27%
C類指令:12/(21.5+21+12+24)=15%
D類指令: 24/ (21.5+21+12+24) = 31%
(1) 優(yōu)化前后程序的CPI分別計算如下。
優(yōu)化前: 43% *1 + 21%*2 + 12%*2 + 24%*2 = 1.57
優(yōu)化后:27%*1 + 27% * 2 + 15% *2 + 31%*2 = 1.73
(2)優(yōu)化前后程序的 MIPS 分別計算如下, ? 依據(jù)公式: 時鐘頻率 / ?CPI = MIPS
優(yōu)化前 50 M / 1.57 = 31.8 MIPS
優(yōu)化后: 50M / 1.73 = 28.9 MIPS
從MIPS來看,優(yōu)化后程序執(zhí)行速度反而變慢了。 從這個例子可以看出,用MIPS數(shù)進行性能估計是不可靠的。
?
?
?
?
?
?
?
?
?
?
?
?
總結(jié)
以上是生活随笔為你收集整理的第1章计算机系统概述__计算机系统性能评价之2_用执行速度进行性能评估的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SAP学习资料地址收集
- 下一篇: Java房屋租赁系统的设计与实现