The MoBro app is really great, and I use it mostly for CPU temperature, which is a success. Re the CPU Load, that is far from accurate. It is well under half the real CPU load. This is having Task Explorer and MoBro app open at the same time. I can see that MoBro is using this as the value (Powershell):
Get-Counter '\Processor(_Total)\% Processor Time'
So it is not MoBro's issue, it is that the TaskManager and this counter are wildly different. I will say based purely on the temperature, and PC responsiveness, I believe that Task Manager is stating the reality. Is there any way to get an accurate reading on CPU load into MoBros app?
Re the temperature, I do not have anything to compare it to that is built into the OS, but I am fairly certain it is accurate just based on touch (The Surface Book 3 is very thin, and the back of the screen is the heat sync. I tried OpenHardwareMonitor and LibreHardwareMonitor and they both report the errroneouus load %.
I have noticed that the per-logical-processor-thread graph in Process Explorer and Task Manager are fairly identical with the difference that the Task Manager graph heights are about twice that of Process Explorer.
I also noticed that running a 100% load on all 8 logical processes does pin all logical processor threads at 100% on Process Explorer, Task Manger and MoBro, so they all do agree what 100% looks like.
The Base Speed is 1.5 Ghz on the bottom of the Task Manager window, the CPU is actually 1.3 GHz as per the top of the Task Manager window, and the Task Manager shows the speed as abour 3 GHZ in thw “Speed” bottom left. Any reason these would be so wildly different?
Am trying to figure if Task Manager is correct, or if Mobro, Process Explorer, and the counter atre correct.
The current version of MoBro doesn't actually read the CPU temperature (or any other metric) by itself, but relies on other data sources.
We're shipping with OpenHardwareMonitor and LibreHardwareMonitor already integrated, so that's where your percentage reading is most likely coming from.
You could also try to use HWiNFO if you want to check another source, but I guess the reported percentage value will most likely be the same.
Regarding the processor speed:
Your CPUs base clock is at 1.3GHz, which is what's shown in the label on top of the task manager.
A CPU can turbo to higher clock speeds when under load (the duration being limited by temperature and power). So the 3GHz value shown in the task manager is the actual current clock the CPU is running at.
Hello @Seraksab and thank you for your help.
I have done a bit more research and I am now confident that Event Viewer is showing incorrect data on CPU % usage. There are a few posts stating that Event Viewer shows incorrect CPU %, but follow up stated that this should have been fixed, so a little unclear there. Further to that, there is the post below that states that having Hyper-V enabled will cause Event Viewer to show the incorrect clock speed. I do that Hyper-V enabled, and Event Viewer is showing the incorrect clock speed. This is a non-overclocked laptop, with a clock speed of 1.3 Ghz. Event Viewer states that it is running at approximately 3 Ghz, which is not fact. This is a rough doubling of the real Clock speed, and Evernote always shows slightly more than double the real clock speed. Further to this, I used a powershell script to create load at 25%, 50%, and 75% of the CPU. MoBro app reported the requested CPU load plus 15 to 20%, which is background usage. Whereas Event Viewer reported 90% when I requested 25%, and 100% thereafter.
I have concluded that Event Viewer is reporting the wrong CPU, and that I can trust what is displayed on the Raspberry Pi in the Mobro app.