為什麼這篇cpi計算機組織鄉民發文收入到精華區:因為在cpi計算機組織這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者dearwen61 (Water Blue)看板Grad-ProbAsk標題[理工] 計算機結構...
設有一計算機,若僅考慮中央處理器(CPU),某應用程式執行的情形為:數據處
理(data processing)類指令執行的比例為50%,數據搬移(data movement)類指
令執行的比例為30%,以及控制流向(control flow)類指令執行的比例為20%。理
想情況下,管線化處理時每道指令所花費的時脈數(CPI, Cycles Per Instruction)為
1.0。以下計算結果均請取至小數點後兩位:
(一)若僅考慮數據相依性(data dependency)造成的管線停頓,以致於35%的指令需
停頓1 個週期、25%的指令需停頓2 個週期。則此時的CPI 將為若干?
(二)若僅考慮控制相依性(control dependency)造成的管線停頓,以致於在20%的控
制流向指令中,有40%因不改變控制流向而不需停頓,另60%因改變控制流向而
需停頓4 個週期。則此時的CPI 將為若干?
(三)同時考慮數據相依性及控制相依性時,有1/5 的數據相依造成的管線停頓及1/3
的控制相依造成的管線停頓將與另一種管線停頓重疊。則此時的CPI 將為若干?
答:
假設有100個指令,CPI=指令數/脈波數=100/100=1
(一)CPI=(40+35*(1+1)+25*(2+1))/100=1.85
(二)CPI=(50+30+20*(40%*1+60%*(1+5))=1.6
小弟的疑問為
1.第(一)(二)小題小弟這樣算對嗎?
因為題目提到停頓幾個週期,所以小弟才又再加1個執行週期
請問這樣加1的動作是否正確呢?還是不需再加1呢?
2.第(三)小題請問該如何計算呢??
以上是小弟的一些疑惑,還勞煩高手指導了,小弟先行謝恩了,萬分感恩。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 36.235.221.243