सरणी आयामों को बढ़ाने के साथ पायथन / नेम्पी सरणियों को कैसे किया जाता है?
यह कुछ व्यवहार पर आधारित है जिसे मैंने इस प्रश्न के लिए पायथन कोड को बेंचमार्क करते समय देखा था: इस जटिल अभिव्यक्ति को संख्यात्मक स्लाइस का उपयोग करके कैसे व्यक्त करें
समस्या ज्यादातर एक सरणी को आबाद करने के लिए अनुक्रमण को शामिल करती है। मैंने पाया कि पायथन लूप में साइथॉन और नेम्पी संस्करणों का उपयोग करने के फायदे (बहुत-अच्छे नहीं) शामिल सरणियों के आकार के आधार पर भिन्न होते हैं। Numpy और Cython दोनों एक बिंदु तक बढ़ते प्रदर्शन लाभ का अनुभव करते हैं (कहीं-कहीं मोटे तौर पर लिए Cython और N = 2000 मेरे लैपटॉप पर Numpy के लिए), जिसके बाद उनके फायदे में गिरावट आई (Cython फ़ंक्शन सबसे तेज़ रहा)।
क्या यह हार्डवेयर परिभाषित है? बड़े सरणियों के साथ काम करने के संदर्भ में, सबसे अच्छा अभ्यास क्या है कि किसी को कोड के लिए पालन करना चाहिए जहां प्रदर्शन की सराहना की जाती है?
यह प्रश्न ( मेरी मैट्रिक्स-वेक्टर गुणन स्केलिंग क्यों नहीं है? ) संबंधित हो सकता है, लेकिन मुझे इस बारे में अधिक जानने में रुचि है कि पायथन स्केल के उपचार के विभिन्न तरीके एक-दूसरे के सापेक्ष कैसे हैं।