Try looking at liblgrp(3LIB). Solaris does tries to
recognize various latency domains today (s10 and later)
and set the home latency group (lgrp) to the most lightly
loaded at the time of process startup. After that, it tries to
allocate memory pages from that lgrp.

System V shared memory and mmaped anonymous
memory over a certain limit are exceptions. See
madvise(2) for ways to modify memory allocation policies.

The Programming Interfaces Guide in the documentation
set does a good job of explaining these.

Jim
----

On 02/20/10 02:35 AM, Ryan Johnson wrote:
On 2/20/2010 11:30 AM, Phil Harman wrote:
The T5440 is at the extreme end of T-series NUMA latency. The T5220, being just one chip, is at the other. Do you have all your vcpus in one domain? If so, that's a lot more cross calls too! Very few apps can scale sensibly on that beast and cope with both factors. I guess DTrace is one of them.
Yes, I'm starting to notice that with our other software also... this is probably off-topic, but is there a way to hint at Solaris that you'd prefer it to map your process physical memory from a certain socket? Processor sets don't seem to do it (they do kill the crosstalk from x-calls), but I haven't tried domains yet.

Regards,
Ryan

_______________________________________________
dtrace-discuss mailing list
dtrace-discuss@opensolaris.org


_______________________________________________
dtrace-discuss mailing list
dtrace-discuss@opensolaris.org

Reply via email to