Re: [理工] [計組] 2-bit predictor
※ 引述《blackZ2 (BB)》之銘言:
: ※ 引述《mqazz1 (無法顯示)》之銘言:
: assume that the breakdown of dynamic instructions into various instruction
: categories is as follows:
: R-type 50%, beq 15%, jump 10%, lw 15%, sw 10%
: branch predictor accuracies: always-taken 40%, always not-taken 60%, 2-bit 80%
: (1) with the 2-bit prdictor, what speed-up would be achieved if we could
: convert half of the branch instructions in a way that replaces a branch
: instruction with an ALU instruction?
: assume that correctly and incorrectly predicted instructions have the same
: chance of being replaced
: 1 + 3*(1-0.8)*0.15
: --------------------------------
: 1 + 3*(1-0.8)*0.15*0.5
: 請問這題為什麼要加1?
: 因為理想CPI為1,然後加上branches penalty 就是實際CPI
: (2)同上,把黃字改成two ALU
: 1 + 3*(1-0.8))*0.15
: --------------------------------
: 1 + (1 + 3*(1-0.8))*0.15*0.5
: 請問為什麼還要再加1?
: 因為這各式子化簡了,所以看起來很怪
: 請想成 1 + 0.15*0.5*0.2*3 + 0.15*0.5*1
: 理想CPI 沒有轉換的一半branch 一半branch轉成兩個ALU,指令會變多
: 化簡之後就是 1+(1+0.2*3)*0.15*0.5
: 這是我自己的想法,希望是對的
這樣說好精簡,我來幫你多做補充。
1 + 0.15*0.5*0.2*3 + 0.15*0.5*1
理想CPI, 猜錯的branch中 猜對和猜錯的branch轉成兩個ALU
已經包含猜對的branch 未轉換的一半branch 的部分,若把它拆成
中未轉換成ALU的部分。 0.15*0.5*0.8*1+
0.15*0.5*0.2*1將會更清楚。
對於猜對的部分,原本只需花一次
執行,但轉成ALU後要花兩次執行
這一項就是指多做的那一次。
原本花的那一次已經包含在理想
的CPI裡面。
對於猜錯的部分,原本要有3的
penalty,但是轉成ALU後可以想為
執行兩次ALU即可取代penalty,
而原本就需要做一次了,剩下的那
次是多做的,整體來看就跟上面那
段是一樣的。
其實這題答案有問題,因為一個branch轉換成兩個ALU,
勢必會造成指令的比例改變,所以真正的答案應該是:
1 + 1*(0.15/1.075)*0.5 + 3*0.2*(0.15/1.075)*0.5
因為現在所有指令加起來是107.5%,所以原本比例要除掉1.075做修正,
我有把上面這個想法寄信跟張凡說過,張凡也拿去問同事後最後的結論還是,
"照課本吧XD"
所以就當我沒說過這段吧XD
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.249.12.39
※ 編輯: wheels 來自: 111.249.12.39 (08/22 13:34)
→
08/23 00:48, , 1F
08/23 00:48, 1F
→
08/23 01:11, , 2F
08/23 01:11, 2F
推
08/24 01:08, , 3F
08/24 01:08, 3F
→
08/25 00:38, , 4F
08/25 00:38, 4F
→
08/25 00:39, , 5F
08/25 00:39, 5F
→
08/25 00:57, , 6F
08/25 00:57, 6F
推
08/25 22:47, , 7F
08/25 22:47, 7F
→
08/25 22:48, , 8F
08/25 22:48, 8F
→
08/25 22:53, , 9F
08/25 22:53, 9F
→
08/25 22:53, , 10F
08/25 22:53, 10F
→
08/25 22:59, , 11F
08/25 22:59, 11F
→
08/25 22:59, , 12F
08/25 22:59, 12F
→
08/25 23:00, , 13F
08/25 23:00, 13F
推
08/26 00:08, , 14F
08/26 00:08, 14F
→
08/26 01:14, , 15F
08/26 01:14, 15F
→
08/26 01:15, , 16F
08/26 01:15, 16F
→
08/26 01:16, , 17F
08/26 01:16, 17F
→
08/26 01:17, , 18F
08/26 01:17, 18F
→
08/26 01:17, , 19F
08/26 01:17, 19F
→
08/26 01:18, , 20F
08/26 01:18, 20F
→
08/26 01:19, , 21F
08/26 01:19, 21F
推
08/26 01:35, , 22F
08/26 01:35, 22F
→
08/26 01:36, , 23F
08/26 01:36, 23F
→
08/26 01:37, , 24F
08/26 01:37, 24F
→
08/26 20:21, , 25F
08/26 20:21, 25F
→
08/26 20:22, , 26F
08/26 20:22, 26F
→
08/26 20:22, , 27F
08/26 20:22, 27F
→
08/26 20:23, , 28F
08/26 20:23, 28F
→
08/26 20:24, , 29F
08/26 20:24, 29F
→
08/26 20:24, , 30F
08/26 20:24, 30F
→
08/26 20:25, , 31F
08/26 20:25, 31F
推
01/01 20:47, , 32F
01/01 20:47, 32F
→
09/11 14:29, , 33F
09/11 14:29, 33F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):