Mojo Academy · पाठ

GPU कर्नेल फ़ंक्शन लिखना

Mojo में डिवाइस कोड व्यक्त कीजिए।

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

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

Kernel क्या होता है

GPU का kernel वह फ़ंक्शन है जिसे हर थ्रेड चलाता है। आप एक तत्व के लिए काम लिखते हैं और हार्डवेयर उसे अनेक तत्वों पर दोहराता है।

एक थ्रेड के दृष्टिकोण से सोचें

युक्ति यह है कि kernel को एक ही थ्रेड के दृष्टिकोण से लिखें। हर थ्रेड work के अपने छोटे हिस्से को संभालता है।

Kernel केवल एक फ़ंक्शन है

Mojo में kernel एक सामान्य फ़ंक्शन होता है। इसकी सख्त, प्रकार-निर्धारित प्रकृति ही डिवाइस कोड को तेज़ी से संकलित करने के लिए आवश्यक है।

fn add_kernel():
    pass

बफ़र पास करना

Kernel पैरामीटर के रूप में डिवाइस मेमोरी के पॉइंटर लेता है। ये buffers उसके इनपुट रखते हैं और उस आउटपुट के लिए स्थान देते हैं जिसे वह भरेगा।

fn add_kernel(a: UnsafePointer[Float32], out: UnsafePointer[Float32]):
    pass

इस थ्रेड का इंडेक्स खोजना

Kernel के भीतर हर थ्रेड पहले अपनी स्थिति की गणना करता है। यही index तय करता है कि उसे किस तत्व को संसाधित करना है।

var i = block_idx.x * block_dim.x + thread_idx.x

सीमाओं की सुरक्षा

मेमोरी को छूने से पहले हमेशा इंडेक्स जाँचें। सीमा की check भटके हुए थ्रेडों को ऐरे के आगे पढ़ने से रोकती है।

if i < n:
    out[i] = a[i] + b[i]

तत्व का काम करना

मुख्य भाग छोटा होता है: इनपुट पढ़ें, गणना करें और एक परिणाम लिखें। पूरा kernel अक्सर गणित की एक ही line में समा जाता है।

out[i] = a[i] * b[i]

Kernel चलाना

आप ग्रिड और ब्लॉक का आकार चुनकर इसे चलाते हैं। यह launch आपके एक-थ्रेड वाले कोड को पूरे ग्रिड में फैला देता है।

ctx.enqueue_function[add_kernel](grid_dim=blocks, block_dim=256)

कोई वापसी मान नहीं

Kernels कॉल करने वाले को परिणाम वापस नहीं करते। वे आउटपुट बफ़र में लिखते हैं, जिसे आप बाद में पढ़ते हैं।

शाखाएँ कम रखें

थ्रेड सबसे अच्छा समान चरण में चलते हैं। भारी branching लेनों को अलग-अलग दिशा में भेजकर प्रतीक्षा करवाती है, इसलिए kernel का तर्क सरल और एकसमान रखें।

वही विचार, विशाल पैमाना

एक छोटा kernel और बड़ा ग्रिड मिलकर लाखों परिणाम दे सकते हैं। यह scale लंबे कोड से नहीं, बल्कि launch से आता है।

त्वरित जाँच

आप एक थ्रेड के लिए GPU kernel का मुख्य भाग लिख रहे हैं।

पुनरावलोकन

kernel एक थ्रेड के लिए फ़ंक्शन है: अपना इंडेक्स खोजें, सीमाओं की सुरक्षा करें, एक तत्व की गणना करें, फिर उसे ग्रिड पर चलाएँ। ⚡

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

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

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

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

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

क्या “GPU कर्नेल फ़ंक्शन लिखना” पाठ निःशुल्क है?

हाँ — Mojo Academy अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “GPU कर्नेल फ़ंक्शन लिखना” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। Mojo Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“GPU कर्नेल फ़ंक्शन लिखना” में मैं क्या सीखूँगा?

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

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

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

“GPU कर्नेल फ़ंक्शन लिखना” पाठ पूरा करने में कितना समय लगता है?

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

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

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

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

  1. कृत्रिम बुद्धिमत्ता के कार्यभार के लिए GPU क्यों
  2. थ्रेड, ब्लॉक और ग्रिड
  3. GPU कर्नेल फ़ंक्शन लिखना
  4. डिवाइस पर और उससे डेटा ले जाना
← Mojo Academy पर वापस जाएँ