The image below says it all:
This was taken on a MacBook with the Intel i7 4-core chip in it. There are actually just 2 “real” cores and both support hyper threading for a total of 4. As you can see, the new waterline code seems to keep all of them nearly full. The “offsetting” stage is responsible for the blip at the start where all cores are 100% used. I am not yet sure why the waterline cannot get similar utilization but I think that I’ll enjoy this for a while before digging into it any further..
I used a new method to implement the multicore support in this version than I’ve used in the past. It simplified everything a lot and I think I can quickly adapt it to the roughing code so that nearly all of the big tasks will support multicore in V4.
And just to head off the inevitable question, the MacBook is running Windows- there are no plans for a Mac version.