TL,DR version: It's a hoax. Don't bother.
Clarification: harrymc's script will certainly generate the indicated .reg file! But adding these values to your registry will have no effect on your machine at all. (Won't help; won't hurt either.)
There is no code in Windows that will pay any attention to these registry values. It just isn't there.
There is a value in the PriorityControl
key called Win32PrioritySeparation
. This is used to specify variations in the scheduler's timeslice for Server vs. "client" Windows systems and, on client systems, for the process that owns the foreground window vs. all others. (The details on this are of course in Windows Internals by Solomon, Russinovich, et al.)
But that's the only thing that Windows looks at, or looks for, in this key. All of these carefully-created "IRQ_nn_Priority" values will just be ignored. You can create a value in there called ComeOnMicrosoftMakeMyMachineFaster
and it will have exactly as much result.
history
This hoax goes back to at least Windows XP time, when large numbers of desktop users were moving from Win9x to XP and dozens of "XP tweak" sites appeared. Many of them breathlessly promised that setting "IRQ8Priority" to 1 would improve performance by giving preference to the system's timer interrupts. Maybe this was a valid setting for one of Win9x's configuration files; I wouldn't know. Or maybe for yet some other OS. But not for the NT family (NT 3.1 through Windows 10).
(Note that the story has shifted. Back then the myth was that setting "IRQ8Priority" to 1 would have the device on that IRQ the highest priority. Now the myth has expanded and you can set different "priorities" to many different IRQs, and 1 is now the lowest priority! Uh huh.)
Back in 2003 I asked one of Windows' HAL and platform support lead developers about this. He confirmed that it's completely bogus. Nor could he think of any reason for anyone to have ever thought that anything remotely related could ever have existed.
Conclusion... someone made it up out of whole cloth.
If you want to confirm that Windows doesn't look at this, just use the sysinternals tool "Process Monitor" (procmon), set it up to monitor registry access from boot, and look for accesses to any registry values in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\PriorityControl
other than to Win32PrioritySeparation
. You won't find any.
By the way, "priority" in Windows is an attribute of threads. But interrupt handlers aren't threads, so they don't even have "priorities" to begin with.
Find ProcMon here. You'll need to have admin privs to use it.