Comment by ndriscoll
4 days ago
You don't need to query the hardware to know the network interface is up. A higher level of the stack already knows that along with info like addresses, routes, DNS servers, etc.
IIRC it ran at 76 fps (higher than monitor refresh, one of the locally optimal frame rates for move speed/trick jumps) for me back then on something like an GeForce FX 5200? As long as you had a dedicated GPU it could hit 60 just fine. I think it could even hit 43 (another optimal rate) on an iGPU, which were terrible back then.
In any case, modern software can't even hit monitor refresh latency on modern hardware. That's the issue.
It's not just showing "is the interface up", it's showing current signal strength, showing current ssid, showing results from the recent poll of stations, etc.
And then doing the same for Bluetooth.
And then doing the same for screen rotation and rotation lock settings. And sound settings, And then another set of settings. And another set of settings. All from different places of the system configuration while still having the backwards compatibility of all those old systems.
It's not a slowness on painting it. It can do that at screen refresh rates no problem. It's a question of querying all these old systems which often result in actual driver queries to get the information.
43fps? Sure sounds slow to me. Why not 333fps on that hardware? So bloated, so slow.
You're just listing mechanisms for how it might be slow, but that doesn't really make it sensible. Why would the OS query hardware for something like screen rotation or volume? It knows these things. They don't randomly change. It also knows the SSID it's connected to and the results of the last poll (which it continuously does to see if it should move).
And yes it should cache that info. We're talking bytes. Less than 0.0001% of the available memory.
Things were different on old hardware because old hardware was over 1000x slower. On modern hardware, you should expect everything to be instantaneous.
And yet doing an ipconfig or netsh wlan show interfaces isn't always instantaneous depending on your hardware and the rest of your configuration. I can't tell you what all it's actually doing under the hood, but I've definitely seen variations of performance on different hardware.
Sometimes the devices and drivers just suck. Sometimes it's not the software's fault it's running at 43fps.
I'm hitting the little quick settings area on my exceptionally cheap and old personal laptop. I haven't experienced that slowness once. Once again I imagine the other stuff running interrupting all the OS calls and what not loading this information causes it to be slow.
2 replies →