CUDA Academy · पाठ

NCCL के साथ बहु-GPU

स्केलिंग के लिए सामूहिक संचार

पाठ 4, कुल 4 में से13 चरण

NCCL के साथ बहु-GPU, CoddyKit पर CUDA Academy का एक निःशुल्क पाठ है। यह 4 में से 4वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह CUDA Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। CUDA Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

हाथ से बनाया समाधान कठिन हो जाता है

कई GPU में पीयर प्रतिलिपियाँ हाथ से जोड़ना जल्दी ही जटिल हो जाता है। वास्तविक विस्तार के लिए आपको सामूहिक संचार के लिए बनी लाइब्रेरी चाहिए।

NCCL से परिचय

NVIDIA का समाधान NCCL है, जो सामूहिक संचार की लाइब्रेरी है। यह उपलब्ध सबसे तेज़ लिंक का उपयोग करके GPU के बीच डेटा अपने-आप ले जाती है।

सामूहिक संचालन क्या है

सामूहिक संचालन वह एक क्रिया है जिसमें हर GPU साथ भाग लेता है, जैसे हर कार्ड पर रखे मानों का योग करना। सभी उपकरण एक ही कॉल में सहयोग करते हैं।

मुख्य सामूहिक संचालन: AllReduce

मुख्य संचालन AllReduce है। यह हर GPU के बफ़र को, जैसे जोड़कर, संयोजित करता है और वही परिणाम सभी GPU को वापस देता है।

ncclAllReduce(send, recv, n, ncclFloat, ncclSum, comm, stream);

अन्य सामूहिक संचालन

NCCL सभी GPU के साथ एक GPU का डेटा साझा करने के लिए Broadcast भी देता है, साथ ही अन्य सामान्य विनिमय प्रारूपों के लिए AllGather और ReduceScatter भी देता है।

संचारक

साथ संवाद करने वाले GPU एक समूह बनाते हैं, जिसे संचारक द्वारा ट्रैक किया जाता है। हर सामूहिक कॉल यह हैंडल भेजती है, ताकि NCCL प्रतिभागियों को जान सके।

रैंक GPU की पहचान करते हैं

संचारक के भीतर हर GPU को 0 से शुरू होने वाली एक संख्या मिलती है, जिसे उसका रैंक कहते हैं। रैंक से बताया जाता है कि कौन भेजेगा, कौन प्राप्त करेगा और मूल कौन है।

संचारक बनाना

एक ही प्रक्रिया में मौजूद GPU के लिए ncclCommInitAll आपके दिए हुए उपकरण आईडी की सूची से सभी संचारक एक साथ तैयार करता है।

ncclCommInitAll(comms, nGpus, devs);

प्रवाह-जागरूक

हर NCCL कॉल एक प्रवाह लेती है। संचालन वहीं कतार में लगते हैं और आपके कर्नेल के साथ चलते हैं, इसलिए संचार और गणना एक-दूसरे के साथ हो सकते हैं।

कॉलों का समूह बनाना

डेडलॉक के बिना कई GPU पर सामूहिक संचालन जारी करने के लिए उन्हें ncclGroupStart और ncclGroupEnd के बीच रखें, ताकि NCCL उन्हें साथ लॉन्च करे।

ncclGroupStart();
// per-GPU calls
ncclGroupEnd();

प्रशिक्षण इसे क्यों पसंद करता है

डीप लर्निंग हर चरण में GPU के बीच ग्रेडिएंट समकालित करती है। AllReduce ठीक यही करता है, इसलिए NCCL लगभग सभी बहु-GPU प्रशिक्षण में उपयोग होता है।

त्वरित जाँच

NCCL के उस सामूहिक संचालन को याद करें जो GPU के बीच बफ़र का योग करता है और परिणाम सभी को लौटाता है।

पुनरावलोकन

NCCL तेज़ लिंक पर AllReduce जैसे सामूहिक संचालन चलाता है, जिन्हें रैंक किए गए GPU के कम्युनिकेटर द्वारा व्यवस्थित किया जाता है। यह multi-GPU प्रशिक्षण की रीढ़ है। पाठ्यक्रम पूरा हुआ। ✨

शुरुआत निःशुल्क

एआई शिक्षक के साथ C++ सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
30
पाठ
120

अक्सर पूछे जाने वाले प्रश्न

क्या “NCCL के साथ बहु-GPU” पाठ निःशुल्क है?

हाँ—“NCCL के साथ बहु-GPU” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और CUDA Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। CUDA Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“NCCL के साथ बहु-GPU” में मैं क्या सीखूँगा?

स्केलिंग के लिए सामूहिक संचार आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ CUDA Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या CUDA Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर CUDA Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 4वाँ पाठ है।

“NCCL के साथ बहु-GPU” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस CUDA Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर CUDA Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. डिवाइसों की सूची बनाना और चयन करना
  2. GPU के बीच कार्य का विभाजन
  3. पीयर-टू-पीयर मेमोरी अभिगम
  4. NCCL के साथ बहु-GPU
← CUDA Academy पर वापस जाएँ