Synchronus: Find the Timer Resolution Your PC Actually Responds To
Synchronus is one self-contained Windows executable. It finds the timer resolution your machine actually wakes fastest at, installs a service so that resolution is held from every boot, then walks CPU, GPU, memory, and storage latency tweaks as named steps. There is no installer and no runtime. The same binary is the benchmark, the installer, and the service.
The splash above is the live measurement view. The same image sits behind the Synchronus hero on the apps page, which is also where the current build is downloaded.
Why 0.5 ms is often the wrong target
Windows does not give a process a precise sleep. Sleep(1) asks the scheduler to wake the thread after at least one millisecond, and the wake lands on the system timer. For years a process could request a finer timer with timeBeginPeriod or NtSetTimerResolution. After Windows 10 version 2004, those requests stopped changing the global clock the way people expected. A process still has to ask, and on current Windows the request has to be allowed system-wide before it sticks for everyone else.
The kernel minimum, 0.5 ms, is also not automatically the fastest-responding setting. The periodic tick and the way Sleep(1) quantizes onto it can make a slightly longer request wake with less overshoot. The PC-Tuning notes on the post-2004 timer change explain why a request is required at all. The notes on micro-adjusting that request explain why the winner is often not 0.5 ms. On the machine used while writing Synchronus, 0.56 ms produced a median Sleep(1) overshoot of +0.12 ms, against +0.50 ms at 0.50 ms.
Synchronus measures that on your machine instead of assuming it.
What a run does
Double-click Synchronus.exe. It asks for administrator rights, then opens a Direct2D window and starts the benchmark.
The measurement is Sleep(1), timed with QueryPerformanceCounter, across 0.50–0.60 ms in 0.001 ms steps. It runs three interleaved passes, both back-to-back and after an idle gap, then re-measures the finalists. The score is a winsorised mean plus standard deviation of both patterns. A small safety margin sits above the measured optimum so a bit of extra wake-up latency under load does not drop you back onto the bimodal 0.5 ms edge.
The window shows the sweep, a live trace of each wake-up, and a 3D lattice. On that lattice the horizontal axis is late percent (the share of samples that missed a tick), the vertical axis is measured latency, and the depth of each cell is how many samples landed there.
When verification picks a winner, Install & hold at every boot copies the executable to %ProgramFiles%\Synchronus\, sets GlobalTimerResolutionRequests=1, and starts the auto-start Synchronus service. That registry value is what lets timer requests apply system-wide on Windows 11 and Windows Server 2022 and later. It takes full effect after a reboot. The log is %ProgramData%\Synchronus\Synchronus.log.
The steps after the timer
The service is the first step, not the last.
Synchronus then checks whether the CPU clock is static or dynamic. A static clock is a BIOS-locked multiplier, or Windows already holding the minimum processor state at 100 percent. On that kind of machine, the kernel’s periodic P-state and core-parking calls are noise. The processor-power pass, taken from the same PC-Tuning notes, raises the performance-check interval, disables core parking, pins processor state at 100 percent, and writes boost policy, energy preference, duty cycling, and class-1 core settings. Hidden power settings are unhidden first. Each value goes through the power API and powercfg, and each change is explained on screen before it is written. On a CPU that is still boosting, that pass is skipped unless you force it.
The GPU pass sets hardware-accelerated GPU scheduling, turns Game DVR and the overlay off, and writes the NVIDIA or AMD profile that favors maximum performance, low latency, and forced-off vertical sync. It does not wipe a driver or flash firmware. Display Driver Uninstaller, a clean driver install, Resizable BAR in the firmware, and a tool like MSI Afterburner are still things you do yourself.
Memory and storage steps follow: the pagefile and memory compression, then SSD, PCIe, USB, TRIM, and SysMain. --uninstall removes the service and restores the power-plan and GPU values that were there before.
Build it or download it
The source is GPL-3.0. The timer-resolution core descends from amitxv/TimerResolution. Open Synchronus.sln in Visual Studio 2022, or run build.ps1 from the repository root. The script finds MSBuild and the Windows SDK. The release build is one x64 executable with a statically linked C runtime, so there is nothing to install beside the program itself.
The current build is linked from the Synchronus hero. The program also checks https://luciuswayne.com/synchronus/latest.json when the window opens and offers a newer build when one is published. The repository, license, and build instructions are on GitHub.
Sources
- Synchronus on the Lucius & Wayne apps page
- Synchronus — GitHub repository
- PC-Tuning: fixing timing precision after the Windows 10 2004 change
- PC-Tuning: micro-adjusting timer resolution
- PC-Tuning repository
- amitxv/TimerResolution — the timer core this program descends from
- timeBeginPeriod — Microsoft Learn