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

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

  1. limeay

    limeay Active Member

    Messages:
    64
    Likes Received:
    1
    GPU:
    Nvidia GTX 1080 Ti
    Okay gotcha. Also wondering as everytime i ask a question and its answered, whether i understand it or not is the question :D.

    1. Okay to the point, should i leave the other devices at default if i never set them to High priority or should i set them to Normal, low in that order...

    So far I've changed all 4 of these devices i require the most to High Priority and i like the feeling and am trying to continuously figure out whether below is a better way of achieving lower input lag/DPC for certain devices in a proper right way.

    More defined understanding: NOTE:** I have 7 devices total, *NIC, *Nvidia drivers, *XHCI, *AHCI Controller, *Two HD AUDIO controllers, *Intel MEI
    • Either i could leave it as high priority for all of my 4 devices i have listed said above.
    • Either list all the 4 devices in High Priority, normal and low priority & not reuse any of the other priorities... (Q: Should i ever use low priority for a device i care to for in priority if i leave all the others at default?)
    • Either i list all 4 devices as such, XHCI & Nvidia in High Priority, and NIC and AHCI in normal and the unlisted can be left on low or default?
    2. Also questions arise once again, if i set any of these with some type of value, what other system or anything on the OS level or such require interrupts? Everything requires interrupts, correct? So in essence, leaving anything on high, normal might incur dpc for other "Stuff" (don't know what to call these stuff) like OS, wdf01000.sys and anything else in there.

    3. What does undefined truly mean? Does that just mean Normal?
     
    Last edited: Jan 4, 2019
  2. mbk1969

    mbk1969 Ancient Guru

    Messages:
    15,541
    Likes Received:
    13,561
    GPU:
    GF RTX 4070
    Same here.
     
  3. mbk1969

    mbk1969 Ancient Guru

    Messages:
    15,541
    Likes Received:
    13,561
    GPU:
    GF RTX 4070
    Leave DPC out of this priority tweak. DPC is the second stage of interrupt servicing. The first stage is ISR - Interrupt Service Routine - that`s the first code of device driver called by OS kernel when device raises interrupt. This ISR code should do:
    • some research about raised interrupt
    • then it should schedule the second stage - DPC routine
    • then it should finish/exit/leave
    - and while ISR routine is executed the processor (core) is elevated to priority level (assigned to that device) disabling the servicing of new interrupts of the same or lower priorities. After ISR is completed the processor is dropped to the priority level which was before the interrupt.

    And leave "wdf01000.sys" out of this too - it is not a device, it is part of driver framework created to simplify drivers development.

    I doubt Intel MEI needs any priority tweaking.
    As for other devices I can only guess, as I am not a device driver programmer (or OS kernel programmer). When you raise the device interrupt priority you improve chances of ISR to be executed in one take - without pre-empting by other interrupt from device with higher priority. But also you improve chances of device with the same high priority to be delayed in servicing its interrupt. In other words:
    • on one hand the higher priority of the device the better chances its interrupts will be serviced ASAP
    • on other hand the less devices with the same high priority the better chances for their interrupts to be serviced ASAP - because of lower concurrency.

    It means "by default" which most probably is "normal" for most devices. It can be that by default some classes of devices get lower priorities, and some - higher priorities.
     
  4. limeay

    limeay Active Member

    Messages:
    64
    Likes Received:
    1
    GPU:
    Nvidia GTX 1080 Ti
    Edit: will recheck.
     
    Last edited: Jan 5, 2019

  5. mbk1969

    mbk1969 Ancient Guru

    Messages:
    15,541
    Likes Received:
    13,561
    GPU:
    GF RTX 4070
    You dramatize too much. Devices do not suffer. And this tweak is completely controllable.
    Overall I reckon MSI and priority tweaks as a troubleshooting means, not as a performance tweaks.
     
  6. limeay

    limeay Active Member

    Messages:
    64
    Likes Received:
    1
    GPU:
    Nvidia GTX 1080 Ti
    Sorry. I've been looking for tweaks to use and tried them out yesterday, all day but seems like it wasnt useful until I turned them back to default and then played bf4 but so I played them all day, i got used to the latency which was extremely bad for some reason so hard to control anything. I was being outshot every game.

    Twice in 4 days my game locks up. Might be due to messing with system devices before uninstalling devices before and reinstalling intel mei, and so on because as I uninstalled Pci Express root, then it made my video card drivers default to basic and nic to go offline which caused couple problems i had to refix. Reinstalled drivers did its job though.

    I was playing bf4 I think the game was some what controllable with it on default by then since getting used to it all day but when I went to high priority for 1-4/5 if not all devices it felt like it was more stable but also a bit more latency so I turned it off. Trying typically xhci as my main devices to leave on high it felt a bit better but not by much, maybe 5 shots better. Its noticeable but then I felt a little more used to these settings and I had issue with video card/NIC faulting back to normal settings could maybe cause latency issues or w/e... I went and uninstalled the nvidia drivers with ddu and reinstalled, reeenabled msi, nvidia profile inspector and it felt back to normal latencies which is good. I haven't done any retweaks again to check...

    I will retest. Sorry for making it sound like your hard work went to waste. ^ no excuses above, this actually happened and didnt think much of it before.

    EDIT: Going to leave 5 device's on High Interrupt Policy. Seems the best so far, everytime i choose to enable another device to high it seems to make panning around in shooters alot more smoother & my mouse is less likely to stick to the mouse mat.
     
    Last edited: Jan 6, 2019
  7. artina90

    artina90 Member Guru

    Messages:
    148
    Likes Received:
    58
    GPU:
    RTX 3080Ti
    I have always had my GTX 1080 in MSI mode and now after setting the interrupt priority to high I don't notice any difference.
    However, the interrupt priority has definitely improved my mouse responsiveness. The improvement is so remarkable it feels like I got a different mouse.
    The only devices I set to high are the USB controller the mouse is attached to (identified via irq number + device manager), the PCI express port the GPU is attached to and the GPU itself.
    Great job mbk.
     
  8. EdKiefer

    EdKiefer Ancient Guru

    Messages:
    3,128
    Likes Received:
    394
    GPU:
    ASUS TUF 3060ti
    not sure I follow, you say you set GPU to high but then you say it didn't make any difference, why change?
    I understand USB/mouse, so in the end, you altered 3 driver interrupts to high.
     
    Smough likes this.
  9. artina90

    artina90 Member Guru

    Messages:
    148
    Likes Received:
    58
    GPU:
    RTX 3080Ti
    I had to test it, I am just reporting the results.
    The mouse was the only one where the change in priority improved its performance.
     
  10. EdKiefer

    EdKiefer Ancient Guru

    Messages:
    3,128
    Likes Received:
    394
    GPU:
    ASUS TUF 3060ti
    Ok, thanks for the explanation.
    Was this an Intel USB controller or 3rd party, like ASMedia one?
     

  11. artina90

    artina90 Member Guru

    Messages:
    148
    Likes Received:
    58
    GPU:
    RTX 3080Ti
    It's an Intel USB 3.0 controller
    PCI\VEN_8086&DEV_A2AF&SUBSYS_7A931462&REV_00
     
  12. mbk1969

    mbk1969 Ancient Guru

    Messages:
    15,541
    Likes Received:
    13,561
    GPU:
    GF RTX 4070
    That big difference? I have not expected...
     
  13. artina90

    artina90 Member Guru

    Messages:
    148
    Likes Received:
    58
    GPU:
    RTX 3080Ti
    Yes, it's extremely noticeable.
    I am using a wired G Pro and although it has always performed well, after applying the the fix it now feels much more responsive.
    The tweak probably got rid of what little latency there was left.
     
  14. Nawafwaba

    Nawafwaba New Member

    Messages:
    5
    Likes Received:
    0
    GPU:
    Nvidia 1070
    can we fake this driver

    wdf01000.sys

    to get in msi mode ?

    like create registry key for it or something like that
     
  15. mbk1969

    mbk1969 Ancient Guru

    Messages:
    15,541
    Likes Received:
    13,561
    GPU:
    GF RTX 4070
    You are obsessed with this wdf01000.sys driver.
    Drivers do not work in MSI mode by themselves, PCI device works either in MSI or legacy mode and its driver should be aware of it.
    Windows incorporates plug-and-play manager which enumerates buses and devices on motherboard, and even if you will create such registry keys with proper values it will not be used because there is no actual device.

    You should identify device driver which uses this wdf01000.sys and troubleshoot it instead. Use this method
    https://forums.guru3d.com/threads/simple-way-to-trace-dpcs-and-isrs.423884/
    and post text DPC, ISR reports here (between spoiler tags (just in case you are not aware of them)).
     

  16. Astyanax

    Astyanax Ancient Guru

    Messages:
    17,016
    Likes Received:
    7,353
    GPU:
    GTX 1080ti
    wdf01000 is not a driver, it is a device filter.
     
  17. sidi0us

    sidi0us Active Member

    Messages:
    54
    Likes Received:
    12
    GPU:
    Intel HD4000
    Hi, I just wanted to say thanks for this awesome tweaks, I've been using them for a few years now, on every system I had they always fixed some stuttering or audio popping/crackling issues. Your latest interrupt affinity and priority tweaks helped my current rig even further, I've had some stuttering in Battlefield 5 in cinematics and also some frame drops in AC: Origins, both fixed, games are buttery smooth.

    I had everything running in MSI mode and I've enabled high priority for Intel USB xHCI Host Controller and also Intel RST (also has DevicePolicy=5). My fiio usb dac doesn't have any drops with asio drivers after the tweaks and weird enough, mouse seems smoother now?! Thanks again.
     
  18. mbk1969

    mbk1969 Ancient Guru

    Messages:
    15,541
    Likes Received:
    13,561
    GPU:
    GF RTX 4070
    @sidi0us

    You are welcome.

    Which one FIIO DAC? I recently bought Q5 with "AM1" AMP module. It was upgrade from old E17 Alpen.
     
  19. EdKiefer

    EdKiefer Ancient Guru

    Messages:
    3,128
    Likes Received:
    394
    GPU:
    ASUS TUF 3060ti
    Well, I tried high priority on ASmedia USB 3.0 host controller. I did it to see if any improvement in mouse control when CPU% goes above 80+% my mouse movement gets stuttery.
    So far I am not seeing any difference but will keep it on for a few days to give it time. It is pretty rare I get above 80% when I cap fps to 63
     
  20. sidi0us

    sidi0us Active Member

    Messages:
    54
    Likes Received:
    12
    GPU:
    Intel HD4000
    Nice, I'm still rocking the old E10K until the newer K3 arrives, I hope it will be a little bit better with newer and more stable drivers as well. Can't wait to try some DSD files...

    Are you happy with yours, was the sound signature changed much from the E17?

    @EdKiefer

    I only have intel usb enabled, I can definitely tell the difference. I also have a wireless mini keyboard with trackpad on it, it has a wifi usb dongle and before the trackpad was always jerky, now it's completly smooth...
     
    Last edited: Jan 12, 2019

Share This Page