今天我了解了pystones,所以我决定看看我的各种环境是什么样的。我在我的笔记本电脑上运行pystones,它在裸机上运行windows,得到了这些结果Python 2.7.2 (default, Jun 12 2011, 15:08:59) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> from test import pystone
>>> for i in range(0,10):
... pystone.pystones()
...
(1.636334799754252, 30556.094026423627)
(2.1157907919853756, 23631.82607155689)
(2.5324817108003685, 19743.479207278437)
(2.541626695533182, 19672.4405231788)
(2.536022267835051, 19715.915208695682)
(2.540327088340973, 19682.50475676099)
(2.544761766911506, 19648.20465716261)
(2.540296805235016, 19682.739393664764)
(2.533851636391205, 19732.804905346253)
(2.536483186973612, 19712.3325148696)
然后我在我们的一些linux虚拟机上运行它,获得了2.7-3.4倍的性能。所以我在笔记本电脑上启动了vmware Linux VM,并重新进行了相同的测试,得到了以下结果:Python 2.7.2+ (default, Oct 4 2011, 20:03:08)
[GCC 4.6.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> for i in range(0,10):
... pystone.pystones()
...
(1.75, 28571.428571428572)
(1.17, 42735.042735042734)
(1.6600000000000001, 30120.48192771084)
(1.8399999999999999, 27173.913043478264)
(1.8200000000000003, 27472.52747252747)
(1.8099999999999987, 27624.30939226521)
(1.3099999999999987, 38167.938931297744)
(1.7800000000000011, 28089.88764044942)
(1.8200000000000038, 27472.527472527414)
(1.490000000000002, 33557.04697986573)
我不太明白在同一个窗口中运行的linux VM实际上比在windows下运行在同一个裸机上的python快多少。
windows上的python与在同一个机器上运行Linux的VM中的python有什么不同,以至于它在裸操作系统上的执行速度慢于在同一个机器上运行Linux的VM?更多细节
Windows平台Win7x64
在两个平台上运行的32位python
在VMWare中运行windows平台的32位linux虚拟机