I have built an application and run into Haswell machine(Intel® Xeon® Processor E5-2670 v3 ). There are 2 sockets in that machine. I run my code into one socket and also allocate memory into that socket only. Then i have done memory access analysis using VTUNE and found that some part of my code accessing Remote DRAM. Then I have used NUMA control policy to fix this issue but there is no improvement. I don't know the reason why it is showing Remote DRAM access when I run the code into one socket, allocate memory into that socket only. Can anyone giving me suggestion regarding this issue? One more point I run this code into another Haswell machine and found out there is no Remote DRAM access in my code.
Thank you Dmitry for the reply. I have used NUMA controlled policy the following way,
numactl --cpunodebind=0 --membind=0 ./myApp
I include this NUMA controlled policy into a script and from VTUNE I run that script.