[理工] write back cache 问题

楼主: s567101 (anson)   2021-12-27 11:50:43
写考古的时候看到“为什么write back cache 在write miss时,只能有write allocate 一种选择?”,我查到的解释都是说因为采用no-write allocate 的话memory和cache 会有data inconsistency 的问题。
但采用no write allocate 来直接修改memory 上的资料的话,由于在cache 本来就已经miss了,cache 上应该没有要的block 才对,那这样怎么会有inconsistency 的问题呢?cache 上面根本没有target block 啊。
以上是我的疑问,再麻烦大家指教,谢谢。
作者: NCTUCKCurry (CKNCTUCurry)   2021-12-27 15:04:00
write back/write through和write allocate/no writeallocate应该是四种组合都可以用,只是write back通常搭配write allocate,write through通常搭配no write allocate
作者: pipiLUANAIAI (狗猫咪)   2021-12-27 16:41:00
write back使用no write allocate代表write miss后更新在内存,在下一次的write还是会miss,一样要更新在内存,这样一开始选择write back的意义就失去了,dirty bit这功能对于miss block形同不存在,我在猜想这会不会是所谓的inconsistency
楼主: s567101 (anson)   2021-12-27 21:23:00
感谢楼上两位的回答,感觉还是不要钻这个问题好了,知道为什么要这样搭配应该比较重要XD
作者: OhYiDay (小白Z)   2020-01-12 00:21:00
我跟你想到了一模一样的问题 正准备上来发文 没想到有人问了!!

Links booklink

Contact Us: admin [ a t ] ucptt.com