MicrosoftのWSL 3.xリリースでは、デフォルトの仮想化ランタイムが更新され、ゲストLinuxカーネルが6.6 LTSシリーズからバージョン6.18に進歩した。効果を分離するため、Tony MetzidisはAlpine Linux 3.23.0のルートファイルシステムをゲストOSとし、Go 1.27.1をインストールした状態で、HP ProDesk 400 G4 Desktop Mini(Intel Core i5-8500T、6C/6T @ 2.10GHzベース、16GB DDR4)上で、Virtualization-Based Securityが有効なWindows 11 Proにおいて、.wslconfigを使ってWSLを2つの固定vCPUと4GBのメモリに制限し、サイドバイサイドベンチマークを実行した。

マイクロベンチマークの測定結果によると、WSL3はシーケンシャルメモリ帯域幅を最大61.35%向上させ、WSL2の7.84GB/sからWSL3の12.64GB/sに増加した。著者はこの向上を、動的メモリ再要求時のハイパーバイラートラップ頻度を減らすpage_reporting.page_reporting_order=5設定によるものと説明している。コンテキストスイッチレイテンシは20.64µsから18.32µsに低下(‑11.25%)、スケジューラーパイプのピンポン throughputは48,445から54,589 ops/sに上昇(+12.68%)、Hackbenchメッセージングテスト(20グループ、800タスク)は14.51sから13.05sに短縮(‑10.06%)となった。基本的なgetppid()システムコールスループットは約4%向上した。

実際のワークロードでは、コンパイラキャッシュを空にし、モジュールキャッシュをプライムした状態でGoReleaserコードベースをコンパイルしたところ、壁時計時間は191.27秒から183.80秒に減少(‑3.91%)、ユーザーCPU時間は298.99秒から289.38秒に減少(‑3.21%)、カーネル時間は57.39秒から48.22秒に減少(‑15.98%)となった。コンパイルはユーザースペースの字句解析、AST構築、型チェック、SSA最適化によって支配されており、全体のサイクルの80%以上を占めるため、全体の速度は2コアのCPU周波数によって制約される。したがって、演算に束縛されたタスクでは主にカーネルオーバーヘッドの削減が見られ、メモリ集約的またはIPCヘビーなワークロードでは帯域幅とレイテンシの改善から最も大きな恩恵を受ける。