InfiniBand कनेक्शन मॉडल


0

मैं यह पता नहीं लगा सकता कि InfiniBand के साथ "कनेक्शन" का मॉडल क्या है?

विशेष रूप से, मैं RDMA स्थानांतरण करना चाह रहा हूँ। अंतिम लक्ष्य आरडीएमए तत्काल के साथ लिखना है, लेकिन मैं सिर्फ आरडीएमए हस्तांतरण के साथ शुरू कर रहा हूं।

यदि इसे एक आईपी कनेक्शन से तुलना करना है, तो आप एक कनेक्शन शुरू करते हैं, उस कनेक्शन पर कमांड जारी करते हैं, फिर कनेक्शन समाप्त करते हैं।

यदि इसकी तुलना HTTP क्वेरी / प्रतिक्रिया से की जा सकती है, तो आप एक स्व-निहित अनुरोध करते हैं और वह है।

इनमें से प्रत्येक के पास काफी अलग एपीआई हैं, लेकिन मैं एपीआई में इन के लिए पैटर्न नहीं खोज सकता।

उदाहरण के लिए, जब मैं एक RDMA हस्तांतरण के लिए आवश्यक संरचनाओं का निर्माण करता हूं, तो मैं इसे अपने पते की जानकारी और दूरस्थ मेमोरी के vaddr / rkey देता हूं ... लेकिन कहीं नहीं मिल सकता है कि इसे लक्ष्य होस्ट इंटरफ़ेस की पता जानकारी कहां देनी है।

लगभग हर उदाहरण मैंने देखा है कि C कॉल्स और जटिल संरचना (OO, लोग?) का एक भयानक संग्रह है और इसके अलावा, वे या तो IBConnectionManager का उपयोग करते हैं या अन्य जानकारी को पारित करने के लिए सॉकेट का उपयोग करते हैं, और एपीआई के आधार को आगे बढ़ाते हुए। आरडीएमए-राइट या आरडीएमए-राइट-विथ-इमीडिएट प्रदर्शन करने के लिए वास्तव में क्या आवश्यक है, इसका स्पष्ट विवरण किसी को नहीं लगता है।

इसलिए: मैं यह कैसे करु?


मैंने पहले कभी आईबी को प्रोग्राम नहीं किया है, लेकिन मैंने लगभग सभी कॉल द्वारा उपयोग किए जाने वाले विशाल "संदर्भ" संरचना के साथ सी एपीआई की इस शैली को देखा है। मुझे उम्मीद है कि अन्य आईबी डिवाइस के बारे में जानकारी उस संदर्भ संरचना में होगी, और आपको पहले डिवाइस को "ओपन" या "माउंट" करने के लिए अन्य डिवाइस द्वारा पॉपुलेट किया जा सकता है। सॉर्ट करें कि कैसे क्लासिक UNIX / C फ़ाइल I / O API में एक ओपन () कॉल है जो एक फ़ाइल पथ / नाम लेता है और एक फ़ाइल पॉइंटर लौटाता है, और आपके बाद के कॉल पढ़ने () और लिखने () की उम्मीद करते हैं कि फ़ाइल पॉइंटर फ़ाइल का पथ / नाम।
Spiff

@Spiff अधिकांश उदाहरणों में एक विशाल संदर्भ होता है, लेकिन वे ibverts API में पारित नहीं होते हैं। कहीं सूचना ibverbs को दी जानी है।
iAdjunct

यदि आप असीम वास्तुकला से अपरिचित हैं, तो मेरा सुझाव है कि पहले मूल बातें पढ़ें: infinibandta.org/content/... । पूर्ण मूल बातें: एसडीपी एक घटक है जो एक आईबी कपड़े पर उपकरणों के बीच सॉकेट का प्रबंधन करता है, एसएम संबोधन करता है, सीएम कनेक्शन बनाता है। एक बार जब आपकी कतारें आपके उपकरणों के बीच स्थापित हो जाती हैं, तो आपके आवेदन RDMA स्थानान्तरण के लिए सॉकेट तक पहुँच सकते हैं।
MaQleod

यदि आप यहां क्या करने की कोशिश कर रहे हैं, तो इसके बारे में अधिक वर्णन करने की कोशिश कर रहे हैं - तो क्या आप एक ओएस विकसित कर रहे हैं जो वर्तमान ओएफईडी स्टैक का उपयोग करता है? या सिर्फ एक एप्लिकेशन जो ओफेड स्टैक द्वारा प्रबंधित सॉकेट्स का उपयोग करेगा?
MaQleod
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.