CUDA Academy · पाठ

कार्य को ग्राफ में कैप्चर करना

स्ट्रीम को CUDA ग्राफ में रिकॉर्ड करना

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

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

CUDA ग्राफ क्या है

एक CUDA ग्राफ कर्नेल और कॉपी की पूरी श्रृंखला को काम की एक पुनः-उपयोग योग्य इकाई के रूप में रिकॉर्ड करता है, जिसे आप बार-बार सबमिट कर सकते हैं।

लॉन्च जुड़ते जाते हैं

हर अलग कर्नेल लॉन्च में थोड़ा CPU ओवरहेड होता है। हर पुनरावृत्ति में हज़ारों लॉन्च होने पर यह लागत महत्वपूर्ण हो जाती है।

एक बार परिभाषित करें, कई बार चलाएँ

ग्राफ आपको काम का वर्णन एक बार करने देता है, फिर उसे कम लागत में दोबारा चलाया जा सकता है; सेटअप की लागत केवल एक बार देनी पड़ती है।

स्ट्रीम कैप्चर मोड

ग्राफ बनाने का सबसे आसान तरीका स्ट्रीम कैप्चर है: आप पहले से किए जा रहे सामान्य लॉन्च को स्ट्रीम में रिकॉर्ड करते हैं।

cudaStreamBeginCapture(stream, cudaStreamCaptureModeGlobal);

काम सामान्य रूप से जारी करें

आरंभ और अंत के बीच आप हमेशा की तरह कर्नेल और कॉपी लॉन्च करते हैं। अभी कुछ नहीं चलता; ऑपरेशन रिकॉर्ड होते हैं, निष्पादित नहीं।

kernelA<<<g, b, 0, stream>>>(d);
kernelB<<<g, b, 0, stream>>>(d);

कैप्चर समाप्त करें

आप cudaStreamEndCapture से रिकॉर्डिंग रोकते हैं, जो पूरे काम का वर्णन करने वाला cudaGraph_t लौटाता है।

cudaGraph_t graph;
cudaStreamEndCapture(stream, &graph);

निर्भरताएँ स्वतः निर्धारित

स्ट्रीम का उपयोग करने के आपके तरीके के आधार पर कैप्चर ऑपरेशन के बीच की निर्भरताएँ अपने-आप निर्धारित कर लेता है।

चलाने से पहले इंस्टैंशिएट करें

ग्राफ केवल एक विवरण है। इसे लॉन्च करने से पहले आपको इसे चलाने योग्य ग्राफ निष्पादन ऑब्जेक्ट में कंपाइल करना होगा।

cudaGraphExec_t exec;
cudaGraphInstantiate(&exec, graph, 0);

ग्राफ हाथ से बनाना

संरचना और किनारों पर पूरा नियंत्रण पाने के लिए आप ग्राफ API से नोड को स्पष्ट रूप से भी जोड़ सकते हैं।

cudaGraphAddKernelNode(&n, graph, deps, 1, &params);

कई स्ट्रीम, एक ग्राफ

कैप्चर कई स्ट्रीम तक फैल सकता है, इसलिए समवर्ती रूप से चलने वाली स्वतंत्र शाखाएँ एक ही ग्राफ में शामिल हो जाती हैं।

कई पुनरावृत्तियों में पुनः उपयोग

एक बार इंस्टैंशिएट होने के बाद उसी निष्पादन ऑब्जेक्ट को बार-बार लॉन्च किया जाता है; ग्राफ का असली लाभ यहीं मिलता है।

त्वरित जाँच

cudaStreamEndCapture क्या बनाता है?

पुनरावलोकन: ग्राफ कैप्चर करना

लॉन्च को स्ट्रीम कैप्चर में लपेटकर cudaGraph_t रिकॉर्ड करें, उसे एक बार इंस्टैंशिएट करें, और कैप्चर को आपके लिए निर्भरताएँ निर्धारित करने दें। शानदार प्रगति! 🎉

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

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

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

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

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

क्या “कार्य को ग्राफ में कैप्चर करना” पाठ निःशुल्क है?

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

“कार्य को ग्राफ में कैप्चर करना” में मैं क्या सीखूँगा?

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

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

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

“कार्य को ग्राफ में कैप्चर करना” पाठ पूरा करने में कितना समय लगता है?

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

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

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

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

  1. एक कर्नेल से कर्नेल लॉन्च करना
  2. डायनेमिक पैरेललिज़्म कब लाभ देता है
  3. कार्य को ग्राफ में कैप्चर करना
  4. ओवरहेड घटाने के लिए ग्राफ को फिर चलाना
← CUDA Academy पर वापस जाएँ