2012-04-14 16 views
11

मैंने आज पाइस्टोन के बारे में सीखा और इसलिए मैंने यह देखने का फैसला किया कि मेरे विभिन्न वातावरण कैसा रहे। मैं नंगे धातु पर खिड़कियों चलाने वाले अपने लैपटॉप पर pystones भाग गया और इन परिणामोंपाइथन इतनी धीमी खिड़कियों पर क्यों है?

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 VMs में से कुछ पर भाग गया और 2.7-3.4 गुना बेहतर प्रदर्शन मिला है। इसलिए मैं अपने लैपटॉप पर मेरे VMware लिनक्स वीएम ऊपर निकाल दिया और एक ही परीक्षण reran और मिल गया इन परिणामों:

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 वीएम एक ही विंडो में चल रहा है वास्तव में तेजी से अजगर पर चल रहा है खिड़कियों के नीचे एक ही नंगे धातु।

विंडोज़ पर पाइथन के बारे में इतना अलग क्या है कि यह एक ही बॉक्स पर चल रहे वीएम के अंदर नंगे ओएस पर धीमा प्रदर्शन करता है?

  • अधिक जानकारी विंडोज मंच Win7x64 32 बिट अजगर VMWare
  • में खिड़कियों मंच चल
+0

एक ही समय में चल रही अन्य प्रक्रियाओं पर निर्भर करता है। –

+2

विभिन्न libc।* रन * –

+5

क्या पाइथन वीएम में और लिनक्स 64-बिट पर चल रहा था? मुझे लगता है कि विंडोज संस्करण 32-बिट था। सुनिश्चित करें कि आप सेब से सेब की तुलना कर रहे हैं। – agf

उत्तर

7

मैं अपने सवाल का जवाब नहीं कर सकते हैं 32 बिट linux वीएम दोनों प्लेटफार्मों पर चल रहा है, फिर भी की इस सूची पर विचार चीजें जो एक अंतर बना सकती हैं:

  • आप पाइथन के विभिन्न संस्करणों का उपयोग कर रहे हैं। "2.7.2+" इंगित करता है कि आपका लिनक्स पायथन एक रिलीज के बजाय संस्करण नियंत्रण चेकआउट से बनाया गया था।

  • वे विभिन्न कंपाइलरों (और अनुमानतः अर्थपूर्ण रूप से अलग अनुकूलन स्तर) के साथ संकलित किए गए थे।

  • आपने इसका पुन: प्रस्तुत करने का उल्लेख नहीं किया है। यह कल्पना की जा सकती है कि अगर आप नहीं हैं तो यह एक झटका था।

  • आपका वीएम गलत समय पर हो सकता है।

  • आप पायथन के निर्भरता के विभिन्न कार्यान्वयन, विशेष रूप से इग्नेसियो वेज़क्वेज़-अब्राम बताते हैं libc लिंक कर रहे हैं।

  • मुझे नहीं पता कि पाइस्टोन के वास्तविक मानक क्या हैं, लेकिन कई चीजें अलग-अलग काम करती हैं - यूनिकोड हैंडलिंग या डिस्क आईओ जैसी चीजें सिस्टम-निर्भर कारक हो सकती हैं।

+0

मैं इसे पुन: 3 बार से पहले मैं इस ऊपर लिखा था। हाँ, मैंने इसका जिक्र नहीं किया हालांकि। – boatcoder

3

क्या आप उस विंडोज बॉक्स पर एंटीवायरस सॉफ़्टवेयर चलाते हैं? यह शायद इसे समझा सकता है। मैं व्यक्तिगत रूप से पाइथन, सिगविन और मेरी स्रोत निर्देशिका को एंटीवायरस बहिष्करण सूची में जोड़ना पसंद करता हूं - मुझे लगता है कि मुझे एक छोटा, लेकिन ध्यान देने योग्य गति मिलती है। शायद यह आपके परिणामों को बताता है।

+0

नहीं, कोई एंटीवायरस नहीं। – boatcoder

2

विंडोज़ 10 पर समान समस्या थी - इसकी वजह से विंडोज डिफेंडर था।

मुझे विंडोज डिफेंडर सेटिंग्स में पाइथन निर्देशिकाएं और प्रक्रिया को बाहर करना पड़ा और कंप्यूटर को पुनरारंभ करना पड़ा।

इससे पहले: मुझे किसी भी पायथन कोड को चलाने के लिए ~ 20 सेकंड की तरह इंतजार करना पड़ा - अब यह मिलीसेकंड है।

संबंधित मुद्दे