Ich habe heute etwas über Pystones gelernt und so habe ich beschlossen zu sehen, wie meine verschiedenen Umgebungen waren. Ich lief pystones auf meinem Laptop, die Fenster auf dem blanken Metall ausgeführt und habe diese ErgebnisseWarum ist Python so viel langsamer auf 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)
Dann lief ich es auf einigen unserer Linux-VMs und bekam 2,7-3,4 mal bessere Leistung. So feuerte ich meine vmware Linux VM auf meinem Laptop und reran den gleichen Test und bekam diese Ergebnisse:
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)
Ich kann nicht ganz verstehen, wie die Linux-VM innerhalb der gleichen Windows läuft, ist tatsächlich schneller als Python läuft auf das gleiche blanke Metall unter den Fenstern.
Was ist so anders an Python in Windows, dass es auf dem nackten Betriebssystem langsamer läuft als auf einer VM, auf der Linux auf derselben Box läuft?
- Weitere Details Windows-Plattform Win7x64 32-Bit-Python auf beiden Plattformen laufen 32-Bit-Linux-VM die Windows-Plattform in VMWare
Hängt von den anderen Prozessen ab, die gleichzeitig ausgeführt werden. –
Verschiedene libc.* runs * –
Wurde Python in der VM und unter Linux 64-Bit ausgeführt? Ich sehe die Windows-Version war 32-Bit. Stellen Sie sicher, dass Sie Äpfel mit Äpfeln vergleichen. – agf