Windows Tweaks (for OS, software and hardware)
Page 1 of 1
Frant
King's Bounty



Posts: 24433
Location: Your Mom
PostPosted: Sun, 23rd Jan 2022 22:34    Post subject: Windows Tweaks (for OS, software and hardware)
Since many of us have our own collection of tweaks and stuff to improve our experiences I thought we could use a thread where we share tweaks.

I'll start by sharing how to set hardware interrupts to use MSI (Message Signalling Interrupt) mode instead of the old linebased INT interrupts. When hardware/a driver is set to use MSI it will get a negative IRQ-number. The MSI interrupt format first arrived with PCI 2.2 as well as PCI Express.

Enabling MSI interrupts for your GPU or other hardware (some are reporting big improvements in how their mouse works which I guess has to do with enabling MSI for the USB controllers) for instance can improve latency for the GPU (in this case) as well as the latencies in the interrupt handlers used by Windows; ISR and DPC, the latter which can create a ton of latency for time-critical tasks like recording and processing high resolution/bitrate sound and many other tasks. Geforce cards have supported it for a long time but for some reason nvidia disable it in the registry (possibly to avoid incompatibilities with older hardware and laptops from what I've read). You will have to enable MSI for your NVidia GPU again after installing a new driver which is done in a few seconds with the utility I've linked to below.

https://en.wikipedia.org/wiki/Message_Signaled_Interrupts

Quote:
Message Signalled Interrupts (MSI) are an alternative in-band method of signalling an interrupt, using special in-band messages to replace traditional out-of-band assertion of dedicated interrupt lines. While more complex to implement in a device, message signalled interrupts have some significant advantages over pin-based out-of-band interrupt signalling.

...

While more complex to implement in a device, message signalled interrupts have some significant advantages over pin-based out-of-band interrupt signalling. On the mechanical side, fewer pins makes for a simpler, cheaper, and more reliable connector. While this is no advantage to the standard PCI connector, PCI Express takes advantage of these savings.

MSI increases the number of interrupts that are possible. While conventional PCI was limited to four interrupts per card (and, because they were shared among all cards, most are using only one), message signalled interrupts allow dozens of interrupts per card, when that is useful.

There is also a slight performance advantage. In software, a pin-based interrupt could race with a posted write to memory. That is, the PCI device would write data to memory and then send an interrupt to indicate the DMA write was complete. However, a PCI bridge or memory controller might buffer the write in order to not interfere with some other memory use. The interrupt could arrive before the DMA write was complete, and the processor could read stale data from memory. To prevent this race, interrupt handlers were required to read from the device to ensure that the DMA write had finished. This read had a moderate performance penalty. An MSI write cannot pass a DMA write, so the race is eliminated.


There's a tool specifically to enable/disable and configure MSI interrupt handling that I've used for quite a while simply called MSI Util V3. It's a simple .exe file that lists the available devices that you can enable MSI mode for (and change interrupt priority).

Download link (and forum article about the whole concept):
https://forums.guru3d.com/threads/windows-line-based-vs-message-signaled-based-interrupts-msi-tool.378044/

I simply enabled MSI for all the available items like this:


Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn!

"Thank you to God for making me an Atheist" - Ricky Gervais
Back to top
skx7




Posts: 1009

PostPosted: Sun, 23rd Jan 2022 23:23    Post subject:
Aka the big builtin malware removal topic Very Happy Will share my tweaks i use on my work machine tomorrow!
Back to top
Nui
VIP Member



Posts: 5720
Location: in a place with fluffy towels
PostPosted: Fri, 28th Jan 2022 17:06    Post subject:
@Frant
Is there any data that supports making these changes?
I could change 2 HD Audio Controllers and I have no idea I use one of them, and my GPU.


kogel mogel
Back to top
Frant
King's Bounty



Posts: 24433
Location: Your Mom
PostPosted: Fri, 28th Jan 2022 17:43    Post subject:
Nui wrote:
@Frant
Is there any data that supports making these changes?
I could change 2 HD Audio Controllers and I have no idea I use one of them, and my GPU.


It mainly improves latency since the interrupts work differently and won't bottleneck when there's a lot of interrupts happening to/from the bus. From what I've read the NIC (add-on or onboard) can get a boost from enabling MSI and setting priority to high. All hardware should use the MSI interrupt format these days anyway. I don't have any specific links since I've simply browsed around here and there, reading up on it etc. It won't suddenly make your PC a lot faster though, it can/will reduce the interrupt-latency for your hardware which obviously have some advantage for performance.


Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn!

"Thank you to God for making me an Atheist" - Ricky Gervais
Back to top
Page 1 of 1 All times are GMT + 1 Hour
NFOHump.com Forum Index - Operating Systems
Signature/Avatar nuking: none (can be changed in your profile)  


Display posts from previous:   

Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB 2.0.8 © 2001, 2002 phpBB Group