如何提高VirtualBox来宾的性能?


38

我使用VirtualBox在主机ubuntu 12.04上运行guest虚拟机ubuntu 12.04,而guest虚拟机比主机慢得多(要ALT+TAB花费4到5秒钟)。我环顾四周,发现在VirtualBox与VMware(免费)上存在矛盾的观点;所以我想保留前者。

这两个系统都已更新,我在来宾上安装了附加组件,然后在来宾和主机之间平均分配了内存和视频内存(64MB)。我正在运行具有4GB内存和共享视频内存的Toshiba m200笔记本电脑。主机BIOS不包含用于计算机虚拟化的配置选项。我有2个CPU,不能同时将它们都提供给虚拟机。

我有什么可以解决我的问题的地方吗?

随时询问更多信息,并感谢您的任何帮助。

编辑 使用系统监视器空闲,打开(单个)来宾CPU永远不会低于55%,仅通过移动鼠标即可将其提高到80-90%。打开Firefox将导致系统监视器在来宾系统中显示cpu使用率100%,而主机显示两个cpus均能正常工作60%。

我的CPU是Intel® Core™2 Duo CPU T5450 @ 1.66GHz × 2

如果这不是配置问题,是否表示我的计算机对于虚拟化而言太弱了?


即使安装unity2d(有所帮助)并尝试使用不同的配置,vm仍然对我来说仍然太慢,所以我现在放弃了这个想法
ecoologic 2012年

我认为JohnP的答案在这里是最合适的。
莱奥列奥波尔德·赫兹준 영

Answers:


29

我对Player知之甚少,但是Vbox的默认设置对喜欢真正GPU的Ubuntu版本不利。

  • 在旋转硬盘上,预分配整个虚拟磁盘。在SSD上,没关系。VDI / qcow2稀疏分配的确降低了性能,但自2015年以来,所涉及的减少似乎不到10%。权衡性能与便利性。
  • 仅分配所需的存储。将大文件保留在vStorage之外的其他位置。
  • 切勿分配过多的CPU或RAM。1个vCPU可能就足够了。
  • 为HostOS留出1GB的RAM。不要过度提交RAM。
  • 使用VirtIO驱动程序进行存储和网络连接。现代Linux来宾对此提供支持。对于Windows guest虚拟机,请使用SATA(存储)和Intel PRO / 1000(网络)驱动程序。可以在Windows下使用virtio驱动程序,但是有点困难。
  • 为2003,WinXP及更高版本的所有来宾启用ACPI和AHCI。
  • 台式机虚拟机应获得所有128MB的显示vRAM
  • 服务器虚拟机应保留9MB的vRAM;不要浪费它。
  • 避免2D和3D加速设置,直到您按照自己的方式进行其他操作为止。我是认真的。启用此功能后,Ubuntu会做坏事。它可以将Core i7带到地面。

有关更多详细信息:http : //blog.jdpfu.com/2012/09/14/solution-for-slow-ubuntu-in-virtualbox


1
如何预分配整个虚拟磁盘?
Toskan

5
“使用VirtIO驱动程序进行存储” -除非我缺少明显的东西,否则VirtualBox不会实现半虚拟化存储。如果有,请告诉我在哪里,因为我很想使用它。
cdhowie

仅分配所需的存储。我不同意这一点。您可以将磁盘动态设置为50 GB。如果首先分配的空间太小,则会给稳定性带来麻烦。动态可扩展空间并不会一直占用最大空间,而只会占用所需的空间。
莱奥列奥波尔德·赫兹준 영

我知道预分配磁盘的唯一方法是使用vboxmanage工具并将旧的VDI文件复制到新的完全分配的VDI文件中。
JohnP

看到vbox最近包含了virtio驱动程序。
JohnP

7

资源不足的虚拟客户机将运行缓慢。为了获得最佳性能,您实际上要为主机提供比来宾更多的资源。同样,您将无法同时将两个CPU都分配给您的虚拟机,因为您的主机需要一些东西来运行一切。

这样想吧。您的主机必须运行自己的系统以及来宾的容器。来宾与主机进行资源争夺战。尝试少给客人一个东西,看看它如何运行。

为了获得最佳性能,您需要一台具有4GB以上内存的64位计算机。


在询问社区之前,我实际上尝试了几种配置,在这个阶段ram应该不会成为问题(大多数未使用),从您的回答中我会发现问题主要取决于cpu(通常为100%),我教我的笔记本电脑足够强大,也许是我错了...
生态学2012年

一种想法可能是观察主机和来宾中的资源使用情况,并查看在何处耗尽了什么。您有什么类型的处理器?
Nate 2012年

它不是您见过的最快的机器,但从未令我失望(答案已更新)。
生态2012年

是的,我会说您的计算机功能不足以实现快速虚拟化。您显然已经在运行它,因此,如果您想与时俱进,则取决于您。
Nate 2012年

2
@ecoologic:Unity2D的运行速度更快-您尝试过吗?
塔卡特2012年

4

除了前面关于最佳VirtualBox设置的答案之外,Nam Huy上还有一篇很棒的博客文章,内容涉及如何使3D加速适用于Ubuntu来宾。这对于Ubuntu 13.04尤其有用,因为不再有安装Unity 2D的选项,由于软件渲染,全新安装不会在80-100%的CPU负载上造成任何实际工作量,这对我来说实际上是无用的。

基本思想是安装来宾添加项,将“ vboxvideo”加载到etc/modules,重新启动,然后在VirtualBox Display设置中激活3D加速。请注意,启用3D加速必须是在guest虚拟机中配置所有其他功能之后的最后一步。

对我而言,这带来了巨大的性能提升,在全屏模式下,我什至无法分辨本机操作系统与Ubuntu来宾之间的区别。


对于那些也遇到“数据库连接错误”的人,有Way Way Machine的缓存版本:web.archive.org/web/20160320085343/https
Pavel

4

我遇到了同样的问题

主机:Ubuntu 14.10(64位),访客:Windows 7(64位)

即使在主机BIOS中启用了虚拟化,在来宾空闲状态下,CPU负载也始终稳定在40-50%左右

帮助我的是安装了具有Direct 3D支持的Guest Addition(您需要在安全模式下执行此操作)并打开SATA控制器的主机I / O缓存

所以我当前的设置是:

系统

基本内存:4096 Mb(主机总内存8192 Mb)

处理器:6个CPU(主机6个CPU)

PAE / NX:已启用

VT-x / AMD-V:启用

嵌套分页:已启用

显示

显存:128 Mb

3D加速:启用

2D加速:启用

奇迹般有效!虚拟盒子版本:4.3.18_Ubuntu r96516


0

尽管最初的答案非常详细,但坦白地说,直截了当的答案是系统/笔记本电脑太慢且功能不足,除非在Virtualbox版本中存在配置问题或错误,否则无法完成很多工作。您可以尝试进行优化,但是主内存和2个1.66Ghz的CPU内核不会减少它。使用该CPU利用率,很可能是由于交换而没有足够的RAM。

简而言之,您可以尝试使用另一个轻量级的窗口管理器,也可以考虑尝试其他操作系统,以查看Virtualbox是否存在配置问题并更新到最新版本。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.