Slow Internet Speeds With Adguard Enabbled

I love all AdGuard products, except the Windows one... It really does suck. If you want fast filtering with DNS-over-HTTPS, you can get the latest version of YogaDNS. I allows you to create hosts file (based on Windows hosts files) to block ads, but without AdGuard slowness. Instead of acting as a local proxy server, YogaDNS acts as a DNS driver. It takes some to learn how to use it, but the end-result is excellent!
 

Boo Berry

Moderator + Beta Tester
Moderator
Personally, I've never been able to reproduce any slowness. Granted my internet speed isn't as fast as some of you guys (it's only 60/5) and my speeds are exactly the same with and without AG for Windows. I'm assuming there's a threshold that when hit, this starts to become an issue.
 

tox1c90

Beta Tester
The reason why it's slowing down is pretty simple, at least on my PC. If I have a gigabit download running, adguardsvc.exe in conjunction with the "System" process is taking 80-100% CPU utilization (on a 6-core Core i7 8700k CPU), like Adguard process ~60-70% and System process ~20-30%. You can see huge speed drops whenever it's hitting 100% or getting close to it.

If I change from WFP to TDI driver, the "System" utilization is gone, but Adguard process is now taking 80-100% itself.

The CPU utilization completely scales with transfer speed. If I limit download speed from 1 Gbit/s to 500 Mbit/s, I get half of the CPU load from Adguard and System. If I limit to 50 Mbit/s, the CPU load gets negligible small (like 1/20 of the 1Gbit/s case, i.e. 4-5%).

This is the reason why all the people with slower internet connection cannot reproduce the issue. It's just plain simple scaling of Adguards resource consumption with internet speed.

If you don't have the greatest CPU, then a simple full speed 1 Gbit/s transfer without any filtering will already take a significant hit on your CPU. If any WFP or TDI driver now inspects the traffic at this transfer rate, it will of course suffer much more.

The problem is, so to say, an "indirect" fault of Adguard. It's not like Adguard is limiting the speed itself, it's more like Adguard filtering of 1Gbit/s traffic is taking such a huge hit on the CPU that it cannot cope anymore. I never noticed a problem with internet speed as long as I had a 500 Mbit/s connection for that reason.

So I fear the only real solution would be if Adguard developers manage to cut CPU usage in half - but that sounds pretty unrealistic to me ;)

Another approach to the problem would of course be to find out why it's actually necessary to perform such excessive filtering/inspecting/whatever on an already established connection, just while the download is running. To add some confusion to the problem, I noticed that the CPU load is not the same for every source of the traffic.

If you really want the worst of the worst case I encountered so far, use:

This is really hammering my CPU at full speed when Adguard is enabled. As soon as Adguard is disabled, CPU load is gone and speed restored. With Adguard, only ~450 out of 1Gbit/s can be achieved due to CPU overload. I think this test is using dozens of parallel connections to get the best out of your line. If you manage to bring CPU usage down on this test, you might have solved the problem.

Maybe it will be absolutely fine when you upgrade to 16 core Ryzen CPU ;)
 
Last edited:

Laitinlok

New Member
The reason why it's slowing down is pretty simple, at least on my PC. If I have a gigabit download running, adguardsvc.exe in conjunction with the "System" process is taking 80-100% CPU utilization (on a 6-core Core i7 8700k CPU), like Adguard process ~60-70% and System process ~20-30%. You can see huge speed drops whenever it's hitting 100% or getting close to it.

If I change from WFP to TDI driver, the "System" utilization is gone, but Adguard process is now taking 80-100% itself.

The CPU utilization completely scales with transfer speed. If I limit download speed from 1 Gbit/s to 500 Mbit/s, I get half of the CPU load from Adguard and System. If I limit to 50 Mbit/s, the CPU load gets negligible small (like 1/20 of the 1Gbit/s case, i.e. 4-5%).

This is the reason why all the people with slower internet connection cannot reproduce the issue. It's just plain simple scaling of Adguards resource consumption with internet speed.

If you don't have the greatest CPU, then a simple full speed 1 Gbit/s transfer without any filtering will already take a significant hit on your CPU. If any WFP or TDI driver now inspects the traffic at this transfer rate, it will of course suffer much more.

The problem is, so to say, an "indirect" fault of Adguard. It's not like Adguard is limiting the speed itself, it's more like Adguard filtering of 1Gbit/s traffic is taking such a huge hit on the CPU that it cannot cope anymore. I never noticed a problem with internet speed as long as I had a 500 Mbit/s connection for that reason.

So I fear the only real solution would be if Adguard developers manage to cut CPU usage in half - but that sounds pretty unrealistic to me ;)

Another approach to the problem would of course be to find out why it's actually necessary to perform such excessive filtering/inspecting/whatever on an already established connection, just while the download is running. To add some confusion to the problem, I noticed that the CPU load is not the same for every source of the traffic.

If you really want the worst of the worst case I encountered so far, use:

This is really hammering my CPU at full speed when Adguard is enabled. As soon as Adguard is disabled, CPU load is gone and speed restored. With Adguard, only ~450 out of 1Gbit/s can be achieved due to CPU overload. I think this test is using dozens of parallel connections to get the best out of your line. If you manage to bring CPU usage down on this test, you might have solved the problem.

Maybe it will be absolutely fine when you upgrade to 16 core Ryzen CPU ;)
Yeah, my 8th gen core i5 can't even handle 1gbps on a mac bootcamp into windows, it will be slowed downed by adguard. But in a macos environment, adguard doesn't affect your internet speeds. I also tried throttle stop and max out my cpu to 3.8ghz and it doesn't help much anyways.
 
Top