WSL3 is 5–60% faster than WSL2, benchmarks show

Original: WSL3 Performance is about 5-60% faster than WSL2 depending on the workload

Why This Matters

WSL3's gains matter most for developers running I/O-intensive or memory-heavy Linux workloads on Windows.

Independent benchmarks comparing WSL 2.6.3 (kernel 6.6.87) against WSL 3.0.2 (kernel 6.18.40) show 4–61% gains depending on workload, with memory bandwidth delivering the largest jump at +61%.

Engineer Tony Metzidis ran side-by-side benchmark suites on a mid-range HP ProDesk 400 G4 (Intel Core i5-8500T, 16 GB DDR4, Windows 11 Pro) using Alpine Linux 3.23.0 and Go 1.27.1, pinned to 2 vCPUs and 4 GB RAM.

The headline number is memory bandwidth: sequential throughput jumped from 7.84 GB/s to 12.64 GB/s (+61.35%). The likely driver is a new kernel boot parameter, `page_reporting.page_reporting_order=5`, which reduces how often the guest triggers hypervisor traps during Hyper-V's dynamic memory reclamation.

Scheduler performance also improved meaningfully. Context-switch latency dropped 11.25% (20.64 µs to 18.32 µs), and the Hackbench stress test (20 groups, 800 tasks) finished 10% faster. The gains are attributed to upstream scheduler refinements in kernel 6.18 combined with tighter Hyper-V VMBus interrupt handling.

Raw syscall transitions improved only modestly—getppid throughput rose ~4%—which Metzidis attributes to fixed CPU architectural limits on 8th-gen Intel silicon that software tuning can't easily move.

For a real-world workload, compiling the GoReleaser codebase showed 3.91% faster wall-clock time and a 15.98% reduction in kernel-mode CPU time, suggesting that I/O-heavy builds benefit more than pure compute tasks.

Source

tonym.us — Read original →