了解KVM CPU调度程序算法

时间:2016-08-18 13:29:05

标签: linux cpu scheduling kvm

我正在尝试了解KVM中的CPU调度算法,但我还没有找到适合它的文档。

例如,在XEN中,当将超过1个vCPU分配给单个物理CPU(即过度使用)时,XEN的默认信用调度程序决定vCPU将访问该单个pCPU的顺序。然后有许多参数可以调整默认行为,即你可以改变默认的调度量子(从30~ms),你可以为VM分配不同的权重,提供更多/更少的CPU时间,设置工作保留模式等。

但是,我不清楚你在KVM中获得的控制程度。这个documentation解释了如何将vCPU固定到pCPU(工作正常)。但我想知道KVM使用哪种调度算法,我们有什么方法可以调整它吗?例如,为某些VM提供更多优先级(CPU时间)或调整I / O与计算密集型任务?

谢谢!

1 个答案:

答案 0 :(得分:1)

KVM是一个基于内核的虚拟化基础架构,因此它使用Linux Kernel的本机CPU调度程序,默认情况下是CFS。

Source: https://www.researchgate.net/figure/Comparison-of-Xen-KVM-and-QEMU_fig1_281177318 *来自ResearchGate

的图片来源