• Thread Author
Microsoft’s own preview of Windows 11 25H2 may ship as a tiny enablement package, but running Ubuntu under WSL2 on that same Windows build is not indistinguishable from a native Ubuntu install — Phoronix’s fresh tests show a measurable, workload-dependent performance cost that deserves close attention from developers, sysadmins, and power users. (phoronix.com)

Windows 11 desktop showing a performance diagram of WSL2 vs native Ubuntu 24.04 via an Enablement Package.Background​

Short version: Windows 11 version 25H2 is being delivered as an enablement package on the Windows 11 servicing branch — it flips staged features on rather than shipping a full rebase — so users shouldn’t expect sweeping kernel- or scheduler-level performance changes simply from the OS version bump. Microsoft’s own Release Preview notes and industry coverage make this clear, and independent benchmarking has treated 25H2 as a lightweight update rather than a performance rework. (blogs.windows.com) (windowscentral.com)
At the same time, Phoronix’s latest work focuses on something different: not whether 25H2 speeds up Windows workloads, but how well Ubuntu runs when hosted inside WSL2 on Windows 11 25H2 versus the same Ubuntu release running “bare metal” on the same high-end desktop. The comparison is practical: many developers are required to use Windows for corporate reasons while still needing a reliable Linux environment for builds, testing, and container workflows. Phoronix’s tests therefore ask a simple operational question — what is the real-world performance cost of choosing WSL2 over native Linux on the same hardware? (phoronix.com)

Testbed and methodology — what was measured and why it matters​

Phoronix used the same hardware for both environments to isolate the operating-system and subsystem effects from differences in silicon, firmware, and storage.
  • CPU: AMD Ryzen 9 9950X3D (the Phoronix WSL2 article explicitly lists the 9950X3D for its WSL2 testing). (phoronix.com)
  • Memory: 32 GB (single configuration used across runs). (phoronix.com)
  • Storage: 1 TB PCIe Gen 5 NVMe (Crucial T705, CT1000T705SSD3). (phoronix.com)
  • OS builds: Windows 11 Pro 25H2 (Release Preview / preview build) hosting Ubuntu 24.04 under WSL2; Ubuntu 24.04.3 LTS installed natively for the bare-metal comparison. (phoronix.com)
Key testing choices:
  • Phoronix ran a broad set of real-world workloads and microbenchmarks emphasizing CPU-bound and I/O-bound tasks, including compilation workloads (LLVM, Godot, FFmpeg), SQLite and other database workloads, 7-Zip compression, OpenSSL crypto kernels, and a host of developer-centric tests. Results were presented both per-test and as an aggregated geometric mean to quantify overall throughput differences. (phoronix.com) (phoronix.com)
  • The environments were left at their default, out-of-the-box settings to measure the experience a user gets without manual tuning — an important and honest decision because many enterprise users do not have the time or permission to apply low-level optimizations. (phoronix.com)
Why this matters: by using native binaries when possible, staying stock, and running dozens of tests across the same hardware, Phoronix’s methodology isolates the WSL2 implementation and integration costs on Windows 11 25H2. That makes the headline figures meaningful for anyone deciding whether WSL2 is “good enough” for development, testing, or light production tasks.

Headline findings — the bottom-line numbers​

  • Across more than 50 individual benchmarks, Ubuntu 24.04 running inside WSL2 on Windows 11 Pro 25H2 delivered about 87% of the performance of Ubuntu 24.04.3 LTS running natively on the same hardware. In other words: roughly a 13% throughput penalty on the geometric-mean composite across the tested suite. (phoronix.com)
  • The performance gap is highly workload-dependent: CPU-heavy, compute-bound operations (pure mathematical kernels, some algorithmic workloads) frequently ran near native performance; I/O-heavy workloads (database access, large file builds, filesystem-heavy compile tasks) showed the largest headroom losses in WSL2. (phoronix.com)
  • There were exceptions: for some light, single-threaded scripting workloads (certain PHP and Python test cases), WSL2 outperformed the bare-metal Ubuntu instance — a reminder that diversity of behavior is expected across modern stacks. (phoronix.com)
Those numbers place this Phoronix round of testing as more conservative than older WSL2 comparisons that reported smaller penalties. Previous rounds (different OS builds, kernels, or test mixes) have shown WSL2 sitting closer to native — for example, earlier comparisons in other testing cycles reported WSL2 reaching the mid-90% range versus bare-metal Ubuntu on some systems — but the current 87% geomean is the precise outcome for the Ubuntu 24.04-on-WSL2 vs Ubuntu 24.04.3 LTS tests on the Ryzen 9 9950X3D platform used here. (techradar.com) (phoronix.com)

Why WSL2 loses ground: technical breakdown​

The performance delta is not a single, simple cause — it’s a composite of several subsystem differences that interact in interesting ways.

