HetCCL: Enabling Collective Communication For Mixed-Vendor Heterogeneous Clusters
doesCCL एक नवीन ढांचा है जो होस्ट-डिवाइस कॉपी-फ्री P2P ट्रांसपोर्ट, एक वेंडर-स्वतंत्र बॉर्डर-कम्युनिकेटर मैकेनिज्म और एक पदानुक्रमित टोपोलॉजी एब्स्ट्रैक्शन को पेश करके मिश्रित-वेंडर हेट्रोजेनियस क्लस्टर्स में कुशल सामूहिक संचार (collective communication) सक्षम करता है, जिससे Gloo की तुलना में 19 गुना अधिक बैंडविड्थ प्राप्त होती है और LLM प्रशिक्षण में 16.9% की तेजी आती है।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
कल्पना कीजिए कि आप एक विशाल, वैश्विक रिले रेस आयोजित करने की कोशिश कर रहे हैं ताकि एक सुपर-स्मार्ट AI (एक Large Language Model) को प्रशिक्षित किया जा सके। अतीत में, आप केवल एक विशिष्ट देश के धावकों (एक ही हार्डवेयर वेंडर, जैसे NVIDIA) का उपयोग कर सकते थे। वे सभी एक जैसे जूते पहनते थे, एक ही भाषा बोलते थे, और उन्हें ठीक से पता था कि बैटन (बैटन/छड़ी) को कैसे पास करना है। इससे दौड़ तेज़ और सुचारू रहती थी।
लेकिन आज, केवल एक देश के धावकों के साथ दौड़ चलाना बहुत महंगा या असंभव है क्योंकि आपूर्ति कम है। इसलिए, आप अलग-अलग देशों के धावकों (NVIDIA, AMD, Huawei, आदि) को मिलाने का निर्णय लेते हैं। समस्या यह है कि वे अलग-अलग भाषाएं बोलते हैं, अलग-अलग जूते पहनते हैं, और उन्हें एक-दूसरे को बैटन इस तरह से नहीं सौंपना आता कि वह गिर न जाए।
यह समस्या HetCCL हल करता है। यह कैसे काम करता है, यहाँ सरल अवधारणाओं में दिया गया है:
1. समस्या: "होस्ट" (Host) की बाधा
पुराने मिश्रित-दौड़ के प्रयासों में, यदि देश A के धावक को देश B के धावक को बैटन पास करने की आवश्यकता होती, तो उन्हें पहले एक केंद्रीय "कोच" (CPU) के पास जाना पड़ता। कोच बैटन लेता, उसे क्लिपबोर्ड पर लिखता, दूसरी ओर दौड़कर जाता, और नए धावक को सौंप देता।
- समस्या: यह "कोच" वाला चरण धीमा है। यह दौड़ने में समय बर्बाद करता है, और कोच और धावकों के बीच का रास्ता एक संकीक, भीड़भाड़ वाला गलियारा (PCIe बॉटलनेक) है।
2. समाधान: "डायरेक्ट लाइन" (Direct Line - P2P ट्रांसपोर्ट)
HetCCL बैटन पास करने का एक नया तरीका आविष्कार करता है। कोच का उपयोग करने के बजाय, यह अलग-अलग देशों के धावकों के हाथों के बीच एक सीधा, हाई-स्पीड टनल (सुरंग) बनाता है।
- यह कैसे काम करता है: HetCCL "कंट्रोल" (कब दौड़ना है, इसके निर्देश) को कोच के पास रखता है, लेकिन "डेटा" (वास्तविक बैटन) पूरे समय धावकों के हाथों में रहता है।
- उपमा: कल्पना कीजिए कि कोच एक टेक्स्ट मैसेज भेजता है, "जाओ!" धावक फिर सीधे एक सुपर-फास्ट टनल के माध्यम से एक-दूसरे को बैटन पास करते हैं, जिससे कोच के ऑफिस को पूरी तरह से बायपास किया जा सकता है। यह "आने-जाने में दौड़ने" के समय को समाप्त कर देता है।
3. "बॉर्डर गार्ड" (Border Guard) ट्रिक (वेंडर-स्वतंत्र रिडक्शन)
कभी-कभी, दौड़ केवल बैटन पास करने के बारे में नहीं होती; यह जानकारी को संयोजित करने के बारे में होती है। उदाहरण के लिए, यदि धावक A के पास संख्या "5" है और धावक B के पास "3" है, तो उन्हें आगे भेजने से पहले परिणाम प्राप्त करने के लिए उन्हें "8" जोड़ने की आवश्यकता होती है।
- समस्या: अलग-अलग देश अलग-अलग कैलकुलेटर का उपयोग करते हैं। आप धावक A को धावक B का कैलकुलेटर उपयोग करने के लिए नहीं कह सकते।
- समाधान: HetCCL एक "बॉर्डर गार्ड" प्रणाली बनाता है। यह विभिन्न धावकों से नंबर लेता है, उन्हें एक विशिष्ट "बॉर्डर स्टेशन" पर ले जाता है जहाँ एक मानक, सार्वभौमिक कैलकुलेटर (प्रत्येक देश के मौजूदा सॉफ़्टवेयर में निर्मित) गणित कर सकता है। यह एक सार्वभौमिक अनुवादक रखने जैसा है जो सीमा पर सभी के लिए जोड़ (addition) करता है, ताकि किसी को नई भाषा सीखने की आवश्यकता न पड़े।
4. "असेंबली लाइन" (Assembly Line - पदानुक्रमित और पाइपलाइन्ड डिज़ाइन)
कई टीमों वाली एक बड़ी दौड़ में, यदि हर कोई पिछले टीम के समाप्त होने का इंतजार करता है, तो दौड़ धीमी हो जाती है।
- समाधान: HetCCL दौड़ को एक पदानुक्रमित असेंबली लाइन में व्यवस्थित करता है।
- चरण 1: एक ही देश के भीतर के धावक पहले अपने स्थानीय हैंडऑफ (बैटन सौंपने) को पूरा करते हैं।
- चरण 2: जब वे ऐसा कर रहे होते हैं, तब "बॉर्डर गार्ड्स" देशों के बीच डेटा पास करना शुरू कर देते हैं।
- चरण 3: अंतिम हैंडऑफ फिर से देशों के भीतर ही होता है।
- उपमा: पूरी लाइन के रुकने का इंतजार करने के बजाय, अगला बैच तब शुरू हो जाता है जब पिछला बैच ट्रैक खाली कर देता है। यह "टनल्स" (नेटवर्क बैंडविड्थ) को खाली बैठने के बजाय भरा हुआ और व्यस्त रखता है।
उन्होंने क्या सिद्ध किया?
शोधकर्ताओं ने इस प्रणाली (जिसे HetCCL कहा जाता है) को बनाया और इसे चार अलग-अलग कंपनियों के वास्तविक हार्डवेयर के साथ टेस्ट किया। उन्हें यहाँ क्या मिला:
- गति: मिश्रित-दौड़ परिदृश्यों में, HetCCL पुराने "कोच" तरीके (Gloo) की तुलना में 17 से 19 गुना तेज़ था।
- दक्षता: इसने लगभग उतनी ही गति प्राप्त की जितनी कि तब होती जब सभी एक ही देश के होते, भले ही हार्डवेयर को मिलाया गया हो।
- वास्तविक दुनिया का प्रभाव: जब उन्होंने इसका उपयोग AI मॉडल (जैसे Llama 3) को प्रशिक्षित करने के लिए किया, तो प्रशिक्षण प्रक्रिया पुराने तरीकों की तुलना में प्रति स्टेप 16.9% तक तेज़ पूरी हुई।
संक्षेप में: HetCCL एक सार्वभौमिक अनुवादक और एक्सप्रेस लेन है जो विभिन्न प्रकार के कंप्यूटर चिप्स को एक टीम के रूप में काम करने की अनुमति देता है ताकि वे एक-दूसरे को धीमा न करें, जिससे विशाल AI सिस्टम बनाना सस्ता और तेज़ हो जाता है।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।