How-To Geek

How To Force Windows Applications to Use a Specific CPU


Channing a process’s affinity means that you limit the application to only run on certain logical processors, which can come in terribly handy if you have an application that is hogging all the CPU. Here’s how to choose the processor for a running application.

We’ve previously written about how to create a shortcut that forces an application to use a specific CPU, but this is a way to change it on the fly.

Note: For the most part we do not recommend you changing these settings, and to rather let Windows manage them.

Changing a Process’s Affinity

Right-click on the Windows taskbar and launch Task Manager.


Then switch over to the details tab.


Find your process in the list, right-click on it and choose Set affinity from the context menu.


You will see by default all apps are allowed to span all the processors in your PC.


Just uncheck the ones you don’t want it to run on and you are good to go.


That’s all there is to it.

Taylor Gibb is a Microsoft MVP and all round geek, he loves everything from Windows 8 to Windows Server 2012 and even C# and PowerShell. You can also follow him on Google+

  • Published 08/27/12

Comments (15)

  1. PhantomTurtle

    Can this also be done on Linux?

  2. guest
  3. David

    Is this for Win7? I’m running Windows 7 Pro 64-bit SP1, and I don’t have a details tab on my task manager.

  4. SatoMew

    @David, that’s because the Geek provided instructions for Windows 8 and its new Task Manager.

    >implying most people will use Windows 8
    Shame on you, Geek! :P

    In Windows 7 and prior, go to the Processes tab in the Task Manager. The rest of the process is the same.

  5. mrwild8

    Wow! Windows 8 comes out and they are assuming that we all have the money and time to upgrade to it ALREADY and never mind all those L0s3rs still running that Old Windows 7 system…..

    Hey, how’s about just a small font message that says it’s for WIndows 8, please? Something….

  6. r

    could be rather important if you are going to try this:

    -Processor affinity does reduce problems with cache but it does nothing for load-balancing problems (ie: workload distributed across multiple computers or a computer cluster, network links, disk drives, CPU’s or other resources) for optimal resource utilization, minimize response time, maximizing throughput & avoiding overload.

    -It’s recommended that one not change the Process Affinity for system processes.

    -when you close an application or restart the computer, the affinity returns to the default.

  7. Ron McNichol

    The details (and a few other) tabs don’t show up when I run taskmgr.exe, even as admin. I was not able to find any menu items or runtime switches to control this.

    I was able to do the job under the processes tab and right clicking on the process (perfmon in this case).

    Thanks for the tip.

    P.S. I also made a batch file to do this as per the tip referred to in this article, just as a reminder for future reference.

  8. Ron McNichol

    PPS: I just saw another of the messages that alludes to the fact the pictures might be from Windows 8. My way works on Windows 7, and the tip I looked up to help me referred to Windows XP, so I guess using the Processes Tab works on both.

  9. PhantomTurtle

    @guest That seems easy. I wonder if there is a GUI…(Doesn’t matter though, terminal is faster any ways)

  10. David

    @SatoMew – Thanks, I clicked around and figured that out too. I’m going to give Taylor the benefit of doubt and assume he just forgot to put “for Windows 8” in the title. Although there have been a ton of Win8 articles lately…

    @r – Thanks, good info!

  11. Yawhatever

    When Windows 8 comes out, even at $40 a pop, I think I’ll be passing on it at least until I’m forced to adopt it – which may be a day or two after.

    But really. Windows 8 is not even out yet! And anyone with a RTM version (like the one in the examples) is probably NOT reading HTG. They’re probably over at TechNet or another Microsoft run site.

    So with that in mind, is there any way we can do this in Windows 7, Vista or even XP?! I could ask about “Windows” 3 but I don’t think that supports multi-core processors. Does it?!

    I may not like to ‘judge a book by it’s cover” but then I do like to have a CLUE from the title.


  12. Keith

    Just a correction. Channing should be Changing .

  13. rangerevo8

    anyone know what is this used for?
    had tried it on windows 7 long ago but found no reason why should force it to specific cpu core/thread.

  14. Riddle

    Guys , does anyone here have experience with this on an AMD CPU (or an APU , as they call it now )
    I’m wondering because AFAIK operating systems cannot distinguish between two cores inside one bulldozer (or piledriver ) module and two cores from distinct modules .
    the two cores share the same floating point unit , fetcher , decoder and cache . That might cause the OS to put strain on one bulldozer module while it thinks it’s using two distinct cores ..
    you may look at this

  15. willard west

    Task manager still shows the application jumping around to different cores…Windows 7.

    Any suggestions..?

More Articles You Might Like

Enter Your Email Here to Get Access for Free:

Go check your email!