A few things I'd love to see:
In case you're not familiar, the new Broadwell-E CPUs feature Turbo Boost 3.0, where a single core known to overclock well can have single threaded applications pinned to it and the frequency boosted much higher than the standard turbo frequency.http://www.intel.com/content/www/us/en/architecture-and-technology/turbo-boost/turbo-boost-max-technology.htmlhttp://www.anandtech.com/show/10337/the-intel-broadwell-e-review-core-i7-6950x-6900k-6850k-and-6800k-tested-up-to-10-cores/2
Intel requires an app to be downloaded to manage this, but it seems to me like process lasso could easily have this feature baked into it, but which much greater flexibility. I don't know if you can read the "favored core" straight from the BIOS, but worst case the user can select it. It may just be replicating the functionality of the existing software, but it is an unequivocal increase in speed, and for process lasso users it would be one less utility to install. Theoretically it could be useful even for non-Broadwell-E users, as pinning a single threaded app to a single core should increase cache locality.
As far as gaming mode goes:
The max frequency and disabled core parking of the bitsum highest profile help a lot, but it still doesn't completely eliminate stuttering, particularly when an intensive background process kicks in. I've found that pinning anything remotely capable of intensive background activity to a single "background" core eliminates a lot of these stutters. It certainly restrains the performance of those background processes, but they're rarely time sensitive. This eliminates most of the remaining stutters, but I find that pinning games to the other "non-background" core eliminates the rest. Many games remain CPU bound on a single thread, and I find that the thread bounces from core to core considerably less where there's less background activity forcing it to bump around. Theoretically it should lead to higher performance due to increased cache locality as well. It works well but I really only need this kind of extreme affinity control while gaming, but it's way too much work to constantly manage this. Theoretically I'd want literally everything but the game shoved onto a single core and out of the way of the game, but *only* when a game is running. Since process lasso already has the ability to detect the launch of a game, it should be able to trigger this on/off alongside game mode.
So my suggestion:
As part of game mode, allow users to set a single or set of "background cores", and when a game launch is detected, move everything that isn't that game onto those cores, background processes, browsers, etc. Also provide an option to move the game itself to the "non-background cores" - not a great idea on a dual or even a quad core because the loss of that core will hurt performance, but for those with 6-10 cores, they can spare one or two as very, very few games scale to that many cores. To my understanding this is how the consoles manage processes - the vast majority of the cores are dedicated solely to complete control of the game, and background processes are allowed to run only on a small subset of them, I believe only 2 of the 8 cores in the xbox one and PS4. Additionally, many games seem to perform slightly worse with hyperthreading enabled, so this feature could also be used to selectively disable hyperthreading when a game is launched. So for a 6-core haswell-E 5820K, a relatively popular high end processor for gamers, the game would be moved to threads 0,2,4,6,8 and background processes to 10/11.