On 2020-03-23 03:42, Mark Geisert wrote: > Corinna Vinschen wrote: >> On Mar 21 10:41, Brian Inglis wrote: >>> On 2020-03-21 02:18, Mark Geisert wrote: >>>> Eliot Moss wrote: >>>>> On 3/20/2020 1:54 AM, Mark Geisert wrote: >>>>>> I've reproduced your snags. It/they are due to my having forgotten >>>>>> another tiny update that should have been part of the >>>>>> 2.33.1-cygwin-cpuset.patch file. If you >>>>>> 'echo "#define SYS_sched_getaffinity 42" > >>>>>> /usr/local/include/sys/syscall.h' >>>>>> and then back out your other fix attempts, the build using cygport should >>>>>> work. >>>>> Once I did that properly, it built without commenting out that test. Yay! >>> >>>> I ended up installing Process Lasso to follow processes among the cpus and >>>> to >>>> test the Cygwin affinity mask implementation. It has a free trial period. >>>> And >>>> I wrote a simple test program that just advances from one cpu to the next >>>> repeatedly, cpu-bound between steps, so PL can display the changing cpu. >>> >>> Anyone know if this feature support or what feature support will get top >>> P/last >>> used CPU and/or procps-ng P/sgi_p currently executing CPU and PSR/currently >>> assigned CPU showing actual CPUs rather than 0/zero? >>> >>> Anyone know if or where or how this info is available on Windows or a link >>> to >>> it? I've looked at Google and SO results and nothing useful is apparent. >> >> Can't we just fake the calls?
The results are currently faked to CPU # 0. > Brian is asking for a way to watch processes globally, as they are scheduled > back and forth on the available cpus. I was a bit sloppy in my wording above; > what Process Lasso displays is the changing process affinity mask for a > process > I wrote to do just that. I don't know of a way to ask Windows which cpu a > process is currently scheduled onto. You can also get and set affinity in Task Manager, and also ideal CPU info using SysInternals Process Explorer, or PowerShell, which I use to launch Windows ntpd at max realtime priority on CPU `nproc` - 1, as CMD arithmetic was nonexistent or obscure years ago. I could probably redo that with CMD start. Only documented CPU # call I could find was GetCurrentProcessorNumber (-Ex also returns processor group) which tells the current thread where it's executing, not the last or current CPU # assigned or used for other process threads. -- Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada This email may be disturbing to some readers as it contains too much technical detail. Reader discretion is advised. -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple