← All projects

GTweak

live
C# WPF Windows Registry

GTweak is a Windows optimizer I built and ship as a licensed desktop app. Open it before a gaming session, hit Auto-Optimize, and it applies tweaks across your CPU, GPU, network and power settings in about 30 seconds — no digging through registries yourself. It also shows a live dashboard of your hardware while it's running.

GTweak — Dashboard
CPU Intel Core i7  74°C  38%  4.2 GHz
GPU RTX 3080  61°C  52%  6.1 GB VRAM
RAM 11.4 / 32 GB
Auto-Optimize Restore Point Debloater

What it reads off your PC

Before you touch anything, the dashboard pulls your actual hardware info so you know what you're optimizing:

  • CPU — model name, current clock speed vs. max clock speed, live utilization %, and core temperature
  • GPU — model name, temperature, utilization %, and VRAM used / total (via nvidia-smi)
  • RAM — total installed, currently used, live usage ring
  • Disk — used / total space on the C: drive
  • OS & network — Windows build/caption and the name of your active network adapter

DashboardPage.xaml.cs — one of the WMI queries that feeds the CPU card:

C# DashboardPage.xaml.cs
using var cpu = new ManagementObjectSearcher(
    "SELECT Name, CurrentClockSpeed FROM Win32_Processor");
CpuInfo.Text = cpu.Get().Cast<ManagementObject>().First()["Name"].ToString();

What it optimizes

  • CPU — forces max performance mode, unparks all cores, kills C-state throttling so the processor doesn't clock down mid-game
  • GPU — locks to maximum power state, turns off VSync globally, enables hardware scheduling and low-latency mode
  • Network — disables Windows' built-in QoS throttle, kills TCP delayed ACK, reduces latency on the network stack
  • System — removes telemetry services, Game Bar, Xbox DVR, background app activity; trims startup programs
  • Power — switches to Ultimate Performance plan, disables hibernation
  • Safety — creates a Windows restore point before touching anything, so every change is fully reversible

How it's built

The app is split into per-category pages — CPU, GPU, RAM, Network, Power, Boot, Debloater — each showing on/off switches for individual tweaks, plus the Dashboard page above that runs everything at once. Every tweak is just a registry write or a Windows API call under the hood, wrapped in a try/catch so one failed tweak doesn't stop the rest. The live stats poll every 2 seconds using WMI for CPU/RAM and nvidia-smi for GPU, so the dashboard is never more than 2 seconds stale.

Auto-Optimize just loops over a list of 28 tweaks and applies them in order, updating a progress bar as it goes:

C# DashboardPage.xaml.cs
foreach (var tweak in tweaks)
{
    AutoProgressText.Text = tweak.name;
    await tweak.action();
}