在虚拟机或物理机上运行模拟更好吗?

时间:2014-11-17 17:57:41

标签: java performance virtual-machine

我需要为我的论文运行很多的计算模拟。 我使用Java进行模拟。

我在计算机上运行Windows 8.1。我还有一个在VMWare Workstation上运行的虚拟Ubuntu 14.04。

在虚拟机或物理机上运行它们会更好吗? 这个问题实际上是两个折叠:

1)使用Ubuntu或Windows与Java相比更好吗? 2)使用物理机或虚拟机更好吗?

我找不到具体的答案。后台进程是否比虚拟机更能影响计算速度?

3 个答案:

答案 0 :(得分:4)

1)无所谓,因为JVM不能更好地运行'在Linux或Windows上。由于您在Windows上运行Ubuntu,因此您将占用主机操作系统的资源。所以我在这种情况下选择在Windows上运行它。 2)请参阅1.如果主机操作系统足够,为什么要使用虚拟机?你只会放松资源。

答案 1 :(得分:0)

  

将Ubuntu或Windows与Java一起使用会更好吗?

Java应该在Ubuntu或Windows上运行良好。

  

使用物理机或虚拟机会更好吗?

如果你有很多设置/拆卸来运行每个测试,虚拟机可能会使这更容易。否则,无论使用物理机还是虚拟机,它都不会有太大区别。

由于这是一篇论文,您可能希望在计算机上运行一些测试,以查看Ubuntu或Windows,或物理机或虚拟机之间是否存在重大性能差异。这样,您就可以在论文中保护您的操作系统和虚拟/物理决策。

答案 2 :(得分:0)

1)我怀疑这两者之间是否存在明显差异。

2)取决于很多东西。您的模拟是否严重受磁盘I / O限制?如果是这样,VM可能会降低它们的速度并且裸机访问可能会更好。它们是多线程的吗?同样,除非您为VM分配了大量虚拟内核,否则VM可能会降低速度。但是如果它们长时间运行,那么在运行过程中暂停和恢复VM或拍摄快照的能力可能会很方便。

它们不是多线程的,你有大量的物理内存吗?您可以并行运行多个VM,并利用多个处理器内核而无需进行线程处理。有太多的变量无法正确回答。