Bug #12241
closed
System Information widget unnecessarily polls data for hidden items
Added by B D over 3 years ago.
Updated about 3 years ago.
Plus Target Version:
22.01
Description
Netgate SG-3100
pfSense 21.05.1 (observed under 2.4.5p1 too)
If I am not logged into the Web GUI and specifically on the Dashboard page, I get line 940Mbps bandwidth through my router from my cable modem to my laptop (both attached directly to the SG-3100). If I have the Dashboard page open (in any browser), even with only the System Information widget enabled and all items on it hidden (the minimal Dashboard possible), the bandwidth drops to just over 700Mbps.
- Project changed from pfSense Plus to pfSense
- Subject changed from Web GUI Dashboard severely impacts heavy load bandwidth on SG-3100 to Web GUI Dashboard severely impacts heavy load bandwidth
- Category changed from Dashboard to Dashboard
- Target version set to 2.6.0
- Plus Target Version set to 21.09
- Affected Architecture deleted (
SG-3100)
Watching the dashboard puts a load on the system as it fetches the data used to display the widgets. Some of this is from the CPU used by PHP directly along with nginx to handle the dashboard requests. On top of that, one of the items in the system information widget is pf states and probing the states will cause a throughput drop as pf dumps out the state data. There are similar issues when viewing other pf information in the GUI or at the CLI, or even when a system has RRD enabled due to stats being gathered periodically in the background for the RRD datasets.
While not technically a bug per se, but an expected natural side effect, it should be improved on 21.09 from other work being done on pf and FreeBSD in this area.
This is not specific to any particular piece of hardware, though the faster the hardware the less noticeable it will be.
If there is still room for improvement after the changes in 21.09/2.6.0 this can be re-targeted ahead and checked again once we're on FreeBSD 13.
Jim,
Thanks for the feedback. Please note that the performance drop occurs even when all items (not just pf states) in the System Information widget. That suggests hiding items is only a display feature and does not actually eliminate the underlying calculations. Separate issue?
... above should be when all are hidden.
That is correct, hiding items does not stop the data from being collected. Hiding a whole widget would, but not specific pieces of data inside a given widget. That isn't a bug, it's just how the widgets were designed and a side effect of how they fetch data. Whether or not an item is displayed is cosmetic only at that point.
But since the System Information widget can't ever be removed -- that means its performance penalty is fixed for the Dashboard. That's unfortunate. I hope this is much improved in 21.09 for the SG-3100 -- 200Mbps penalty is a whopper.
That has always been the case and likely always will be -- just the fact that you're hitting the dashboard and constantly polling PHP and nginx will reduce performance because that consumes CPU, sometimes significant amounts. There is never going to be a way around that. If you want peak performance, don't keep the dashboard open.
- Status changed from New to Pull Request Review
- Status changed from Pull Request Review to Feedback
- Assignee set to Viktor Gurov
B D wrote in #note-5:
But since the System Information widget can't ever be removed -- that means its performance penalty is fixed for the Dashboard. That's unfortunate. I hope this is much improved in 21.09 for the SG-3100 -- 200Mbps penalty is a whopper.
You can test the fix by applying the patch ID 136c1462b64e0b132e090849712c5a4007b42e5d
using the System Patches pkg: https://docs.netgate.com/pfsense/en/latest/development/system-patches.html
- Subject changed from Web GUI Dashboard severely impacts heavy load bandwidth to System Information widget unnecessarily polls data for hidden items
Updating subject for release notes.
- Plus Target Version changed from 21.09 to 22.01
Tested in 22.01. Could be placebo but I noticed a 3-4x CPU usage drop after removing the System Information widget.
- Status changed from Feedback to Resolved
This is noticeable on SG-3100 with 1Gb/s uplink
Also available in: Atom
PDF