Windows 10 has a lot of options that you can mess around with to get better performance. Windows 10's Processor Affinity and CPU Priority features are some of its most ingenious, and while they aren't a silver bullet for instant performance boosts, they will make a difference if you have aging hardware.

Given how sensitive the processes are, you should only set Processor Affinity and CPU Priority if you are comfortable with things going south. However, if you're willing to tweak your system to be the absolute best that it can, let's explore how to set the Processor Affinity and CPU Priority in Windows 10.

What Is Processor Affinity in Windows 10?

Every OS has an underlying scheduling algorithm. The scheduling algorithm is responsible for distributing computer resources to different processes or threads. In Windows 10, there can be hundreds of processes running at the same time.

The CPU can’t handle all of these processes simultaneously, so the scheduling algorithm manages these processes and assigns them CPU time based on several factors.

As such, Processor Affinity can be thought of as a user meddling with the scheduler. Normally, Windows’ scheduling algorithm decides which process will run on which CPU core. If you set Processor Affinity manually, you can force a process or thread to run on any core you like.

Put simply, Processor Affinity allows you to assign one or more CPU cores to any processes or threads of your choosing. The processes or threads you set the affinity for will only run on the specified cores.

However, this won’t make the cores exclusive to those processes only. Windows can still assign different processes to those cores. Setting the Processor Affinity only affects the processes you choose by making them run only on the assigned cores.

What Is CPU Priority in Windows 10?

Like we’ve explained above, there can be hundreds of processes or threads competing for CPU time at any given time in Windows 10. To make sure important processes and threads get priority access to CPU resources, Windows schedular assigns priority to each process and thread running on the OS.

For instance, Windows’ scheduling algorithm gives a high priority to critical Windows processes like System and Windows Explorer. If these processes are in a queue, they will get access to the CPU before low priority processes.

Related: Windows Task Manager Processes You Should Never Kill

So, when you manually set the CPU Priority of a process to high, the Windows schedular will make sure that process gets priority access to CPU resources.

Finally, CPU Priority is quite different from Processor Affinity. Where setting the CPU Priority of a process informs the schedular how to treat that process, setting the Processor Affinity locks a process to specific CPU core/cores. With the Processor Affinity set, even if the process has high or low priority, it will run on specified core/cores.

Why You Might Want to Assign Programs to Specific CPU Cores

One of the biggest problems that modern computing has to face is a large number of single-threaded programs. Even in 2021 where most processors are quad-core or above, some programs only take advantage of one of the many available cores.

Related: Intel Core i3 vs. i5 vs. i7: Which CPU Should You Buy?

This presents a problem for modern OS schedulers: how do you schedule single-threaded processes on multi-threaded processors without breaking compatibility?

For the most part, modern schedulers efficiently schedule single-threaded processes on modern CPUs. But there are times when a legacy program breaks because of poor compatibility. This is where setting Processor Affinity can help.

Processor Affinity restricts processes to executing on the specified CPU cores. In the case of legacy single-threaded programs, you can restrict such processes to one CPU core by setting Processor Affinity.

Aside from this, folks with weaker machines can also benefit from setting a high priority for their important tasks. For instance, if you are a video editor, you can set your rendering program to a high priority before starting a video render. That way, when you want to render a video, Windows knows to dedicate most of its attention to churning through your vid.

How to Set CPU Affinity and CPU Priority

To set Processor Affinity and CPU Priority, you’re going to have to open the Task Manager and go on from there.

So, open Task Manager by right-clicking on the Windows 10 taskbar and selecting Task Manager. Then navigate to the process that you want to set the affinity for.

Next, right-click on that process and choose Go to details.

Setting affinity in Task manager

The process that you choose will be highlighted in the new panel that pops up. Right-click on the highlighted process and select Set affinity. The Processor Affinity panel will now pop up.

Setting Processor Affinity in Task manager

In the Processor Affinity panel, deselect the CPU cores that you don’t want the process to execute on. Afterward, click on Ok. The Processor Affinity will now be set and the process you chose will only run on the selected CPU cores.

Setting Affinity in Task manager

To set CPU Priority, right-click on any process in Task Manager and select Go to details.

Next, right-click on the highlighted process and click on Set Priority.

Setting Priority in Task Manager

Now, choose priority from the list that pops up. If you want your process to run as soon as it needs, select Realtime.

However, choosing Realtime will result in other, possibly critical system processes waiting in the queue. This can lead to a general system slowdown in the mildest and a complete system failure in the worst case, so be careful when setting a process to Realtime priority.

Setting CPU Priority

High priority, on the other hand, is safer to select as long as you don’t put too many processes on high priority.

The other options on the list, namely Above normal, Normal, Below normal, and Low, are self-explanatory.

Don’t Set Processor Affinity and CPU Priority If You Don’t Know What You are Doing

You should only set Processor Affinity and CPU Priority if you know what you are doing. The increase in performance, although major in some cases, is not worth the troubles you can experience if something goes wrong. From slowdowns to random system crashes, setting the affinity and priority should only be your last option.

Processor Affinity and CPU Priority aren’t the only ways to increase Windows 10 performance. There is a myriad of both hardware and software tricks that you can use to get some performance out of your aging hardware.