multi-ported tag memory seems to be a better( and also more expensive) choice.
yikesaiting
What do these two options mean?
teamG
@yikesaiting, option 1: cache duplicate tags means that there are two copies of the same tags and states for each controller. This helps prevent contention because there will be no locking needed when there are reads on each side for the tags.
However, for multi-ported tag memory, I'm not sure as well. From the lecture, the professor said it's the idea of building a more sophisticated cache that allows different clients to read the same tag at the same time(seems like it's hinted that it's more ECE stuff)
yikesaiting
@teamG, Cool, thx!
cyl
How does the duplicate tags make sure the synchronization between two tags. Isn't that another coherence problem?
althalus
From what I understand, there still needs to be some form of blocking for the synchronization. However, the modification of the tags is much less frequent than the reading of the tag, so the duplicates actually help.
multi-ported tag memory seems to be a better( and also more expensive) choice.
What do these two options mean?
@yikesaiting, option 1: cache duplicate tags means that there are two copies of the same tags and states for each controller. This helps prevent contention because there will be no locking needed when there are reads on each side for the tags. However, for multi-ported tag memory, I'm not sure as well. From the lecture, the professor said it's the idea of building a more sophisticated cache that allows different clients to read the same tag at the same time(seems like it's hinted that it's more ECE stuff)
@teamG, Cool, thx!
How does the duplicate tags make sure the synchronization between two tags. Isn't that another coherence problem?
From what I understand, there still needs to be some form of blocking for the synchronization. However, the modification of the tags is much less frequent than the reading of the tag, so the duplicates actually help.