24-core CPU and I can't move my mouse
The more cores and the slower the mouse gets.
Tech blogger Bruce Dawson has discovered that 24-core (48-thread) Windows 10 rig was having problems everytime he built Chrome.
Sometimes the mouse become stuck for a little over one second. It was not the cores themselves which were chugging along at 50 percent, so Dawson thought, and started carrying out performance traces on Windows.
He eventually discovered that the function NtGdiCloseProcess(), responsible for Windows process exit and teardown, appears to serialize through a single lock, each pass through taking about 200 microseconds each.
If you have a job that creates and destroys a lot of processes very quickly - like building a large application such as Chrome - it is going to create a big mess. The problem gets worse the more cores you have.
"Adding more cores to my workstation makes the UI less responsive. That is because Chrome's build system is smart enough to spawn more processes if you have more cores, which means that there are more terminating processes fighting over the global lock. So it's not just "24-core CPU and I can't move my mouse" it's "24-core CPU and therefore I can't move my mouse", he wrote.
The issue apparently doesn't exist in Windows 7.
"I'd noticed that this problem seems to be worse when my computer has been running for a while so I rebooted and ran the test as soon as my laptop had settled down. The process-shutdown serialization is indeed less severe, but the issue is still clearly present on the freshly rebooted machine", he wrote.
Microsoft has been informed of the problem and is investigating.