TL;DR
Microsoft’s WSL 2 has implemented a new feature that assigns dedicated DMA pools to each virtio device, reducing contention and improving file system performance. This change, landed in May 2026, targets workflows involving frequent cross-OS file access.
Microsoft has introduced a new optimization in WSL 2 that assigns dedicated DMA pools to each virtio device, significantly improving cross-OS file system performance. This update reduces contention at the DMA layer, benefiting workflows involving frequent file exchanges between Windows and Linux environments.
The change, merged into the WSL 2 kernel in May 2026, addresses a longstanding bottleneck where multiple virtio devices shared a single DMA pool, causing performance degradation during heavy I/O. By providing each device with its own dedicated pool, file-heavy workflows—such as development projects on Windows that build or run in Linux—see improved speed and responsiveness.
This update requires the latest WSL kernel (Microsoft.WSL.Kernel 6.18.26.3-1) and specific configuration steps, including setting virtiofs=true in the .wslconfig file and updating WSL via wsl.exe –update –pre-release. The performance boost is primarily relevant for users with workloads that involve frequent read/write operations across the OS boundary.
Why It Matters
This development matters because it directly enhances productivity for developers and IT professionals who rely on WSL 2 for cross-platform workflows. Faster file system access reduces build times, improves responsiveness, and streamlines development cycles, making WSL 2 more competitive with native Linux environments.
WSL 2 compatible Linux kernel update
As an affiliate, we earn on qualifying purchases.
As an affiliate, we earn on qualifying purchases.
Background
Since its launch in 2019, WSL 2 has progressively improved cross-OS file access performance. Initially, WSL 1 used DrvFs for direct NTFS access, which was fast but limited to simple workloads. WSL 2 introduced a full Linux kernel in a Hyper-V VM, switching to a 9P protocol for file sharing, which added protocol overhead. Over time, Microsoft introduced virtiofs as an experimental feature to reduce this overhead, culminating in the recent addition of per-device DMA pools to address contention issues at the DMA layer.
“The per-device SWIOTLB pools remove contention at the DMA layer, significantly improving performance for file-heavy workflows.”
— Microsoft WSL team
“The kernel now allocates a dedicated physical range for each virtio device at boot, which reduces contention and boosts throughput.”
— Ben Hillis, Microsoft engineer
What Remains Unclear
It is not yet clear how widespread the performance improvements will be across all workloads or whether future updates will make virtiofs the default transport method. The long-term stability and compatibility of this feature are still being evaluated.
What’s Next
Microsoft is expected to continue refining WSL 2’s file system performance, potentially making virtiofs the default transport in future releases. Users should monitor updates and test their workflows with the latest kernel to benefit from these improvements.
Key Questions
What is the main benefit of this update in WSL 2?
The main benefit is a significant reduction in file I/O bottlenecks during cross-OS workflows, leading to faster build times and improved responsiveness.
How do I enable this feature?
Set ‘virtiofs=true’ in the [wsl2] section of your .wslconfig file, and update your WSL kernel using ‘wsl.exe –update –pre-release’.
Do I need to change my existing WSL 2 setup?
Yes, you should update to the latest kernel and configure your .wslconfig as described to benefit from the new DMA pool allocation feature.
Will virtiofs become the default transport method?
It is not yet confirmed; currently, plan 9 over Hyper-V socket remains the default, with virtiofs being an opt-in feature for now.
Source: Hacker News