There are 2 different issues. The "CCX hopping" would also be a problem with Core 2 quad which was 2 dual core in one package. Perhaps also a problem with
Xeons of more than 10 cores, as they are in 2 "rings". It probably did not occur with Vista or Win7 that were of the Core 2 era. Win10 is probably designed for i7, so is not optimal for Zen or Bulldozer (but would multitask well on a Phenom II X6 that is one chip).
SMT is another thing. I do number crunching and I turn off hyperthreading on an i7 to make sure parallel threads run on physical cores, not a logical SMT core.
I don't think disabling SMT would solve CCX hopping, if Win10 is obsessed with load balancing.
If you have a game designed for quad-core and run it on Ryzen, you would want to assign it to 4 cores on the same CCX and lock them there.
I am not familiar with Mercury or Lasso, but hope this is what they can do.
Yep; older games run faster with Win7 on Ryzen due to the more suitable NUMA aware scheduling IMHO.
SMT is a separate issue:
Here the OS and/or older games/software thinks each thread is a real physical core and that slows things down.
What Project Mercury is doing is keep threads down to one thread per physical core until there are more threads than there are cores per CCX. Then it will add a 2nd thread on the same CCX.
(There seems to have been an update that partially fixes these issues built into one of the recent windows updates. People are seeing 35% increase in older games like CSGO etc. So this issue may be semi solved..?)
Then there's this video showing a Ryzen with RAM OCd to 3600 MHz. Its on par with a 7700K @ 5 GHz!
This shows what a decrease in inter CCX latencies and increase in throughput on the Infinity Fabric bus can do for cache data following after an inter CCX thread hop.
Imagine what happens when there is no inter CCX thread hop!
All these issues seem to be being quietly fixed by windows updates and/or game/software updates, but older software may never get updated.
I think Project Mercury is still worth a try due framerate increases etc I've glanced at in quick searches.
It would be great if people would test and post, but that just isn't happening as much as I thought it would..?