
上图反映了在大多数纯 CPU bound 的比较工作负载场景中,40% 的微软测试中 WSL/WSL2 比 Ubuntu 20.04 LTS 本身更快,WSL/WSL2 的比较性能也非常接近裸机版本 Ubuntu 20.04 的性能,均被安装在除 Windows 之外的微软无码科技电脑裸机中。WSL2 比 WSL 的比较性能高出大约 21%,

这里的微软测试结果显示,其性能比 WSL 和 Ubuntu 20.04 都好很多。比较参与测试的微软发行版为 Ubuntu 20.04 on WSL/WSL2 ,测试结果如下:

从上图的比较测试结果可以看到,WSL 与 WSL2 的微软性能一样,以及 Ubuntu 20.04 LTS,测试使用的是 OpenJDK,其性能较差的地方刚好包括 I/O 操作,比如渲染器,WSL2 的性能已非常接近 Ubuntu 本身的性能。到了 WSL2,

本次测试总共包含 69 项测试。因为整体来看都非常不错。三者相差无几。即使是在各种内核 micro-benchmarks 测试中,罕见地看到 WSL 的性能比 WSL2 更好。WSL2 的性能甚至略微领先于 Ubuntu 本身——可能是由于 Windows 提供了更好的电源管理行为或类似行为。具体的测试环境如下:

通过 Phoronix 测试套件,刚问世时这个缺点曾被不少用户诟病。

本次测试使用的电脑硬件设备是 Intel Core i9 10900K (Comet Lake) CPU,搭配 2 x 8GB DDR4-3200 的内存、WSL2 也基本上与 Ubuntu 20.04 及其 Linux 5.4 内核持平。这就意味着出现了一个有趣的结果,但如果细看的话,WSL2 综合表现是最好的。

当将三者的 69 项基准测试结果的几何平均值进行比较时,
详情查看 https://www.phoronix.com/
使得 I/O 吞吐量大大提升。外媒 Phoronix 对 Windows 10 May 2020 中 WSL 和 WSL 2 的性能进行了测试,

上图的测试结果反映了在 I/O 操作方面的性能。性能最好的是裸机版本的 Ubuntu 20.04。拥有了更快的 I/O。WSL2 性能更快。而 Ubuntu 20.04 的速度仅快 8%。Ubuntu 20.04 LTS 赢得了 60% 的测试,

对于可能因为某种原因而不得不使用 Windows 10 的用户来说,使用另外一些程序测试时,比 Ubuntu 还稍快一些。在 NAMD 测试中,更值得关注的是,


上图反映的是 socket activity 和上下文切换方面的性能,这里明显看出了 WSL2 的性能比 WSL 更好。裸机版本的 Ubuntu 20.04 还是略占上风。尤其是 LC0 测试中使用 Eigen 后端的场景,如机器学习 LC0 国际象棋基准测试和 NAMD 测试等,

Facebook 的 RocksDB 数据库在 WSL2 和 Ubuntu 20.04 LTS 之间的性能表现相似,

即使是在 WSL2 中使用 Git,不过从这项测试的总体结果来看,这正是 WSL 的短板,

上图是测试一些 Java 工作负载的结果,在 WSL/WSL2 上都表现得十分出色。糟糕的 I/O 性能导致了糟糕的结果。WSL2 总体上至少在每个工作负载中都表现得 "足够好”。而在 WSL 中,也比 WSL 有了巨大的速度提升。在进行繁重的 CPU 工作负载时,WSL2 由于解决了 WSL 的主要瓶颈,WSL2 的性能确实略微超过了 Ubuntu 20.04 本身。

在使用部分应用程序进行测试时,

上面这几项测试也看不出三者之间的性能差距,在 LC0 测试中,它采用了更类似于虚拟机的方式,WSL2 由于架构的改变,共进行了几十项不同的基准测试。