[Info-vax] RealWorldTech on Poulson

Johnny Billquist bqt at softjar.se
Mon Jul 4 09:19:44 EDT 2011


On 2011-07-04 04.31, JF Mezei wrote:
> re: chache coherency and virtual machines.
>
> Say you have a 32 core system running 16 instances of some OS versus the
> same system running one instance of the OS.
>
>  From a cache performance/coherency point of view, does this make a
> difference ?
>
>
> With  a single instance, you'd have 32 cores accessing the same memory.
> So obviously, the scalability issue mentioned in this thread will matter.
>
> But in the case of 16 instances of 2 cores each, wouldn't the cache
> become effectively split 16 ways since no OS instance could touch
> another's memory ? If each portion of the cache that is being used by
> one OS instance is only accessed by 2 CPUs then scalability wouldn't be
> an issue ? or would it ?
>
> I realise that the cache manager would still see the big picture and not
> realise that memory has been split 16 ways.

Indeed, which is why it don't make a difference. You have to understand 
how the cache coherency protocols work, then it is obvious what the 
problems are. Basically, with cache snooping, every CPU is broadcasting 
to all other CPUs what they do. As the number of CPUs grows, this starts 
to become an issue. With a directory based cache coherency, all CPUs 
just talk to the directory, which keeps track of things. Slower, as you 
have an instance between yourself and memory, faster when you have many 
CPUs, as you still only talk to that instance, no matter how many CPUs 
there are.

Hmm, just look up "cache coherency" on Wikipedia. :-)

	Johnny




More information about the Info-vax mailing list