We run multiple copies of our application at the same time on a multi core server with 2 NUMA nodes. We already set the affinity of the app to cores on either NUMA zero or one to increase memory access performance. However it occurred to me that different pages of dll's and even the exe are probably being loaded into different NUMAs, depending on the most local NUMA of the process that accessed a page first.
Is this happening? Is there anyway to configure windows to load a page from a dll or exe more than once if there are more than one NUMA? I'm guessing hell no.
hmmm. Would putting a copy of our exe in two directories work? Would be enough for windows to think the dll was different. If not I could rename each dll _0 or _1. Maybe there is something in the PE header I have to change to make each dll seem different.
We use windows server 2008 R2 and are upgrading to 2012 soon.