4

I'm aware of this question: ACPI.sys+23270 Thead using 12% CPU Usage [Win10]. I believe mine is more specific.

After a day or two of uptime of my system, interrupt handling suddenly starts consuming a significant fraction of CPU: around 1.1% of the total CPU compute power, which in my case (AMD Ryzen Threadripper 3970X) is nearly equivalent to one CPU core fully occupied just to handle interrupts.

I usually notice the problem simply by monitoring the total power consumption of my system (my Corsair HX1000i PSU provides an accurate reading of total power consumption at the wall). As soon as interrupt handling goes haywire, total power consumption increases by about 20W, significant enough that I can immediately notice something is up.

As per @magicandre1981's excellent answer to another question, I've recorded a system trace with Windows Performance Recorder and opened it with Windows Performance Analyzer. Here are the results:

Windows Performance Analyzer Screenshot

Clearly the culprit is the acpi.sys driver producing about 100K interrupts per second. As far as I can tell, no one really knows what this driver is actually being used for (something about power management, but what exactly?). If you do happen to know, please let us know.

Is there a way to find out which hardware device is producing the interrupts that acpi.sys then need to handle?

I've tried to disable a bunch of devices in Device Manager (all network interfaces and all audio devices) but to no avail.

Relevant system specs:

  • AMD Ryzen Threadripper 3970X
  • GIGABYTE TRX40 Aorus Xtreme
  • NVIDIA GeForce 2080 Ti Founder Edition
  • Windows 10 Pro version 1909, build 18363.815 [edit: 18363.1256]

Update [not so sure anymore]:

On closer inspection, it seems that the high interrupt rate starts occurring after Windows turns off the monitor (15 minutes in my case). As far as I can tell, that's the only power saving feature that happens on this computer. I was using the latest NVIDIA drivers (445.87). I reverted to older NVIDIA drivers (442.74) but that didn't solve the problem.

Update 2021-01-12:

Just started again today, here's the output of Latency Monitor: Latency Monitor Screenshot

I'm getting about 100K interrupts per second, and a whole core of my CPU is at 100% dealing with those interrupts (and, I imagine, dropping a few).

François Beaune
  • 97
  • 1
  • 3
  • 20
  • Try to [Disable Intel Turbo Boost Technology](https://www.geeks3d.com/20170213/how-to-disable-intel-turbo-boost-technology-on-a-notebook/). – harrymc Jan 12 '21 at 20:42
  • As stated in my post, I'm using an AMD Ryzen Threadripper processor. – François Beaune Jan 13 '21 at 11:41
  • 1
    Do you have the Ryzen chipset drivers installed? https://www.amd.com/en/support/kb/faq/chipset-install – HackSlash Jan 13 '21 at 20:52
  • @HackSlash Good question! I have something called `AMD Software` installed, I don't know if this is related to the chipset. I do see items like `AMG GPIO Controller` and `AMD PCI` in the System Devices section of the Device Manager. – François Beaune Jan 14 '21 at 15:55
  • 1
    I had a similar issue on a Surface Pro. I deleted the USB root hub (which will kill all your peripherals - the Surface has a touch screen, so I could reenable by doing a 'Scan for new hardware', but not sure what you can do otherwise). That would solve the issue for the rest of the day. – Anthony Jan 14 '21 at 22:32
  • @Anthony Interesting, thanks for chiming in. The thing is that my machine is otherwise working perfectly, weeks on end (I only reboot it about once a month to apply Windows updates). The problem only appears after a while (several weeks), seemingly at random... – François Beaune Jan 15 '21 at 12:57
  • Even if you are not anymore sure about it, you stated _"it seems that the high interrupt rate starts occurring after Windows turns off the monitor (15 minutes in my case)"_. Perhaps it may be useful to add monitor specifications. Have you tried another operating system (eg Linux) to get clues if there is a hardware request below this number of interrupt requests? If you have not, a software problem (possibly driver) is more likely. – Hastur Jan 18 '21 at 13:11
  • @Hastur It turns out that the problem continues to occur even after I disabled monitor sleeping in Windows. Haven't tried any other OS. Monitor is an ASUS ProArt PA328Q (32" 4K). – François Beaune Jan 18 '21 at 19:53

1 Answers1

0

There are very many reasons for this problem. I list below the advice I was able to find, but there is no guarantee that one relates to your problem.

  • Update the BIOS (carefully) and all drivers from the manufacturer website (especially the chipset driver)
  • If you have recently changed in the BIOS the Power option to ACPI, undo it
  • Disable devices to perhaps find a bad device or driver
  • Install Intel Rapid storage Technology (RST)
  • Disable Wake-on-LAN on your network adapter
  • In Power Options > Change plan settings, click "Restore default settings for this plan" and reboot
  • In Power Options > Change plan settings > Change advanced power settings expand PCI Express and set all sub-options to Off and reboot.
harrymc
  • 455,459
  • 31
  • 526
  • 924
  • If the problem disappears after a reboot and the computer otherwise works fine for weeks, then reboot is an easy workaround. – harrymc Jan 16 '21 at 08:36
  • True, however, when for some reasons it happens after a few days only (it happens seemingly at random, at least I haven't correlated the problem with anything I would do), then it forces me to either ignore the problem and have one core out of 32 running at 100% --not a huge deal but still...-- or to reboot early, which is really annoying. – François Beaune Jan 17 '21 at 22:32
  • Have you tried the points above? – harrymc Jan 17 '21 at 22:36
  • I didn't have a chance yet. I've tried some of these in the past, such as disabling devices, disabling wake-on-LAN and tweaking power plans, but without success. – François Beaune Jan 17 '21 at 22:43