2

I am doing an application benchmark with multiple instances of the same application. I found out that pinning their processes (with sched_setaffinity under Linux, with TaskManager under Windows) to specific CPUs increases performance. So I would have:

* whatever.exe pinned to CPU 1
* whatever.exe pinned to CPU 2
* whatever.exe pinned to CPU 3
* whatever.exe pinned to CPU 4

each whatever.exe has its own buffers and heap memory. I want to avoid that a process on CPU 1 has to access RAM from CPU 2 because with the Core Microarchitecture from Intel, this would need a QPI hop to the next processor.

How can I determine under Windows, which CPU's RAM is being used by a process? How can I do this under Linux?

I am thinking of an answer like "process X has its RAM from physical RAM address Y to Z and CPU A is directly connected to RAM from address B to C".

Is there a Windows tool to get this kind of answer?

Thorsten Staerk
  • 389
  • 2
  • 11

0 Answers0