PDL@NUDT

第七组PDL@NUDT:大家下午好,我们团队来自国防科技大学,我们研究的题目是虚拟机的服务质量。

在一台物理机上启动多台虚拟机,你发现很多虚拟机跑的非常慢,很多服务没有响应。这些主要是对系统资源进行竞争产生的。本赛例主要是针对这一实际问题进行设置的。我们需要做的是设计一个监控器合理的调度这些资源。这个赛题的具体要求是:在一个宿主机上启动六台虚拟机。得到合理的资源分配方案。我们首先对六种Benchmark进行分析。首先我们来分析CPU资源。我们做的是给每一个需要CPU资源的Benchmark分配一个单独的物理核给他。可以得到,如果只是单线程的Benchmark有20%到30%的提高。

多线程有所下降,但是也可以得到。所以我们得到的结论是对单线程的Benchmark分配一个单独的物理核,可以得到单独的计算资源。除了分配物理核,还可以对每个Benchmark赋予CPU权重。每个Benchmark要负多少权重,他两者之间影响度有多大。我们做了大量的测试。如果值小于0.05的时候,就表示影响比较大。最终我们得到了一些测试结果。首先是Hackbench的测试影响结果比较大。我们对entperf、iperf都进行了测试。

下面是对网络资源的分析,网络资源主要是对带宽的控制。这两款Benchmark,我对它的带宽进行了限制。我们最终分析之后得到了我们网络调度的结果。我们需要对高带宽的Benchmark建立了一个控制机制,避免它的运行影响其他Benchmark的正常传输。我们针对延时敏感的Benchmark,设置高传输有限级,减少它的传输等待时间。最后我们设置了一个公平的使用策略,保证其他Benchmark的正常运行。最终我们根据分析设定了程序的两个系统,一个是状态监控系统,一个是资源分配系统。资源监控系统首先是对虚拟机进行监控,它需要哪些系统资源。第二个是分配,根据他所需要的资源。根据本地的测试结果,可以根据他的全值我们总评分得到了20.8%的提升。也就是说,我们合理资源得到了这么大的提升。