A compact, native and honest NVIDIA telemetry monitor for Windows.
Download · GPU support · Roadmap · Build · Contribute · Russian
Important
GPU Shark is strictly read-only. It does not change clocks, voltage, firmware or fan control, and it does not install a kernel driver.
GPU Shark is a native Windows desktop application built with Rust and egui, without a browser or web runtime and without silent background telemetry. It shows only measurements that the hardware and driver actually expose; unavailable sensors stay hidden instead of being replaced with guessed values.1
| Native and lightweight | Honest telemetry | Useful during a test |
|---|---|---|
| Resizable desktop interface and a portable official single EXE | Core, HotSpot and VRAM are never substituted for one another | Live history, session maximums and GPU-Z-compatible PerfCap reasons |
| Compact live sensor dashboard | Exact enhanced thermal mappings are enabled only for validated PCI profiles | Separate fan, power, voltage, activity and system readings when exposed |
- GPU Core, HotSpot and VRAM temperatures when the hardware exposes them
- Decoded NVIDIA PerfCap reasons compatible with GPU-Z:
Pwr,Thrm,VRel,VOp,IdleandSLI - Separate fan RPM values on supported multi-fan boards
- GPU, board and source power and voltage sensors
- Live graph for the selected sensor
- Per-sensor maximum tracking, enabled by double-clicking a sensor row
- Persistent language, refresh interval and accent settings
- Persistent light and dark themes and optional Windows startup
- Localized About view with the project logo and application version
- Consent-based feedback form with no automatic submission
- Optional update checks and explicit SHA-256-verified installation
The interface keeps live readings, settings, About information and consent-based feedback in one compact resizable desktop application.
Note
GPU Shark never invents a HotSpot value from Core, Memory or an unrelated
sensor. Combined PerfCap reasons are shown together, unknown bits are labeled
Unknown, and unsupported fields remain hidden.
The regular driver/provider path works with many NVIDIA GPUs, but the exact set of visible sensors depends on the GPU, board design, driver and firmware. Enhanced temperature support is deliberately tracked per validated device profile.1
Warning
GeForce RTX 50-series enhanced temperatures are beta. GPU Shark rejects
the LibreHardwareMonitor Hot Spot and Memory Temperature channels on every
GeForce RTX 50 card because they were confirmed to publish Core-like,
unrelated or missing values. HotSpot comes only from the read-only native
GPC-register provider. Unverified register readings stay marked
BETA; Core or Memory is never substituted for HotSpot. If the
native provider has no usable value, the HotSpot row remains unavailable.
| GPU | Core | HotSpot | VRAM temperature | Profile status |
|---|---|---|---|---|
| GeForce RTX 2060 SUPER | Yes | Validated | Board-dependent | Validated |
| GeForce RTX 2070 SUPER | Yes | Validated | Validated | Validated |
| GeForce RTX 3050 | Yes | Validated | Board-dependent | Validated |
| GeForce RTX 3060 | Yes | Validated | Board-dependent | Validated |
| GeForce RTX 3070 | Yes | Validated | Board-dependent | Validated |
| GeForce RTX 3080 | Yes | Validated | Validated | Validated |
| GeForce RTX 4060 | Yes | Validated | Board-dependent | Validated |
| GeForce RTX 4090 | Yes | Validated | Under validation | HotSpot validated |
| GeForce RTX 5050 | Yes | Beta2 | Beta | GPC register HotSpot profile |
| GeForce RTX 5060 Ti | Yes | Beta2 | Beta | GPC register HotSpot profile |
| GeForce RTX 5070 | Yes | Beta2 | Beta | GPC register HotSpot profile |
| GeForce RTX 5070 Ti | Yes | Beta2 | Beta | GPC register HotSpot profile |
| Other NVIDIA GPUs | Usually | Driver/board-dependent | Driver/board-dependent | Conservative fallback |
See SUPPORTED_GPUS.md for the user-facing support matrix. If a measurement cannot be confirmed, GPU Shark leaves it unavailable.
Tip
The roadmap describes product direction, not a promise to ship unverified telemetry. Hardware support remains evidence-driven.
| Status | Direction |
|---|---|
| 🧪 Beta | Expand RTX 50-series enhanced temperatures: register HotSpot plus the new beta Memory temperature channel2 |
| 🟡 In progress | Add more useful and correctly defined sensors |
| 🔵 Planned | Rework and polish the GUI |
| 🔵 Planned | Add Linux support |
| 🧪 Research | GPU Summary backed by a curated GPU database |
| 🔵 Planned | Flexible game/test overlay configuration and presentation |
| 🧪 Research | Built-in opt-in stress testing, including VRAM and memory-error checks3 |
| Someday | Explore AMD GPU support after the NVIDIA experience and telemetry contracts are mature |
The immediate focus is the GUI polish pass, RTX 50 beta validation and expanding the sensor model without weakening the read-only or privacy guarantees.
AMD GPU support is a long-term idea only: there is no active implementation or release target for it yet.
- Open the releases page.
- Download
GPU-Shark-win-x64.zipandSHA256SUMS.txtfrom the newest release. - Compare the archive SHA-256, unpack it and launch
GPU-Shark.exe. - Accept the Windows administrator prompt required for read-only hardware access.
(Get-FileHash .\GPU-Shark-win-x64.zip -Algorithm SHA256).HashThe official package contains a standalone executable. Windows SmartScreen may warn because the current binaries are not code-signed. Download only from this repository and verify the published hash.
- Windows 10 or Windows 11, x64
- NVIDIA GPU with an installed display driver
- Administrator privileges for local hardware access
The application never sends a report automatically. Feedback is submitted only after the user writes a message and explicitly accepts the consent option. A report can contain the app version, selected interface language, detected GPU name, currently displayed public sensors, a safe provider error, the user's message and an optional reply address.
Reports do not include GPU UUIDs, serial numbers, computer name, Windows account name or private hardware diagnostics.
Caution
Do not attach private diagnostic dumps, proprietary NVIDIA material, API secrets or identity-bearing captures to public issues or pull requests.
The public Rust/egui GUI source is in gui-source/. The managed
and native telemetry-provider implementations are intentionally not published.
Matching public runtime DLLs are supplied through the
GPU-Shark-gui-runtime-win-x64.zip release asset.4
- Stable Rust toolchain with
rustfmt - Visual Studio C++ Build Tools
- The runtime asset matching the GUI version
- Download the matching runtime asset and extract it.
- Open PowerShell in
gui-source/. - Configure a compatible feedback destination. The production destination is not stored in public source.
- Format, test and build the GUI.
- Build either an adjacent-runtime development package or a standalone EXE.
$env:GPU_SHARK_FEEDBACK_HOST = "your-compatible-feedback-host"
$env:GPU_SHARK_FEEDBACK_PATH = "/your/api/path"
cargo fmt --check
cargo test
cargo build --release --locked
Copy-Item C:\path\to\runtime\*.dll .\target\release\
.\target\release\gpu-shark-gui.exeFor the official standalone layout, embed the verified runtime while building:
$env:GPU_SHARK_EMBED_PUBLIC_RUNTIME = "1"
$env:GPU_SHARK_PUBLIC_PAYLOAD_DIR = "C:\path\to\verified-runtime"
cargo build --release --lockedThe GUI loads gs.dll beside the executable and calls the small
public export q to receive one privacy-filtered JSON telemetry
snapshot. Runtime and GUI versions must match.
The Build public GUI workflow formats, checks and builds the GUI, downloads the matching runtime, verifies its published SHA-256, embeds it and uploads a standalone single-EXE CI artifact. The workflow has read-only repository permissions and cannot publish or modify releases.
Small, focused pull requests are welcome. Keep implementation, documentation and build changes in separate commits when practical.
git checkout -b feat/short-description
cargo fmt --check
cargo test
cargo check --locked
git add path\to\changed-file
git diff --cached
git commit -m "feat: describe the user-visible change"
git push -u origin feat/short-descriptionOpen a pull request against main and explain:
- what changed and why;
- how it was tested;
- which GPU/driver was used for hardware-specific behavior;
- whether the change affects privacy, packaging or the public ABI.
| Prefix | Use it for |
|---|---|
feat: |
New user-visible functionality |
fix: |
Bug fixes and regressions |
docs: |
Documentation-only changes |
test: |
Test coverage and fixtures |
build: |
Build, packaging or CI changes |
refactor: |
Internal cleanup without a behavior change |
Warning
Never generalize a thermal mapping from one board to an entire GPU family. New HotSpot or VRAM mappings require an exact PCI profile and independent evidence. Do not publish private provider sources, private API identifiers, raw captures, debug symbols or local machine data.
GPU Shark's original code and release binaries are available under the Beerware license. Third-party components retain their own licenses; their notices are included in every binary/runtime release asset.
Bug reports are welcome through GitHub Issues.
Footnotes
-
Sensor availability varies between GPU chips, board partners, driver versions and firmware. A listed GPU model does not imply that every board exposes every measurement. ↩ ↩2
-
RTX 50 HotSpot support is beta and evidence-gated. The desktop RTX 5050 10DE:2D83 profile has an independently validated native HotSpot fallback. Other RTX 50 cards do not receive a native HotSpot fallback until they have their own exact same-board evidence. If the regular provider exposes a HotSpot reading, GPU Shark displays it and marks the row
BETA. Core or VRAM will never be relabeled as HotSpot. ↩ ↩2 ↩3 ↩4 ↩5 -
Any future stress test must be explicitly started by the user and remain isolated from clocks, voltage, firmware and fan-control paths. ↩
-
Public source can build and audit the GUI and reproduce the standalone packaging against a checksum-verified released runtime. Provider DLL implementation source remains intentionally outside this repository. ↩