1) Filesystem and I/O arbitration​

  • The single largest source of overhead in these tests was I/O: SQLite, many compile workloads, and other file-heavy operations ran noticeably slower under WSL2. That’s consistent with WSL2’s architecture where the Linux distribution runs in a lightweight utility VM and interacts with Windows’ filesystem layers (and Windows Defender / antivirus hooks) when hitting mounted Windows volumes. Cross-filesystem operations (accessing Windows files from Linux processes) still cost more than working on a native ext4-backed root in bare-metal Ubuntu. (phoronix.com)
  • Practical implication: codebases that do lots of small file reads/writes (monorepos, many C/C++ projects, npm/node_modules churn) will likely feel slower in WSL2 unless the developer places the project inside the WSL2 VM’s native filesystem and avoids roundtrips to the Windows side.

2) Virtualization and context switching overheads​

  • WSL2 is not a thin translator layer: it runs a real Linux kernel in a lightweight VM backed by Microsoft’s virtualization infrastructure. While this delivers very good compatibility and enables features like a real Linux kernel and native containers, it introduces VM boundary costs — particularly around I/O, device emulation, and interrupt handling — that can aggregate in file-intensive code paths. (phoronix.com)

3) Toolchain and runtime divergence​

  • Phoronix’s methodology attempted to use comparable native binaries when possible, but toolchain differences still matter. Builds produced for Windows or statically linked with different runtime options can affect hot paths. Conversely, when the Linux binary is the same, differences boil down to kernel scheduling, memory handling, and I/O paths. Sometimes WSL2’s Linux kernel and Windows’ host scheduler interplay can yield surprising wins for specific microbenchmarks (the OpenSSL tests in Phoronix’s suite ran faster under WSL2 in these runs). (phoronix.com)

4) System services, background noise, and security stacks​

  • Windows has a larger background services footprint by default — antivirus, telemetry agents, and other system-level services can influence overall responsiveness, scheduler fairness, and I/O latency in mixed workloads. WSL2 mitigates some of this by using a contained Linux environment, but the host Windows stack still shares resources and can affect long-running, I/O-heavy jobs.

What the numbers mean in practice — actionable guidance​

The high-level message is practical: WSL2 is a very compelling convenience trade-off, but it is not a cost-free substitution for native Linux when throughput matters.

For developers who want the easiest path (convenience first)​

  • WSL2 is excellent for local development, quick testing, light builds, scripting, and running Linux-only tools on a Windows machine. It’s far lighter than a full VM and integrates cleanly with Windows tooling, editors, and Docker Desktop workflows. Phoronix’s results explicitly call WSL2 “good enough” for many developer tasks. (phoronix.com)

For build servers, CI, or heavy parallel compilation (throughput first)​

  • If you run long, CPU- or I/O-bound production workloads (render farms, large build pipelines, database-heavy tests), native Linux will usually be the better choice when absolute throughput or predictable latency matters. The ~13% geomean penalty observed in this test bed can be the difference between meeting a nightly deadline and missing it repeatedly at scale. (phoronix.com)

For mixed needs (a pragmatic compromise)​

  • Consider a hybrid strategy:
  • Use WSL2 for interactive dev, quick iterations, and debugging.
  • Use native Linux (or Linux VMs with direct access to storage) for heavy CI jobs or nightly builds.
  • If you must run heavy jobs locally under Windows, place source trees on the WSL2 VM’s native filesystem to reduce cross-filesystem I/O penalties. (phoronix.com)

Strengths of WSL2 that keep it relevant​

Despite the measured penalty, WSL2 retains several compelling strengths:
  • Compatibility and convenience — a real Linux kernel that runs many workloads unchanged, without dual-booting.
  • Integration with Windows tools — editors, debuggers, and Windows-native utilities remain useful while giving access to Linux-native toolchains.
  • Low friction for students and employees — no requirement to repartition drives, manage separate install images, or carry a second machine.
  • Rapid iteration — for many small-to-medium projects the performance difference is negligible enough to justify the developer productivity gains.
Phoronix’s wrap-up echoes this: WSL2 remains useful and practical for local testing and lightweight development, even if it isn’t equivalently fast in every workload. (phoronix.com)

Risks, edge cases, and what to watch​

  • I/O-heavy workloads: database testing, high-frequency file operations, certain build systems. These are the worst hit by the WSL2 overhead and should be explicitly tested before adopting WSL2 as a production substitute. (phoronix.com)
  • Anti-virus / Endpoint Security: enterprise security stacks can amplify I/O latencies. When working on Windows-managed machines, confirm whether Defender or third-party AV policies impact mounted filesystem access. If possible, exclude dev folders from real-time scanning after approving the security trade-offs.
  • Platform variability: results depend on CPU model, firmware, kernel version, and exact Windows build. Phoronix tested on a high-end RDNA/Zen 5 desktop; different CPUs (including hybrid Intel cores or older AMD platforms) may show different relative behavior. Always validate on representative hardware. (phoronix.com)
  • Toolchain and binary parity: when Windows builds use different compilers/runtimes than Linux builds, comparing apples-to-apples becomes complex. Where possible, use the same Linux binaries (built under same toolchain) to minimize extraneous disparities. (phoronix.com)
