Windows: Line-Based vs. Message Signaled-Based Interrupts. MSI tool.

Discussion in 'Operating Systems' started by mbk1969, May 7, 2013.

  1. mbk1969

    mbk1969 Ancient Guru

    Messages:
    13,141
    Likes Received:
    11,349
    GPU:
    GF RTX 3060TI
    @amymor

    It is not clear how to test interrupt priorities tweaks beside actual gameplay (if you are about games).

    On Win10 and Win8 you can turn all devices to MSI mode because a boot storage devices are on MSI mode by default. On Win7 storage devices do not support MSI mode.
    And be aware that NV cards of older generations (2xxx, 1xxx, ...) are turned back to legacy mode with each driver installation.
     
  2. amymor

    amymor Member

    Messages:
    42
    Likes Received:
    9
    GPU:
    1060
    thank you for your response, so i will enable msi mode for all, but what about priority and other values like max limit, limit?
    also i plugged my mouse and keyboard to usb2.0 ports and my modem-usb to usb3.1 port(i heard form many people that usb2.0 is better for mouse and keyboard). is there any difference for 16-24Mbps modem-usb in usb3.1 vs usb2.0 in terms of latency? if not, can i lower USB 3.1 Controller priority or even turn off usb3.1 ports through bios and use usb2.0 instead?
     
    Last edited: Aug 16, 2022
  3. mbk1969

    mbk1969 Ancient Guru

    Messages:
    13,141
    Likes Received:
    11,349
    GPU:
    GF RTX 3060TI
    We know little about priority. We can assume that too many devices with high interrupt priority can start to compete with each other.
    Limit and max limit values are relevant only for devices with multiple IRQs (like NVMe). Limit value allows you to hint to device driver to use single (or simply less) IRQ instead of multiple ones.

    In absence of physical USB2.0 controller all USB2.0 and USB3.0 ports lead to the same USB3.0 controller. Inside the controller one USB2.0 port and one USB3.0 port can share so called USB connector. In such case two ports are called a companion ports and USB connector implements so called port routing.
    https://forums.guru3d.com/threads/mouse-guide.335510/page-14#post-5918816
    It can be that USB ports without companions are better.

    No need to use USB3.1 controller for keyboard/mouse. Only for USB3.1 storage.
     
    Last edited: Aug 16, 2022
    Coldblackice and amymor like this.
  4. amymor

    amymor Member

    Messages:
    42
    Likes Received:
    9
    GPU:
    1060
    @mbk1969 in usbview i saw my companions ports, but i think i have one usb controller. here is my usb ports in device manager (view by connection):
    usb.PNG
    so i think if i disable usb controller in bios i will lose all my usb ports, but how about disabling only usb3.1 ports( highlighted with blue color) trough device manager? is it good idea?

    also i enabled msi mode on all device and rebooted, here is result:
    MSI-edited.PNG
    did you have any further suggestion like changing SATA AHCI priority (because i install windows 10 and important programs on SATA SSD) or changing limit for some devices?

    also someone in discord said me that "change NVMe to undefined because it can cause problems, so you should set all to undefined and enable msi mode"
     

  5. mbk1969

    mbk1969 Ancient Guru

    Messages:
    13,141
    Likes Received:
    11,349
    GPU:
    GF RTX 3060TI
    No. Leave all USB ports as is. Just try to connect keyboard and mouse to USB2.0 ones without companions. When you connect USB device in port with companions it has to use port routing logic (in controller) and there should be no difference - USB2.0 or USB3.0 port it was.

    You can set SATA AHCI controller to high priority - that is the default case for rigs without NVMe storage.

    Usually you believe in default settings of device drivers for NVMe. And if you see real problems you can toy with settings (not because someone told you).
     
    Coldblackice and amymor like this.
  6. XPMK4

    XPMK4 New Member

    Messages:
    5
    Likes Received:
    0
    GPU:
    RTX 2060 SUPER
    Wow, didn't think enabling MSI Mode would make such a difference! Wish I knew about this earlier.
    Resizing windows now feels way more fluid and it feels like I just upgraded to a RTX 30 series card.

    At first it didn't feel as smooth compared to emulated IRQ, but after setting my 2060S to "High" Priority, it was starting to feel better.
    The biggest difference was setting my "Samsung NVM Express controller" from "High" to "Undefined" Priority and now games feel as smooth and responsive as games with Nvidia Reflex. No more microstutters too in games like CyberPunk.

    After benchmarking, it doesn't seem like my 970 Evo Plus took a hit in performance but is there any reason why it is set to "High" priority by default?
     
  7. mbk1969

    mbk1969 Ancient Guru

    Messages:
    13,141
    Likes Received:
    11,349
    GPU:
    GF RTX 3060TI
    By the will of its drivers developers.
     
  8. XPMK4

    XPMK4 New Member

    Messages:
    5
    Likes Received:
    0
    GPU:
    RTX 2060 SUPER
    I see. Are there any downsides to changing device priority?
    What about reducing the "Limit" from 2048 to something more reasonable like 8 for the Samsung NVM Express controller? Since it uses 33 which is way more than the 8 threads I have in my system.
     
  9. mbk1969

    mbk1969 Ancient Guru

    Messages:
    13,141
    Likes Received:
    11,349
    GPU:
    GF RTX 3060TI
    Only one - we are not sure how exactly that tweak works and how to measure its effect.

    If NVMe controller utilizes multiple IRQs like network card - assigning each IRQ to separate CPU core and then servicing different network applications through separate IRQ - then it is logical to use as much IRQs as CPU cores in the system. But who knows whether this is the case... Fortunately there are benchmarks for storage devices, so you can experiment.
     
  10. XPMK4

    XPMK4 New Member

    Messages:
    5
    Likes Received:
    0
    GPU:
    RTX 2060 SUPER
    Funnily enough, lowering it down to just 1 IRQ doesn't seem to affect anything, all the benchmarks from CrystalDiskMark were within margin of error. Maybe a single consumer PCIe 3.0 NVMe drive isn't enough to saturate even one MSI? Perhaps the driver sets it to 33 just to activate MSI-X?
     

  11. gQx

    gQx Member

    Messages:
    47
    Likes Received:
    10
    GPU:
    2060/6144
    are there msi-x drivers? I thought msi-x not supports drivers yet
     
  12. mbk1969

    mbk1969 Ancient Guru

    Messages:
    13,141
    Likes Received:
    11,349
    GPU:
    GF RTX 3060TI
    No.

    No. Both MSI mode and MSI-X mode are ancient things - they were developed back in ancient PCI bus days.
     
  13. EdKiefer

    EdKiefer Ancient Guru

    Messages:
    2,845
    Likes Received:
    320
    GPU:
    ASUS TUF 3060ti
  14. gQx

    gQx Member

    Messages:
    47
    Likes Received:
    10
    GPU:
    2060/6144
    they are a little late to the party like me :) "powersettingexplorer tool removes %5 percent lock" it translates I should try that too
     
  15. mbk1969

    mbk1969 Ancient Guru

    Messages:
    13,141
    Likes Received:
    11,349
    GPU:
    GF RTX 3060TI
    There is error in article:
    The whole thing does require reboot, so not "in real time".
     

  16. EdKiefer

    EdKiefer Ancient Guru

    Messages:
    2,845
    Likes Received:
    320
    GPU:
    ASUS TUF 3060ti
    Yup, while it updates the reg you do need to reboot so driver goes to MSI IRQ.
     
  17. X7007

    X7007 Ancient Guru

    Messages:
    1,805
    Likes Received:
    63
    GPU:
    ZOTAC 4090 EXT AMP
    how do I reset the interrupt priority to default? I think even removing the device didn't restore it to default, I don't remember what was the priority for my Mellanox 4 LX network card and the Intel USB3 suppose to be undefined right?
     
  18. mbk1969

    mbk1969 Ancient Guru

    Messages:
    13,141
    Likes Received:
    11,349
    GPU:
    GF RTX 3060TI
    "Undefined" will remove setting from registry and device drivers will use device`s default. There is another default value - what was specified in device drivers inf-file. So you can find device drivers inf-file and see there.
     
  19. XPMK4

    XPMK4 New Member

    Messages:
    5
    Likes Received:
    0
    GPU:
    RTX 2060 SUPER
    Are there any downsides to lowering the number of MSI?
     
  20. mbk1969

    mbk1969 Ancient Guru

    Messages:
    13,141
    Likes Received:
    11,349
    GPU:
    GF RTX 3060TI
    Depends on usage pattern of multiple IRQs. For example, network cards can assign each IRQ to separate CPU core, and then each IRQ can be assigned to separate process (https://docs.microsoft.com/en-us/wi.../network/introduction-to-receive-side-scaling).
    What NVMe or USB controllers do with multiple IRQs I do not know.
    So to answer your question we have to know exact mechanics in device drivers.
     

Share This Page