Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

But it has to be available to those multiple cpus, right? So it has to go down to memory and back up to cache. Contended or not.


Maybe I'm missing something, but if the cache line is only in use by one CPU, I don't see why the value would need to be immediately propagated to main memory or to any other CPU's cache until it is written as part of the normal cache write-back.


Correct. Typically the cache snoops the main memory bus. If a remote CPU starts a read on a cached memory location, the caching CPU sends a "stall" or "retry" signal to the reader, does a cache flush to main memory, and then lets the remote CPU proceed with the (now correct) main memory read.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: