मैं में 3 x n मैट्रिक्स z
संग्रहीत n वैक्टर का एक सेट है। मुझे np.einsum
का उपयोग कर बाहरी उत्पाद मिलता है।"मध्यवर्ती परिणाम कैश किया जा रहा है" क्या मतलब है?
%timeit v=np.einsum('i...,j...->ij...',z,z)
मैं परिणाम मिला:: जब मैं इसे का उपयोग समय समाप्त हो गया
The slowest run took 7.23 times longer than the fastest. This could mean that an
intermediate result is being cached
100000 loops, best of 3: 2.9 µs per loop
यहाँ क्या हो रहा है और यह बचा जा सकता है? सबसे अच्छा 3 2.9us है, लेकिन सबसे धीमा शायद अधिक विशिष्ट है।
परीक्षण प्रयोजनों के लिए, को बढ़ाने के लिए आकार 'n', यह' z' के अंश जो अपने CPU के कैश में संग्रहीत किया जाता है कम हो जाएगा कोशिश करते हैं और संदेश कुछ बिंदु पर गायब हो जाना चाहिए –