
How familiar are you with the term ccNUMA? As I'm not too familiar with it myself, I just did a quick look up at Wikipedia (<http://en.wikipedia.org/wiki/Non-Uniform_Memory_Access>):
Cache coherent NUMA (ccNUMA) Regards, Thomas
I wasn't familiar with the term and so I read that article. I believe I understand that it's implying that motherboards used in mainstream computers use cache-coherency hardware in order to enforce the 'ccNUMA' architecture. If all motherboards used this ccNUMA architecture, I don't think there would ever be a problem. However, I'm under the impression that boost targets CPU's; not ccNUMA-based motherboards. I can see the possibility that a "Weak Memory Model CPU" is being used in an embedded scenario, and not having a ccNUMA architecture. I don't know if it's still realistic for that hardware to still be using boost at that point, but I suppose it's possible. My 'take away' from this is that if the programmer knows the hardware doesn't handle cache-coherency, and the code is using boost classes, the programmer has to make special provisions to deal with potential problems by surrounding constructor calls with fences. Thanks, -Sid