क्यों अजगर अपेक्षाकृत धीमी गति से चलता है?


13

मैं अपने कुछ सिमुलेशन कोड्स पर पाई का बेंचमार्किंग कर रहा हूं, मेरे पास कुछ लैपटॉप हैं। मेरे कोड्स फ्लोटिंग पॉइंट इंटेंसिव होते हैं, इसलिए मैं इसके हार्ड-फ्लोटिंग समर्थन के कारण रास्पियन (जो बहुत तेज़ निकला ) का उपयोग कर रहा हूं । मेरा कई अलग-अलग भाषाओं में समान सरल कोड है। स्पष्ट रूप से पायथन कोड C कोड की तुलना में धीमा है जो भी मंच मैं उपयोग करता हूं, लेकिन पाई पर यह लगभग 3. के कारक से अपेक्षाकृत अधिक धीमा प्रतीत होता है , क्या कोई जानता है कि पाई पर पायथन दुभाषिया अपेक्षाकृत धीमा होने की संभावना क्यों है, और क्या यह तय होने की संभावना है?

यहाँ परीक्षण है:

import random,math

def gibbs(N=50000,thin=1000):
    x=0
    y=0
    print "Iter  x  y"
    for i in range(N):
        for j in range(thin):
            x=random.gammavariate(3,1.0/(y*y+4))
            y=random.gauss(1.0/(x+1),1.0/math.sqrt(2*x+2))
        print i,x,y

gibbs()

से इस ब्लॉग पोस्ट प्रयोग के बारे में।


2
सेल्फ प्रमोशन ठीक है (कारण के भीतर) लेकिन आपके सभी ब्लॉग लिंक वास्तव में प्रश्न में जोड़े गए कोड थे, इसलिए मैंने इसे यहां स्थानांतरित किया है।
Jivings

2
उम, इसमें विवरण और समय भी शामिल था और अन्य संभावित उपयोगी पृष्ठभूमि जो इस दावे को पुष्ट करती थी कि पाई इंटेल पर आधारित इंटेल की लिनक्स मशीनों की तुलना में पाई के सापेक्ष धीमी है, जो कि प्रश्न के बिंदु की तरह था ...
डैरेन विल्सन

2
मैंने पूरी पोस्ट पढ़ी, मुझे नहीं लगता कि इसने इस जानकारी को प्रश्न के लिए अविश्वसनीय रूप से प्रासंगिक माना। और सभी को जानकारी के एक पृष्ठ को पढ़ने से पहले यह पूछने के लिए कि वे आपके प्रश्न का उत्तर दे सकते हैं, आपको बहुत सारे उत्तर नहीं मिलेंगे। प्रोग्रामर परिभाषा के अनुसार, आलसी हैं। हमें
चंक्स

8
यह एक निर्णय कॉल है कि मैं ठीक हूं, जैसा कि मैं एक आसान प्रकार का आदमी हूं ... लेकिन मैं थोड़ा चिंतित हूं कि इस साइट पर पोस्ट किए गए लगभग हर सवाल का यह अति उत्साही लोगों को पता लगाने की संभावना है भाग लेने से। मुझे पता है कि यह सबसे अच्छे इरादों के साथ किया गया है, लेकिन आप जानते हैं कि वे नर्क की सड़क के बारे में क्या कहते हैं ... मुझे वास्तव में लगता है कि यह कुछ ऐसा है जिसे आप सभी बहुत सक्रिय प्रश्न संपादकों को सोचने और बातचीत करने के लिए कुछ समय लेना चाहिए। यह एक वास्तविक शर्म की बात होगी यदि यह साइट कुछ सुविचारित लेकिन गुमराह व्यक्तियों के कार्यों के कारण बंद नहीं हुई।
डैरेन विलकिंसन

1
बेवकूफ सवाल ... क्या आप समीकरण के दोनों तरफ अजगर का एक ही संस्करण चला रहे थे? मैं एक ही हार्डवेयर पर उम्मीद करूंगा, python3 python2 की तुलना में समान कोड को तेजी से चलाएगा क्योंकि python3 पर रेंज एक इट्रेटर है और python2 पर, यह वह सूची बनाता है जो कम कुशल है (python2 पर xrange का उपयोग करें) ... उदाहरण के लिए देखें stackoverflow। com / प्रश्न / 94,935 / ...
टेलीफोन

जवाबों:


7

मुझे लगता है कि पायथन दुभाषिया एआरएम के लिए बस अनुकूलित नहीं है। पायथन को अन्य प्लेटफार्मों के लिए अनुकूलित किया गया हो सकता है। मेरे अनुभव में, यह ओपनएसएसएच जैसे सॉफ्टवेयर के लिए सच है, इसलिए मैं मान लेता हूं कि यह पायथन के लिए समान है।


2

अजगर शायद कैश कैश की कमी से ग्रस्त है। मुझे यकीन नहीं है कि आप इसे आसानी से कैसे माप सकते हैं

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.