An update from what I know so far - comming from discussion on the pixinsight forum - including running some code Juan the CEO of PI shared on my machines.
https://pixinsight.com/forum/index.p...11-24h2.24249/
So I haven't programmed in 40 years - but last week I downloaded a C++ compiler and with some amazing help from ChatGPT trialled a few simple parallel programs on my workstations to confirm something that hasn't been well shared about PI.
On boot up it detects how many logical processors (72) are on my machine. On benchmark running and general PI tasks - PI only uses 36 cores and reports is sees only 36 logical cores - although PI CEO confirms from the past version PI is meant to be multi core aware.
Windows divides machines with over 64 cores into two (or more) NUMA nodes - each having and equal number of cores. The code under Windows in C++ to determine numa cores has to be slightly more sophisticated than that that Juan has shared to correctly how many determine logical cores a machine with over 64 cores has. So that is problem one - gettting the logical core count correct.
Problem two - making sure each core get the workload. Once you have over 64 cores - your programming has to be Processor or NUMA node affinity aware - else all work goes to the current NUMA node the main program started on.
So until this is sorted by PI I have decided on a simple workaround - turn off hyperthreading! This lowers the logical CPU count from 72 back down to 36 - and being under the 64 limit - PI then assigns all work to all processors.
Now Hyperthreading improves CPU resources by about 10% form memory - meaning 36 physical cores will perform on many workloads like 40 physical cores. But if switching it on means I am only using 18 physical cores - well I will take 36 physical cores over 36 logical ones representing only 18 physical cores.
My CPU scores doing this went from low 12,000 in PI to 15,500 - so I will take that gain.
Just have to see everything is stable now. With HT on - everything worked very reliably. When I first switched it off Windows didn't get past the splash screen teh first time, and halted with CPU in task manager later on. Now I am running a WBPP workload that took 3 hrs 15 mins last I ran it - see how it will perform this time!