Caveat about Phoronix’s specific testbed: while Phoronix’s testing is thorough, it reflects a particular set of workloads, kernel versions, and driver maturity as of the test date. Results will shift across kernel upgrades, WSL2 enhancements, or driver and firmware updates — some of which Microsoft and community maintainers actively work on in the months following major testing cycles. Treat the 87% figure as a precise observation for the configuration tested, not an immutable ceiling.

Cross-check and verification​

Phoronix’s findings are corroborated by independent coverage and by Microsoft’s own explanation of 25H2’s release model:
  • Phoronix’s detailed report and the composite 87% geomean result are presented in the Phoronix review and dataset for the Ubuntu 24.04 WSL2 vs Ubuntu 24.04.3 LTS comparison. (phoronix.com)
  • Major outlets that republished and summarized Phoronix’s conclusions — including Tom’s Hardware and TechRadar — repeated the core takeaways (no meaningful 25H2 performance gains versus 24H2, and Linux retaining a lead in many CPU-bound workloads), providing independent confirmation that the findings are newsworthy and consistent across reviewers. (tomshardware.com)
  • Microsoft’s Windows Insider announcement and IT-pro guidance explicitly describe 25H2 as an enablement package using a shared servicing branch — this explains why 25H2 itself was not expected to produce big, OS-level throughput shifts; it also frames why Phoronix focused on WSL2 rather than expecting 25H2 to change the underlying host behavior dramatically. (blogs.windows.com)
  • Previous WSL2 comparisons have shown smaller penalties in different configurations (mid-90% ranges in some earlier tests), which demonstrates that the WSL2-to-native delta can move with kernel/toolchain updates and differing workload mixes. Readers should therefore interpret the 87% geomean as valid for this testbed and time, and expect improvements or regressions across future updates. (techradar.com)
If anything in the public reporting appears inconsistent (for instance, differing CPU labels across stories), err on the side of caution: verify the exact Phoronix test page and the hardware listed there. In this case, the WSL2-focused Phoronix page explicitly lists the AMD Ryzen 9 9950X3D and the Crucial T705 NVMe drive as the test platform for these WSL2 runs. (phoronix.com)

Practical checklists and recommended steps​

If you manage a Windows machine and rely on WSL2 for Linux workflows, use the following pragmatic checklist to reduce risk and narrow the performance gap:
  • For developers:
  • Place heavy projects and build artifacts inside the WSL2 VM's native filesystem (e.g., /home, ext4-backed area) rather than on mounted Windows drives to avoid cross-OS I/O penalties.
  • Avoid antivirus real-time scanning of WSL2 project directories if company policy allows; document exceptions and secure approvals.
  • Measure: run representative builds in both WSL2 and native Linux VMs to quantify delta for your repo.
  • For teams/CI:
  • If throughput matters for nightly builds, consider dedicated Linux runners or cloud-native build agents rather than relying on developer machines.
  • If using on-prem Windows boxes, partition workloads: interactive dev in WSL2, heavyweight CI on Linux.
  • For IT and procurement:
  • If capacity planning for hybrid developer environments, budget for native Linux CI capacity or cloud runners if performance-sensitive workloads exist.
  • Validate endpoint security policies against WSL2 behavior to ensure scanning and telemetry do not introduce unpredictable latencies.

Final analysis — balancing convenience and throughput​

Phoronix’s careful testing gives us a clear, pragmatic summary: WSL2 provides a highly usable Linux environment on Windows 11 25H2, but it comes with a measurable performance cost that is most apparent in I/O-heavy tasks. The geomean outcome of about 87% of native throughput on the Ryzen 9 9950X3D testbed is a useful ballpark: good enough for many day-to-day developer activities, less suitable for heavy-duty CI or production-scale compute where every percentage point of throughput matters. (phoronix.com)
The broader ecosystem context reinforces the conclusion: Windows 11 25H2 itself is unlikely to alter these trade-offs because it is an enablement package rather than a kernel-level overhaul; improvements in WSL2 performance will therefore come from targeted WSL/kernel updates, driver and firmware fixes, and Windows/AV tuning rather than the 25H2 rollout per se. (blogs.windows.com)
Practical guidance is simple and defensible: use WSL2 for convenience and interactive development, but validate and, where necessary, migrate heavy or latency-sensitive workloads to native Linux runners. If your team already runs heavy Linux workloads locally on Windows hardware, run a short pilot comparing WSL2 and native Linux on your actual projects — that single experiment will tell you whether the convenience trade-off is acceptable in your environment.

Conclusion
WSL2 remains one of the most consequential productivity features for Windows-based developers who need Linux tools — it brings near-native compatibility and a frictionless workflow that once required dual boots or clumsy VMs. At the same time, the Phoronix 25H2 WSL2 tests expose a clear, measurable cost for some classes of workload. A deliberate, workload-driven approach — matching WSL2 to interactive work and native Linux to throughput-critical tasks — gives teams the best of both worlds: developer convenience without sacrificing production performance. (phoronix.com)

Source: Phoronix The Performance Cost To Ubuntu WSL2 On Windows 11 25H2 - Phoronix
 

Back
Top