|
Task Manager's performance graphs, pinned to the corner of your screen.
LoadView is a lightweight, always-on-top overlay showing live CPU, GPU, RAM, disk and
network graphs — plus temperature tiles for the CPU, GPU and every disk,
fan speeds, per-drive usage, top processes, a clock and your IP — as a
single portable A tiny, portable alternative to Rainmeter, Sidebar Diagnostics and heavyweight monitoring suites. ⬇ Download the latest release · Windows 10/11 · free & open-source
|
|
Requires nothing beyond a stock Windows 10/11 (uses the in-box .NET Framework compiler).
./build.ps1This produces bin\LoadView.exe.
./bin/LoadView.exe- Drag anywhere on the panel to move it; the position is saved per screen resolution (each display layout remembers its own spot and is restored when you return to it).
- Right-click the panel (or the tray icon) for: Lock, Always on top, Refresh WAN now, Reset position, Settings…, Contact me, About, Exit.
- Left-click the tray icon to bring the overlay to the front (even in background mode).
All settings are stored in %APPDATA%\LoadView\settings.ini (delete it to reset to defaults).
Right-click → Settings… opens a dialog with a category sidebar on the left; picking a category shows its options on the right. Changes preview live on the overlay as you make them — OK keeps them, Cancel reverts. Categories:
- Layout — window width, graph height (applies to all graphs), drive-bar height, refresh interval.
- Sections — a checklist that controls both visibility (the checkbox) and order (the ▲▼ buttons) for every section: clock, each graph, net totals, top CPU, top RAM, drives, IP, date/weekday.
- Graphs — per graph: accent color, max (0 = auto / 100% default), and a red alert threshold (e.g. CPU ≥ 90 turns the whole graph red; 0 = off). The network max is in the selected unit.
- Clock & date — show-seconds; size + colour for clock/date/weekday; bold toggles for date and weekday.
- Drives & lists — drive-label size + bold; Top CPU/RAM text size; IP text size.
- Network — unit (MB/s bytes or Mbps bits); download / upload colours (default green / red); net-totals text size; LAN / WAN IP refresh intervals (seconds); show WAN country and flag under the public IP (off by default).
- Behavior — opacity; Always on top; Lock position; show external IP; Start with Windows; write debug log.
- Defaults — Save current as defaults writes your config to
defaults.ini; Reset to defaults restores it. Whensettings.iniis absent the app falls back todefaults.ini(then to the built-in defaults), so you can copydefaults.inito other machines.
Only one instance runs at a time (launching again is a no-op).
The right-click menu order is Lock · Always on top · Refresh WAN now · Reset position · Settings… · Contact me · About · Exit. Refresh WAN now re-fetches your public IP on demand. About shows the version and changelog.
Tick Start with Windows in Settings. It creates a shortcut in your Startup folder
(shell:startup) — no admin needed. (It deliberately does not write the HKCU\…\Run
key; see Antivirus / Defender below.)
LoadView is a single unsigned exe, so Microsoft Defender's machine-learning heuristics may
occasionally flag a freshly-downloaded build as a false positive — typically
Trojan:Win32/Wacatac.B!ml, a generic ML "catch-all" for unknown, low-reputation
executables. The !ml suffix means it's a heuristic guess, not a signature match, and the
Microsoft encyclopedia page for it is generic family boilerplate, not an analysis of this file.
Because every new unsigned release starts with near-zero reputation, this can recur on new
versions until reputation builds up (or the exe is signed).
An older heuristic,
Behavior:Win32/Persistence.A!ml, used to trip on apps writing toHKCU\…\Run. LoadView hasn't done that since v2.4.0 — it uses a Startup-folder shortcut — so that one shouldn't occur on current versions.
Why it happens: the exe is unsigned and each release is freshly built (near-zero download reputation), and the optional accurate-CPU-temp feature downloads and installs a driver and runs an elevated helper — benign and off by default, but a pattern ML models are trained on. None of this is malware; the binary is built by GitHub Actions from the public source in this repo.
Verify integrity: compare your download's hash with the release asset —
Get-FileHash LoadView.exe -Algorithm SHA256 — or upload it to
VirusTotal: only a couple of engines flagging it with generic/!ml
names is the hallmark of a false positive.
If Defender flags it:
- Restore / allow it: Windows Security → Virus & threat protection → Protection history → allow or restore the item; optionally add a folder exclusion while testing.
- Report the false positive so Microsoft clears it for everyone (free, usually 1–3 days): https://www.microsoft.com/wdsi/filesubmission — submit as Software developer → Incorrectly detected as malware, include the SHA-256 and a link to this repo.
- Reputation heals it: as more people download the same build, the ML reputation score rises and the detection typically fades on its own.
- Sign it (the durable fix) — see below. A signed binary with reputation is trusted; CI signs automatically once the signing secret is set.
A GitHub Actions workflow (.github/workflows/build.yml)
builds LoadView.exe on every push to main using the in-box compiler and uploads it as an
artifact; pushing a tag like v2.1.0 publishes a GitHub Release with the exe attached.
The exe is unsigned by default, so SmartScreen / some corporate antivirus may warn on first run. Where to get a certificate:
- Azure Trusted Signing — Microsoft's service, ~$10/month, real Authenticode, CI-friendly.
- SignPath.io Foundation — free code signing for open-source projects.
- Certum Open Source — cheap OSS cert (USB token).
- Commercial OV/EV (Sectigo, DigiCert, GlobalSign, SSL.com) — ~$100–700/yr; EV gives near-instant SmartScreen reputation. (Self-signed certs do not help.)
To sign locally:
signtool sign /f your-cert.pfx /p PASSWORD /fd SHA256 /tr http://timestamp.digicert.com /td SHA256 bin\LoadView.exeCI signs automatically if you add repo secrets SIGN_PFX_BASE64 (base64 of your .pfx)
and SIGN_PFX_PASSWORD; otherwise that step is skipped.
| Section | Shows |
|---|---|
| Clock | current time (HH:mm:ss or HH:mm) |
| CPU | % utilization (· 52°C when a temp is available) |
| GPU | % of busiest GPU (· 61°C on NVIDIA / AMD / Intel) |
| MEM | % physical RAM, e.g. 20.3/31.7 GB (64%) |
| DISK | % active time across all disks + R / W MB/s |
| NET | down + up graph, in MB/s or Mbps |
| Net totals | session download / upload volume, e.g. Total ↓ 1.2 GB ↑ 350 MB |
| Top CPU | top 5 processes by CPU (aggregated by name) |
| Top RAM | top 5 processes by memory |
| Drives | per drive: usage bar (red ≥90%), used/total, free space on the right; includes mapped network drives |
| IP | LAN: internal + WAN: public address, optionally with the WAN country + flag |
| Date | 29.06.2026 then the weekday below |
If a metric's counter isn't available on a given machine, that row shows n/a and the
rest keep working.
Temperatures have their own section of labelled tiles — CPU, GPU, every disk that reports one, and the chipset where the optional driver can reach it. Under Settings → Temperatures you choose which of them to show and in what order, switch °C/°F, and set the temperature each turns red at.
That red threshold is one per kind of component, because they do not share a normal range: 70 °C is an unremarkable afternoon for a CPU and a bad day for a hard disk. Each of CPU, GPU, Disks and Chipset & others has its own, and each can be off. The suggested starting points are 90, 85, 55 and 80 °C — for disks that is a "worth a look" figure rather than a failure, since a drive typically declares its own warning around 83 °C.
- GPU is read in user-mode from the GPU vendor's own driver library — NVIDIA (NVML), AMD (ADL) and Intel (IGCL) — so it works across vendors with no admin and no extra files (nothing is bundled; the libraries ship with the graphics driver). The hottest GPU is shown. Very old Intel iGPUs expose no sensor and simply stay blank.
- CPU uses the ACPI thermal zone (WMI). Many machines — most Intel laptops included — expose nothing there, or report a chipset zone rather than the CPU die, so the CPU temperature is often blank or approximate. Reading the true per-core temperature requires a kernel driver, which LoadView keeps as an opt-in feature (off by default) so the default stays a portable, no-install, no-admin single exe.
If a temperature isn't available it is simply omitted and everything else keeps working.
The true per-core CPU temperature lives in the CPU's MSR registers, which can only be read from a kernel driver — there is no user-mode API for it. LoadView keeps this as an opt-in so the default download stays a portable, no-install, no-admin single exe.
Enable Settings → Temperatures → "Accurate CPU temp (driver)" to turn it on. LoadView then offers to set it up; you get one administrator prompt, and after that the temperature appears silently on every launch — including when your own Windows account is not an administrator, which is the normal case on a managed work PC. What the setup does:
- Installs PawnIO — a free, open-source, digitally-signed sensor driver
that is HVCI-compatible, so this works even with Windows Memory Integrity turned on (unlike
the old WinRing0 driver, which HVCI blocks). A pinned version is downloaded from its official source
and its SHA-256, its signature and its publisher's exact certificate are all verified before it
is run; nothing is bundled in
LoadView.exe. - Copies the reader (LoadView itself) and LibreHardwareMonitor (verified by SHA-256) into
C:\Program Files\LoadView\, and registers a Task Scheduler task named LoadView CPU Temp Helper that runs it as the SYSTEM account on demand. SYSTEM is what makes the sensor readable without you being an administrator: the driver's device can only be opened by SYSTEM/Administrators, and a task set to "highest available privileges" gives a standard user nothing extra. - The task can be started by any interactive user but not modified by one, and every folder it
involves is locked down (
Program Filescopy and library: read-only for users; the overlay may only write its heartbeat intoC:\ProgramData\LoadView\in). That combination is deliberate — a SYSTEM task that could run or load a file a normal user can overwrite would be a privilege-escalation hole. - Setup also empties those folders before using them, and never writes into a file that already exists. Correcting a folder's permissions is not enough on its own: files put there beforehand stay owned by whoever created them, and one of them could be a hard link — the reader's write would then land on the linked file instead, with SYSTEM's rights.
- The reader publishes the CPU package temperature to the overlay through
C:\ProgramData\LoadView\out. The overlay itself always stays unelevated. - If anything fails (offline, policy, or you decline the prompt), LoadView falls back to the ACPI /
blank reading — nothing breaks. Diagnostics:
C:\ProgramData\LoadView\out\helper.log.
To undo all of it, run once from an administrator prompt — this removes the task and both folders (PawnIO is deliberately left installed, since other tools may use it):
LoadView.exe --temp-remove
Leave the option off (the default) to stay completely driver-free and admin-free. It only affects CPU temperature; GPU temperature never needs a driver.
Temperatures have their own section — small labelled tiles, under the clock by default:
- Disks need no driver and no administrator. LoadView asks the drive itself over a query that
Windows allows any user to make, so an SSD's temperature just appears. Tiles are labelled by drive
letter (
C:) where one can be determined. - GPU works wherever the graphics driver reports it (NVIDIA / AMD / Intel).
- CPU shows the ACPI sensor if your firmware exposes one — many laptops do not. For the real core temperature, enable the optional driver (see below).
- Chipset temperatures and fan speeds live on the motherboard's controller chip, which cannot be read without the driver and a second switch (Settings → Fans). Plenty of laptops expose none even then; the section hides itself when there is nothing to show, rather than showing an empty box.
Pick which components appear, and in what order, under Settings → Temperatures and Settings → Fans. Selections are remembered per component (by serial number for disks), so adding a drive later does not shuffle what you chose.
Settings → Window → Theme: Follow system (the default), Dark or Light. Follow system tracks the Windows app-theme setting and switches with it while running. If you never picked your own clock / date / weekday colours, they move to colours that suit the new background; colours you did pick are left alone.
- Metrics refresh once per second; drives, top processes and IPs are sampled on background threads so a slow disk/share or web lookup never stalls the overlay.
- After resuming from sleep/hibernation the rate metrics (CPU/disk/network) briefly hold their last value while the performance counters re-baseline — this avoids a false 100% CPU spike.
- Disk and network values are aggregated across all physical disks / real network adapters (loopback and tunnel pseudo-interfaces are excluded).
- The external IP is fetched periodically from a public service (
api.ipify.orgover HTTPS); turn it off in Settings if you prefer no outbound requests. It shows—when offline. Refresh WAN now (right-click menu) re-fetches it on demand. - Optionally the WAN country + flag can be shown under it (Settings → Network, off by default):
the country is looked up from the IP via
ipwho.isand a small flag image is fetched fromflagcdn.comand cached in%APPDATA%\LoadView\flags— both only when the option is enabled. Replies from those services are treated as untrusted input: size-capped, and the country code is only accepted as two letters, since it becomes part of a file name. - Where you run it from matters. Windows looks for a program's libraries next to the program
first, so a file named
pdh.dll,nvml.dll,atiadlxx.dllorControlLib.dllsitting besideLoadView.execould otherwise be loaded as part of the app. LoadView refuses to use any of those libraries if it finds one there (the affected reading simply showsn/a). Even so, prefer a folder only you can write to rather than a shared or public one. - Reading performance counters does not require administrator rights.
