A method of handling a write operation in a multiprocessor computer system
wherein each processing unit has a respective cache, by determining that a
new value for a store instruction is the same as a current value already
contained in the memory hierarchy, and discarding the store instruction
without issuing any associated cache operation in response to this
determination. When a store hit occurs, the current value is retrieved
from the local cache. When a store miss occurs, the current value is
retrieved from a remote cache by issuing a read request. The comparison
may be performed using a portion of the cache line which is less than a
granule size of the cache line. A store gathering queue can be use to
collect pending store instructions that are directed to different portions
of the same cache line.
Um método de segurar uma operação da escrita em um sistema computatorizado do multiprocessor wherein cada unidade processando tem um esconderijo respectivo, determinando que um valor novo para uma instrução da loja é o mesmo que um valor atual contido já na hierarquia da memória, e rejeitando a instrução da loja sem emitir alguma operação associada do esconderijo em resposta a esta determinação. Quando uma batida da loja ocorre, o valor atual está recuperado do esconderijo local. Quando uma falta da loja ocorre, o valor atual está recuperado de um esconderijo remoto emitindo um pedido lido. A comparação pode ser executada usando uma parcela da linha do esconderijo que é menos do que um tamanho do granule da linha do esconderijo. Uma loja que recolhe a fila pode ser uso coletar as instruções pendentes da loja que são dirigidas às parcelas diferentes da mesma linha do esconderijo.