我正在使用VirtualBox 5.1在一台有48个CPU和250GB RAM的主机上运行,我要导入的虚拟机(客户机)最初有2个CPU和4GB RAM。
在这台机器中,我正在运行一个使用Java启动动态线程执行某些任务的进程。
我使用以下配置运行它:
在我的笔记本电脑上的整个过程(2个CPU / 4GB RAM)~ 11秒
在服务器上的虚拟机中相同的程序(15个CPU和32GB RAM)~ 45秒
在服务器上的虚拟机中相同的程序(20个CPU和32GB RAM)~ 100+秒
在服务器上的虚拟机中相同的程序(10个CPU和32GB RAM)~ 5+秒
起初,我认为我从Java管理线程的方式存在问题,但经过多次测试后,我发现虚拟机拥有的CPU数量与其性能之间存在关系,最大值为10,在此之后,机器的整体性能会变慢(CPU饥饿?)。
虚拟机运行Oracle Enterprise Linux 6.7,主机运行Oracle Enterprise Linux 6.9。
在Virtual Machine文档中,我没有找到任何关于CPU数量的硬限制。 是否需要设置某些设置才能在VirtualBox实例中启用/利用超过10个CPU?
在这台机器中,我正在运行一个使用Java启动动态线程执行某些任务的进程。
我使用以下配置运行它:
在我的笔记本电脑上的整个过程(2个CPU / 4GB RAM)~ 11秒
在服务器上的虚拟机中相同的程序(15个CPU和32GB RAM)~ 45秒
在服务器上的虚拟机中相同的程序(20个CPU和32GB RAM)~ 100+秒
在服务器上的虚拟机中相同的程序(10个CPU和32GB RAM)~ 5+秒
起初,我认为我从Java管理线程的方式存在问题,但经过多次测试后,我发现虚拟机拥有的CPU数量与其性能之间存在关系,最大值为10,在此之后,机器的整体性能会变慢(CPU饥饿?)。
虚拟机运行Oracle Enterprise Linux 6.7,主机运行Oracle Enterprise Linux 6.9。
在Virtual Machine文档中,我没有找到任何关于CPU数量的硬限制。 是否需要设置某些设置才能在VirtualBox实例中启用/利用超过10个CPU?