看板 b89902xxx 關於我們 聯絡資訊
※ 引述《Diron (好吃不黏手)》之銘言: : 比較(a)跟(b)的performance, 假設(a)有unrolled跟rescheduled : (a) : Loop: lw $t0, 0($s1) : lw $t1, -4($s1) : addu $t0, $t0, $s2 : addu $t1, $t1, $s2 : sw $t0, 0($s1) : sw $t1, -4($s1) : addi $s1, $s1, -8 : bne $s1, $zero, Loop : (b) : Loop: lw $t0, 0($s1) : addu $t0, $t0, $s2 : sw $t0, 0($s1) : addi $s1, $s1, -4 : bne $s1, $zero, Loop : 如果bne是在Mem stage可以被解決 : 那(a)的每一個loop要花11 cycles, 那(b)每一個loop要花9 cycles : 注意(b)要多花一個stall(lw跟addu) : 所以(a)比(b)快 (2*9)/11 , 因為(a)被unroll兩倍 : 如果bne是在ID stage可以被解決 : 那(a)的每一個loop要花10 cycles, 那(b)每一個loop要花8 cycles : 注意(b)要多花2個stalls(分別是lw跟addu還有addi跟bne) : 所以(a)比(b)快(2*8)/10 : 如果對這一題還有問題就說出來吧... 關於bne在 ID stage的答案不曉得對不對,如果大家覺得有問題可以提出來... -- ※ 發信站: 批踢踢實業坊(ptt.csie.ntu.edu.tw) ◆ From: 140.112.28.118