Web lists-archives.com

Re: More oddities with multiple processor groups




On 2018-04-11 12:05, Achim Gratz wrote:
> I seem to be the first to try Cygwin on a box that has multiple
> processor groups, which seems odd.  Anyway, I've already noticed two
> more things that indicate that Cygwin and/or Cygwin applications
> currently don't deal well with the situation:
> 
> 1. Trying to run top, it shows only the first 16 processors and then
> exits with an error that "openproc failed".  Interestingly enough it
> will keep running despite this error when running under strace (still
> only showing the processors from one group, presumably the one that top
> got started in).
> 
> 2. Git will correctly determine that it can use 32 threads for garbage
> collection, but it starts them all in the same processor group.
> 
> The problem here is that on Linux you don't need to do anything extra to
> use any of the advertised logical processors from a single application,
> while on Windows you need to first create a thread and set it's affinity
> to a different group than where your process was started in, then assign
> each new thread an affinity to one of the available groups.  If you
> don't do that, all threads will be restricted to the original group.
> 
> 
> Some more info on these differences (and already a bit outdated
> w.r.t. the way processor groups are formed):
> 
> https://software.intel.com/en-us/blogs/2010/12/16/tbb-30-high-end-many-cores-and-windows-processor-groups
> 
> If it would be possible for Cygwin to hide that ugliness from Cygwin
> applications I think that'd be highly welcome.  Otherwise there might
> need to be some option to restrict Cygwin to a single processor group
> for some applications to work (correctly).

Have you tried installing and running hwloc package to find out how it sees your
system?
If you run lstopo under X, you get a pretty diagram, but you can also run
lstopo-no-graphics aka hwloc-ls without X. Running "apropos hwloc" lists
commands you can use to manipulate the topology.

-- 
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple