看板 Grad-ProbAsk 關於我們 聯絡資訊
1 add $s1, $2, $3 2 sw $s2, 0($1) 3 lw $1, 4($2) 4 add $2, $2, $1 請問為什麼WAR dependence有(2,4)? sw不是store word嗎 這樣會read到$s2嗎? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.228.24.134
christianSK:因為是WAR 07/17 22:17
compulsory:WAR就是某指令寫太快導致某指令讀到錯誤的資料 07/17 22:20
compulsory:add如果比sw快寫入暫存$2 則sw存錯的資料回mem 07/17 22:21
da0910cc:因為pipeline的特性 2 4 有可能比1 3先執行完 所以WAR 07/18 08:27
da0910cc:哎呀我看錯 顆顆 07/18 08:30
da0910cc:compulsory大大的意思是因為(1,2)就已經錯了 07/18 08:42
da0910cc:所以連鎖反應 後面也全錯嗎@@? 07/18 08:43
privatewind:樓上的pipeline說的太廣囉 如果是以一般pipeline 07/18 09:42
privatewind:而沒其它的加速機制 是不會造成war的 07/18 09:43
privatewind:是像soft pipeline, hard pipeline這種加速機制才會 07/18 09:43
privatewind:有war問題 07/18 09:44
privatewind:說錯了 是multiple issue 加速機制 07/18 09:46
compulsory:我說的是(2,4) out of order pipeline 07/18 18:21
da0910cc:原PO問一下...題目說1 4的$2有WAR 是寫錯了嗎@@? 07/18 23:33
christianSK:有WAR沒錯阿 07/18 23:47
mqazz1:(1,4)有WAR 我覺得這比(2,4)有WAR還直觀= =" 07/19 11:30
da0910cc:有比較值觀@@? 07/20 16:57
sneak: add如果比sw快寫入 https://daxiv.com 09/11 14:27