1000 से अधिक पंक्तियों और 10 के कॉलम के साथ दो int matrices ए और बी होने के बाद, मुझे अक्सर उन्हें गतिरोध (4x या अधिक) प्राप्त करने के लिए फ़्लोट मैट्रिस में परिवर्तित करने की आवश्यकता होती है।int int int की तुलना में फ्लोट मैट्रिक्स गुणा द्वारा फ़्लोट करने के लिए तेज़ क्यों है?
मुझे आश्चर्य है कि यह मामला क्यों है? मुझे एहसास है कि फ्लोट मैट्रिक्स गुणा के साथ चल रहे एवीएक्स आदि जैसे बहुत सारे अनुकूलन और वेक्टरेशन हैं। लेकिन फिर भी, पूर्णांक के लिए ऐसे AVX2 निर्देश हैं (यदि मुझे गलत नहीं है)। और, क्या कोई पूर्णांक के लिए एसएसई और एवीएक्स का उपयोग नहीं कर सकता?
मैट्रिक्स बीजगणित पुस्तकालयों जैसे कि नम्पी या ईजिन के नीचे एक ह्युरिस्टिक क्यों नहीं है और इसे पूर्ण करने के लिए पूर्णांक पूर्णांक मैट्रिक्स गुणा निष्पादित करता है?
स्वीकार किए जाते हैं जवाब के बारे में: जबकि @ Sascha का जवाब बहुत जानकारीपूर्ण और प्रासंगिक है, @ chatz के जवाब वास्तविक कारण है कि पूर्णांक गुणन द्वारा int की BLAS पूर्णांक मैट्रिक्स आपरेशन मौजूद है कि क्या पर ध्यान दिए बिना धीमी है।
इससे सवाल अधिक विशिष्ट बनाने में मदद मिलेगी, लेकिन अधिक से अधिक लोगों को इसे फ्लोट के लिए जरूरी है, इसलिए इसे फ्लोट (सॉफ़्टवेयर और हार्डवेयर दोनों में) के अनुकूल बनाने के लिए अधिक प्रयास किए गए थे। –
प्रदर्शन अंतर को प्रदर्शित करने के लिए इस प्रश्न को एक विशिष्ट उदाहरण कोड की आवश्यकता है (देखें [mcve])। विशेष रूप से दिया गया है कि कोड टैग किया गया है [सी ++] और [numpy] यह पूरी तरह अस्पष्ट है कि आप क्या कह रहे हैं। – Zulan