2010-06-02 9 views
12

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

अब तक, मैं ने पाया है:

इंटेल निर्देश संदर्भ Intel 64 and IA-32 Architectures Developer's Manual: Vol. 2A और Intel 64 and IA-32 Architectures Developer's Manual: Vol. 2B

इंटेल अनुकूलन निर्देशिका http://www.intel.com/Assets/PDF/manual/248966.pdf

पूर्णांक संचालन http://gmplib.org/~tege/x86-timing.pdf

उत्तर

10

इंटेल निर्देश संदर्भ की टाइमिंग साबित करना चाहिए इन निर्देशों को वास्तव में क्या करने के लिए एक पर्याप्त गाइड पर विचार करें, मैंने सोचा होगा? इसमें प्रत्येक के लिए छद्म कोड है, इसके संचालन का विवरण है, और कुछ मामलों में भी एक प्रतिनिधि मामले का एक छोटा आरेख है।

समय के लिए, कोई आधिकारिक मार्गदर्शिका नहीं है जिसे मैं जानता हूं। Agner कोहरा के पृष्ठ मानक संदर्भ है:

http://www.agner.org/optimize/

+0

एजनर गाइड बहुत अच्छा है। वास्तव में मुझे क्या चाहिए। – Joe

7

Intel's Intrinsic Guide (AVX पेज के नीचे बाईं ओर), एक सुव्यवस्थित खोजा उपकरण है, जहां आप SSE संस्करण और/या अनुदेश द्वारा को कम कर सकते हैं प्रकार, उदाहरण के लिए, एफपी अंकगणित या पूर्ण तार्किक।

प्रत्येक निर्देश के लिए, यह सीपीयू और पैरामीटर द्वारा विलंबता/थ्रूपुट तालिका भी दिखाता है।

+2

यह देखने के लिए सबसे अच्छा है कि आप क्या चाहते हैं कि निर्देश क्या कर सकते हैं। अन्य मार्गदर्शिकाएं बिल्कुल बताती हैं कि प्रत्येक एएसएम निर्देश क्या करता है, लेकिन यह इतना अधिक जगह लेता है कि आपको एक सिंहावलोकन नहीं मिल सकता है। मैं उम्मीद कर रहा था कि इंट्रिनिक्स गाइड के समान कुछ होगा, लेकिन सीधे एएसएम के लिए। फिर भी, यह ज्यादातर 1: 1 मैपिंग है। –

1

समय "इंटेल ऑप्टिमाइज़ेशन गाइड" में है; प्रत्येक सीपीयू आर्किटेक्चर के प्रत्येक निर्देश के लिए थ्रूपुट और विलंबता के लिए परिशिष्ट सी देखें।

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