2012-10-16 8 views
8

BLAS Level 1 API में से अधिकांश को फोरट्रान 9एक्स + वेक्टरिज्ड असाइनमेंट और आंतरिक प्रक्रियाओं का उपयोग करके सीधे आगे लिखा जा सकता है।क्या ब्लेज़ स्तर 1 प्रक्रियाएं आधुनिक किलेर कंपाइलरों के लिए अभी भी प्रासंगिक हैं?

मान लिया जाये कि आप एक आधुनिक अनुकूलन संकलक का उपयोग कर रहे, Intel Fortran की तरह है, और सही लक्ष्य-विशिष्ट संकलक अनुकूलन विकल्प, वहाँ के बजाय BLAS स्तर 1 प्रक्रियाओं का उपयोग करने से किसी भी प्रदर्शन लाभ हैं, Intel MKL या अन्य फास्ट BLAS कार्यान्वयन से कहा?

यदि वहां हैं, तो ये लाभ दिखाई देने पर एक सामान्य वेक्टर आकार क्या होता है?

उत्तर

9

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

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

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