CUDA Academy · पाठ

threadIdx, blockIdx, blockDim

थ्रेड का स्थान बताने वाले अंतर्निर्मित चर।

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

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

मैं कहाँ हूँ

हर थ्रेड एक ही कोड चलाता है, इसलिए हर थ्रेड को पूछना पड़ता है: मेरे लिए डेटा का कौन-सा हिस्सा है? CUDA इसका उत्तर अंतर्निर्मित चर से देता है। 📍

threadIdx से परिचय

कर्नेल के भीतर, threadIdx किसी थ्रेड को उसके अपने ब्लॉक के भीतर की स्थिति बताता है। किसी ब्लॉक के पहले थ्रेड के लिए threadIdx.x का मान 0 होता है।

int t = threadIdx.x;

blockIdx से परिचय

blockIdx चर किसी थ्रेड को बताता है कि ग्रिड के भीतर वह किस ब्लॉक का हिस्सा है। ब्लॉक की संख्या भी 0 से शुरू होती है।

int b = blockIdx.x;

blockDim से परिचय

आपको blockDim भी मिलता है, जो प्रति ब्लॉक थ्रेड की संख्या बताता है। यदि आपने 256 थ्रेड चलाए हैं, तो हर थ्रेड के लिए blockDim.x का मान 256 होगा।

int width = blockDim.x;

ये अपने-आप मिलते हैं

आप इन चरों को कभी स्वयं निर्धारित नहीं करते। कर्नेल लॉन्च होते ही CUDA हर थ्रेड के लिए इनके मान भर देता है।

.x, .y, .z फ़ील्ड

1D, 2D या 3D लॉन्च के लिए इनमें से हर एक में x, y और z फ़ील्ड होते हैं। साधारण सारणियों के लिए आमतौर पर आपको केवल x फ़ील्ड का उपयोग करना होता है।

इनका संयोजन

अकेले उपयोग करने पर threadIdx हर ब्लॉक में दोहरता है। एक अद्वितीय स्थान पाने के लिए आपको blockIdx और blockDim को threadIdx के साथ मिलाना होगा।

एक छोटा उदाहरण

blockDim 4 होने पर, ब्लॉक 0 का थ्रेड 2 तत्व 2 होगा, लेकिन ब्लॉक 1 का थ्रेड 2 तत्व 6 होगा। ब्लॉक प्रारंभिक बिंदु को आगे खिसकाता है।

केवल-पठन सहायक

ये अंतर्निर्मित मान कर्नेल के भीतर केवल पढ़े जा सकते हैं। इन्हें विश्वसनीय निर्देशांकों की तरह समझें, जो ठीक-ठीक बताते हैं कि आपका थ्रेड कहाँ स्थित है।

gridDim भी

एक और उपयोगी साथी है: gridDim ग्रिड में मौजूद ब्लॉकों की कुल संख्या रखता है। जब आप थ्रेड की संख्या से अधिक डेटा पर लूप चलाते हैं, तब यह उपयोगी होता है।

int blocks = gridDim.x;

यह महत्वपूर्ण क्यों है

ये तीन चर वैश्विक अनुक्रमणिका की गणना के मूल साधन हैं। इसी से हर थ्रेड अपने लिए एक डेटा तत्व चुनता है।

त्वरित जाँच

बताए गए काम को करने वाला चर चुनिए।

पुनरावलोकन: थ्रेड का स्थान ढूँढना

आपने अंतर्निर्मित मानों से परिचय पाया: ब्लॉक के भीतर की स्थिति के लिए threadIdx, ब्लॉक के लिए blockIdx और ब्लॉक के आकार के लिए blockDim। साथ मिलकर ये किसी थ्रेड का सटीक स्थान बताते हैं। ✅

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

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

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

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

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

क्या “threadIdx, blockIdx, blockDim” पाठ निःशुल्क है?

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

“threadIdx, blockIdx, blockDim” में मैं क्या सीखूँगा?

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

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

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

“threadIdx, blockIdx, blockDim” पाठ पूरा करने में कितना समय लगता है?

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

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

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

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

  1. थ्रेड पदानुक्रम
  2. threadIdx, blockIdx, blockDim
  3. ब्लॉक क्यों होते हैं
  4. प्रति ब्लॉक थ्रेड चुनें
← CUDA Academy पर वापस जाएँ