i have some questions regarding gem5 'mostly exclusive' cache implementation
1-alloconfill() function in "/gem5/src/mem/cache/cache.hh" fills data in 'mostly exclusive' caches, if commands are ReadReq, WriteReq and WriteLineReq. Why it is required to check these commands? (Actually, i do not understand purpose of ReadReq, WriteReq and WriteLineReq. Can i get detail of commands from somewhere)
I was thinking may be it is because cache is 'mostly exclusive' not perfectly exclusive. If it is the case, can i make cache perfectly exclusive by removing ReadReq, WriteReq and WriteLineReq commands from function.
2-Although 'Mostly exclusive' cache in gem5 does not allocate blocks on miss in higher level caches but i think filllatency and response latency are still added for these blocks.
Is it true? How can it be avoided?