Rust 编写的 Redox OS 开源操作系统已经成功地解决了性能瓶颈,使该平台现在在作为虚拟机 (VM) 运行时运行得更快,并且对于某些综合基准测试,甚至能够运行得比 Linux “略快”。
Redox OS 项目发布了 2024 年 8 月的状态报告。可以说,最令人兴奋的是他们在实现更高的 VM 性能方面所做的工作。由于他们在读取系统时间周围的上下文切换代码中存在“巨大瓶颈”,他们的 VM 性能现在要快得多,尽管在裸机硬件上运行 Redox OS 的速度没有提高。
目前没有提供基准数据,但它们谈到了在 VM 中运行时对 Linux 的巨大收益以及增强的竞争力。2024 年 8 月的报告指出:
“多亏了最近的内核 proflling 实现,4lDO2 发现上下文切换代码中的一个巨大瓶颈是简单地读取系统时间。这涉及从 HPET 读取硬件寄存器,虽然在实际硬件上速度相当快,但在 VM 上尤其慢,因为它需要昂贵的 VM 退出。现在,通过使用 KVM 的半虚拟化系统时间 API 的 TSC 来避免这种成本,从而大大加快了速度。
因此,从更高的 IO 吞吐量到网络速度,所有系统任务现在都具有更好的性能。我们正在进行基准测试,以确定这种改进的规模。
…
在 VM 中运行的 Redox 现在在某些综合基准测试中变得比 Linux 略快,例如,使用 POSIX 管道时的同核上下文切换延迟(使用 mitigations=off 测试)。更多令人兴奋的优化即将推出,既可以进一步减少上下文切换开销,使其达到硬件限制,也可以减少整体上不必要的上下文切换。
看起来我很快就需要进行一些 Redox OS VM 基准测试了……
Redox OS 最近还增加了测试,继续努力实现 POSIX 兼容路径,更好地支持 Relibc 实现,在 Redox OS 上运行的程序更多,以及构建系统改进。在过去的一个月里,还有文档添加和其他工作。
有关 Redox OS 在 8 月份所做的工作的更多详细信息,请访问 Redox-OS.org 博客。
转自 Redox OS Unlocks Faster VM Performance, “Slightly Faster” Than Linux In Some Benchmarks – Phoronix