Hi all,

I am trying to implement something in the paffinity:solaris that would allow me to specify the cpu id with striding (aka in a sequence) when selecting which cpu ids to bind. e.g. For a cpu set that looks like this: { 0 1 2 3 4 5 6 7 }, and stride is to 2, and offset is to 1 (which means start at pos 1), then ranks will bind to the cpus in the following order: { 1 3 5 7 2 4 6 0 }. The obvious intent is to take advantage of the perf by allocating the ranks in a certain order on multi-core systems.

But then we realized this may be implemented elsewhere outside the solaris paffinity code. I see something in trac #1023 that may allow me to specify a cpuid or cores in a range but it doesn't seem to allow me specify the cpu id to bind in strides. And with that, rank specification may seem to be doable, but I may end up entering a long list of cpu ids in strides manually, if the machine happens to have many cpus. Plus another down side is that Solaris doesn't seem to have stable interface for me to extract out the core/socket information from the kernel. So striding might be the only way for me to go for now.

Is there some unspoken feature that's coming down the pipe that may allow me to specify cpuids in a sequence, or we already have some feature like that that I didn't know about? I look around but I don't see anything like this.

Thanks in advance for any comments.

--

- Pak Lui
pak....@sun.com

Reply via email to