I want to open some programs in the startup without affecting the performance and I want to create shortcuts to them on my startup folder.
If I can do this with adding modifiers at the end of the location string, it would work well.
Super User is a question and answer site for computer enthusiasts and power users. It only takes a minute to sign up.Sign up to join this community
I did a quick google search and the following article popped up on top. Starting an Application with a specific affinity. Also, If you check out the command line of what "start" does and its switches it will show you how to start in normal, low, etc. You can set a batch file in your start up with the specific files to run as low priority and set it to use cpu core 1 or 2 or whichever.
There's this little tool I found some number of years ago named Prio. It's basically a "Priority Saver." That is, you can specify the priority level for an application then tell Prio to automatically restore this any time the application starts.
It's quite good -- I use it in conjunction with Mathematica so that the
MathKernel that launches doesn't accidentally eat up every single processing thread on my computer.
What's nice is because it remembers the priority for a given process, if you start multiple instances (as Mathematica does when it runs many kernels in parallel) they all start with the same priority.
So if you're doing development work in Visual Studio and set
devenv's priority to low, each instance of VS that launches will have that priority level.
For anyone else looking for answers to this and not finding any, the solution I found was to use an app called WinAFC (or AffinityChanger). This is a partial GUI, partial command line app that allows you to specify profiles for certain executables, and will poll the process list for them. If it finds matching processes, it will change the affinity of those processes according to the settings in the loaded profile.
There is some documentation here: http://affinitychanger.sourceforge.net/
For my purposes, I created a profile that looked like this:
TestMode = 0 TimeInterval = 1 *\convert.exe := PAIR0+PAIR1
This profile sets any convert.exe process to use the first two CPU core pairs (CPU0, CPU1, CPU2, and CPU3), polling every second.
TestMode is a toggle that allows you to see if your profile is working without actually setting affinities.
Hope someone finds this useful!