जीपीयू कंप्यूटिंग - यह क्या है?
क्या आप GPU कंप्यूटिंग या त्वरण के बारे में सुनते रहते हैं, लेकिन सुनिश्चित नहीं हैं कि उनका क्या मतलब है? यहां वह सब कुछ है जो आपको जानना आवश्यक है।

GPU या ग्राफ़िक्स प्रोसेसिंग यूनिट सभी इलेक्ट्रॉनिक सर्किट में मौजूद होते हैं जो एक प्रकार का डिस्प्ले या दूसरा, विशेष रूप से कंप्यूटर का उत्पादन करते हैं।
प्रारंभिक ग्राफिक्स प्रोसेसर अपेक्षाकृत सरल थे। लेकिन गेमिंग, 3D एनिमेशन और वीडियो रेंडरिंग कार्यों के आगमन के साथ, जिन्होंने CPU को उनकी सीमा से परे धकेल दिया, अधिक शक्तिशाली GPU को बचाव में आना पड़ा।
ये नए GPU कार्ड समय के साथ शक्ति और जटिलता में बढ़ते गए, विभिन्न कंपनियों और शोधकर्ताओं ने अपने समानांतर निष्पादन लाभ का लाभ उठाने के तरीकों की तलाश की। यह पोस्ट आपको दिखाता है कि यह अब तक कैसा चल रहा है।
एक जीपीयू क्या है?
एक जीपीयू या ग्राफिक्स प्रोसेसिंग यूनिट एक विशेष सर्किट है जिसे प्रदर्शन के लिए छवियों के निर्माण में सहायता के लिए डेटा के हेरफेर के लिए डिज़ाइन किया गया है। दूसरे शब्दों में, GPU एक ऐसी प्रणाली है जो आपके द्वारा किसी भी प्रदर्शन सतह पर दिखाई देने वाली छवियों को बनाता है, जैसे कि कंप्यूटर मॉनीटर, स्मार्टफोन स्क्रीन, गेम कंसोल, और इसी तरह।
जीपीयू शुरू में सरल उपकरण थे जो किसी विशिष्ट उपकरण के लिए आदर्श आउटपुट बनाने के लिए ग्राफिक तत्वों को एक साथ जोड़ते थे। हालांकि, समय के साथ और कंप्यूटर गेमिंग के आगमन के साथ, जीपीयू की जटिलता और शक्ति बढ़ने लगी, जिससे जीपीजीपीयू या जीपीयू पर सामान्य प्रयोजन कंप्यूटिंग का जन्म हुआ ।
GPU कंप्यूटिंग क्या है?
GPU कंप्यूटिंग या GPGPU ग्राफिक्स से परे गणना के लिए GPU का उपयोग है। इसका मतलब है कि कंप्यूटर के वीडियो कार्ड में एम्बेडेड GPU का उपयोग करना और मूल रूप से अन्य प्रकार के डेटा की गणना के लिए कंप्यूटर ग्राफिक्स को संसाधित करने के लिए अभिप्रेत है, जैसे कि वैज्ञानिक सिमुलेशन, क्रिप्टोकरेंसी माइनिंग, बीजगणित संगणना, मौसम पूर्वानुमान, तंत्रिका नेटवर्क, आदि।
GPU कंप्यूटिंग के इस विकास का कारण ग्राफिक्स प्रोसेसिंग इकाइयों के प्रभावशाली विकास से आता है, जो आधुनिक GPU सिस्टम के वितरित समानांतर आर्किटेक्चर से आता है।
जैसे-जैसे कंप्यूटर का सीपीयू अधिक शक्तिशाली होता गया और अधिक जटिल प्रोग्राम और गेम को संभालने में सक्षम होता गया, वीडियो कार्ड निर्माताओं ने भी आधुनिक कंप्यूटिंग और 3डी ग्राफिक्स में हो रहे विकास के साथ तालमेल बिठाने की कोशिश की। एनवीडिया ने 1999 में GeForce 256 को दुनिया के पहले जीपीयू वीडियो कार्ड के रूप में पेश किया और यहीं से विकास का सिलसिला शुरू हुआ।
सीपीयू पर जीपीयू कार्ड का प्रमुख लाभ उनकी समानांतर प्रसंस्करण वास्तुकला है, जो उन्हें बड़े डेटा कार्यों को वितरित, समानांतर तरीके से संसाधित करने में सक्षम बनाता है जो बाधाओं और सीपीयू फ्रीज को रोकता है।
GPU कंप्यूटिंग के लिए आवेदन क्या हैं?
GPU कंप्यूटिंग के अनुप्रयोग कई हैं, यहाँ कुछ शीर्ष उपयोगों पर एक नज़र है:
- मशीन लर्निंग और तंत्रिका नेटवर्क
- अस्पष्ट तर्क
- जैव सूचना विज्ञान
- आणविक मॉडलिंग
- वीडियो प्रतिपादन
- ज्यामितीय कंप्यूटिंग
- जलवायु अनुसंधान और मौसम पूर्वानुमान
- खगोल भौतिकी
- कूटलेखन
- कंप्यूटर दृष्टि
- पासवर्ड क्रैकिंग
- क्वांटम अनुसंधान
जीपीयू बनाम सीपीयू प्रोसेसिंग
GPU और CPU दोनों ही डिजिटल डेटा को प्रोसेस करते हैं, लेकिन वे इसे अलग-अलग तरीकों से करते हैं। सीपीयू या सेंट्रल प्रोसेसिंग यूनिट को उच्च गति पर सीरियल प्रोसेसिंग के लिए डिज़ाइन किया गया है, जबकि जीपीयू को बहुत कम गति पर समानांतर प्रोसेसिंग के लिए डिज़ाइन किया गया है। बेशक, एक सीपीयू प्रति कोर 2 धागे प्राप्त करने के लिए हाइपर-थ्रेडिंग का उपयोग कर सकता है, या यहां तक कि दर्जनों कोर भी हो सकते हैं, लेकिन वे मूल रूप से सीरियल प्रोसेसर हैं।
जहां सीपीयू में कुछ ही कोर होते हैं, वहीं आधुनिक जीपीयू में हजारों कोर होते हैं, उदाहरण के लिए एनवीडिया जीफोर्स आरटीएक्स 3090 जिसमें 10 से अधिक कोर हैं। हालांकि, सीपीयू पर बढ़त हासिल करने के लिए, डेटा को समानांतर प्रसंस्करण में सक्षम होना चाहिए, जैसे कि एक ही बार में हजारों छवियों वाली स्ट्रीम को संसाधित करना।
जीपीयू बनाम एएसआईसी
ASIC का मतलब एप्लीकेशन स्पेसिफिक इंटीग्रेटेड सर्किट है और इसका मतलब है कि यह केवल एक ही कार्य कर सकता है - वह कार्य जिसे करने के लिए इसे डिज़ाइन किया गया था। ASIC एक अनूठी मशीन है जिसे खरोंच से विकसित किया गया है और इसे बनाने के लिए विशेषज्ञ हार्डवेयर ज्ञान की आवश्यकता होती है। ASIC का उपयोग आमतौर पर क्रिप्टोक्यूरेंसी खनन में किया जाता है, क्योंकि वे GPU की तुलना में अच्छे समानांतर प्रसंस्करण लाभ और बेहतर दक्षता प्रदान करते हैं।
हालाँकि, दोनों के बीच बड़ा अंतर यह है कि GPU अधिक बहुमुखी हैं। उदाहरण के लिए, आप GPU का उपयोग करके आसानी से एक क्रिप्टोक्यूरेंसी माइनिंग रिग का निर्माण कर सकते हैं। पुर्जे आसानी से उपलब्ध हैं और यदि आप खनन के साथ हैं, तो आप हमेशा गेमर्स या अन्य खनिकों को GPU कार्ड बेच सकते हैं। एएसआईसी के साथ, आप केवल अन्य खनिकों को एक प्रयुक्त मशीन बेच सकते हैं, क्योंकि आप इसके साथ कुछ और नहीं कर सकते हैं।
क्रिप्टोक्यूरेंसी खनन से परे, एएसआईसी मशीन पर अपना हाथ रखना और भी मुश्किल हो जाता है, क्योंकि वे बड़े पैमाने पर उत्पाद नहीं हैं। यह GPU सिस्टम के साथ दृढ़ता से विरोधाभासी है जिसे आप हर जगह प्राप्त कर सकते हैं और आसानी से कॉन्फ़िगर कर सकते हैं।
GPU बनाम क्लस्टर कंप्यूटिंग
जबकि एक एकल GPU कार्ड में हजारों कोर होते हैं, जो आपके द्वारा इसे संलग्न किए गए किसी भी कंप्यूटर में जबरदस्त शक्ति जोड़ते हैं, आप सैद्धांतिक रूप से कंप्यूटर के मेनबोर्ड में उतने GPU कार्ड जोड़ सकते हैं जितना वह संभाल सकता है, और इसकी प्रसंस्करण क्षमता को और बढ़ा सकता है।
दूसरी ओर, एक कंप्यूटर क्लस्टर, कई कंप्यूटरों को संदर्भित करता है जो एक बड़े कंप्यूटर के रूप में कार्य करने के लिए एक साथ नेटवर्क किए जाते हैं - एक सुपर कंप्यूटर। नेटवर्क पर प्रत्येक कंप्यूटर को नोड कहा जाता है और इसमें मल्टी-कोर सीपीयू, साथ ही बोर्ड पर एक या अधिक जीपीयू कार्ड हो सकते हैं।
प्रत्येक क्लस्टर में एक मास्टर नोड होना चाहिए, जो कि फ्रंट कंप्यूटर है जो अपने कार्यकर्ता नोड्स के प्रबंधन और शेड्यूलिंग के लिए जिम्मेदार है। इसमें सॉफ्टवेयर भी शामिल होगा जो परिणामों की गणना और वापसी के लिए अपने कार्यकर्ता नोड्स के लिए डेटा और प्रोग्राम आवंटित करता है।
GPU त्वरण बनाम हाइपर-थ्रेडिंग
सीपीयू को एक साथ कई कार्यों को संभालने के लिए डिज़ाइन किया गया है, और यही कारण है कि यह बहुत तेज गति से चलता है, उन कई प्रक्रियाओं के बीच प्रसंस्करण समय निर्धारित करता है। हालाँकि, जब यह एक गणना-गहन फ़ंक्शन का सामना करता है, तो यह अन्य प्रक्रियाओं पर लौटने से पहले लूप में कुछ समय बिता सकता है। यह आमतौर पर कंप्यूटर के सामान्य धीमेपन और बदतर मामलों में, सिस्टम के पूर्ण फ्रीज का परिणाम होता है।
कंप्यूटर डिज़ाइनर हाइपर-थ्रेडिंग या GPU त्वरण का उपयोग करके इस भयानक परिदृश्य से बच सकते हैं। हाइपर-थ्रेडिंग एक सिंगल सीपीयू कोर को दो प्रोसेसिंग थ्रेड्स के रूप में कार्य करने की अनुमति देता है। इसलिए, जब एक धागा गणना-गहन लूप में फंस जाता है, तो दूसरा धागा अभी भी सिस्टम को एक साथ पकड़ सकता है।
आधुनिक कंप्यूटरों में अब 2 से 4, 8, 16, 32, और इसी तरह के कई कोर हैं। साथ ही, उनमें हाइपर-थ्रेडिंग की सुविधा है, इसलिए 2-कोर CPU 4 थ्रेड प्रदान करता है, 4-कोर 8 थ्रेड प्रदान करता है, और इसी तरह।
मल्टी-कोर सीपीयू के साथ हाइपर-थ्रेडिंग अधिकांश कंप्यूटिंग समस्याओं को हल करेगा, बाधाओं को रोकेगा, और सरल गेम, संगीत उत्पादन और छोटे ग्राफिक्स, वीडियो और मशीन लर्निंग प्रोजेक्ट के साथ शीर्ष प्रदर्शन प्रदान करेगा। लेकिन जब आपको उससे ज्यादा पावर की जरूरत होती है, तो अक्सर GPU ही सही समाधान होता है।
GPU या हार्डवेयर एक्सेलेरेशन एक सॉफ्टवेयर एप्लिकेशन की क्षमता है जो CPU को प्रभावित किए बिना बड़ी संख्या में डेटा को क्रंच करने के लिए GPUs समानांतर प्रोसेसिंग पावर का लाभ उठाता है। कई पेशेवर एप्लिकेशन अच्छी तरह से कार्य करने के लिए GPU त्वरण पर निर्भर करते हैं। इनमें वीडियो और एनिमेशन डिजाइन/रेंडरिंग प्रोग्राम, एनकोडर, क्रिप्टोग्राफी, बड़े न्यूरल नेटवर्क आदि शामिल हैं।
जीपीजीपीयू प्रोग्रामिंग मूल बातें
जीपीयू की सामान्य प्रयोजन प्रोग्रामिंग शुरू में डायरेक्टएक्स और ओपनजीएल लाइब्रेरी का उपयोग करके की जाती थी। हालाँकि, इन्हें विशेष रूप से ग्राफिक्स विकास के लिए डिज़ाइन किया गया था, इसलिए काम करने के लिए आपको अपने डेटा को ग्राफिक जैसे मॉडल में बदलना पड़ता था।
सौभाग्य से, पिछले कुछ वर्षों में जीपीजीपीयू में बड़ी प्रगति हुई है, जिससे पुस्तकालयों, प्रोग्रामिंग भाषाओं और ढांचे का विकास हुआ है। इन ढांचे में सबसे लोकप्रिय एनवीडिया से सीयूडीए है।
CUDA किसी भी डेवलपर के लिए क्लासिक GPU प्रोग्रामिंग की बारीकियों को जानने की आवश्यकता के बिना GPU प्रोग्रामिंग में गोता लगाना आसान बनाता है। यह ऐसी सुविधाएँ प्रदान करता है जो ग्राफिक्स से परे विकास को बढ़ाती हैं, कई इकाइयाँ यहाँ तक कि मशीन-लर्निंग-विशिष्ट कार्यों की विशेषता भी देती हैं।
उपलब्ध पुस्तकालय नए GPU-त्वरित प्रोग्राम को खरोंच से बनाना या पूर्व-लिखित प्रोग्राम को समानांतर प्रसंस्करण के लिए अनुकूलित करना आसान बनाते हैं। आप सही पुस्तकालय चुनते हैं, समानांतर लूप के लिए अपना कोड अनुकूलित करते हैं, पुन: संकलित करते हैं, और यही वह है।
CUDA कोर बनाम स्ट्रीम प्रोसेसर
अक्सर आपको CUDA कोर और स्ट्रीम प्रोसेसर जैसे शब्द सुनने को मिलेंगे। ये दोनों शब्द GPU के कोर या अंकगणितीय तर्क इकाइयों को संदर्भित करते हैं । CUDA कोर Nvidia की एक मालिकाना तकनीक है, जबकि स्ट्रीम प्रोसेसर AMD के हैं।
एक और शब्द जो आपके सामने आ सकता है वह है स्ट्रीमिंग मल्टी-प्रोसेसर या एसएम। यह एक और एनवीडिया तकनीक है जो मूल रूप से प्रति एसएम 8 सीयूडीए कोर समूहित करती है। यह प्रति कमांड 32 घड़ी चक्रों का उपयोग करते हुए, एक बार में 4-थ्रेड वार्प्स को निष्पादित करता है। नए डिज़ाइन में अब प्रति स्ट्रीमिंग मल्टी-प्रोसेसर 100 कोर से अधिक की सुविधा है।
शीर्ष GPU भाषाएँ और पुस्तकालय
वहाँ बहुत सारे पुस्तकालय और भाषाएँ हैं जो Nvidia CUDA और AMD दोनों प्लेटफार्मों पर काम करती हैं। निम्नलिखित कुछ ही हैं:
- एनवीडिया क्यूबला - CUDA के लिए मूल रैखिक बीजगणित उपप्रोग्राम
- सीयूडीएनएन - डीप न्यूरल नेटवर्क लाइब्रेरी
- OpenCL - समानांतर प्रोग्रामिंग के लिए खुला मानक
- खुला हुआ - एएमडी जीपीयू के लिए
- HIP - सी++ लाइब्रेरी
- एनवीडिया क्यूरैंड - यादृच्छिक संख्या पीढ़ी
- सीयूएफएफटी - फास्ट फूरियर ट्रांसफॉर्म के लिए
- एनवीडिया एनपीपी - 2डी इमेज और सिग्नल प्रोसेसिंग
- जीपीयू वीएसआईपीएल - वेक्टर छवि और सिग्नल प्रोसेसिंग
- OpenCV - कंप्यूटर विज़न के लिए GPU लाइब्रेरी
- ओपनएसीसी - समानांतर विकास के लिए भाषा
- पाइकुडा - CUDA प्लेटफॉर्म के लिए पायथन
- टेंसरआरटी - CUDA के लिए गहरी शिक्षा
- CUDA सी++ - CUDA के लिए C++ भाषा
- कुडा सी - सीयूडीए के लिए सी भाषा
- CUDA फोरट्रान - फोरट्रान डेवलपर्स के लिए CUDA
शीर्ष GPU क्लस्टर परियोजनाएं
जून 2022 तक, दुनिया के 8 सबसे तेज सुपर कंप्यूटरों में से 10 GPU-त्वरित हैं। वे सभी लिनक्स ओएस भी साझा करते हैं, और इस प्रकार हैं:
| श्रेणी | नाम | पेटाफ्लॉप्स | सीपीयू कोर | GPU कोर | पावर (किलोवाट) | साल |
| 1. | सीमांत | 1,102 | 591,872 | 8,138,240 | 21,100 | 2022 |
| 2. | लुमी | 151.90 | 75,264 | 1,034,880 | 2,900 | 2022 |
| 3. | शिखर सम्मेलन | 148.6 | 202,752 | 2,211,840 | 10,096 | 2018 |
| 4. | आरा | 94.64 | 190,080 | 1,382,400 | 7,438 | 2018 |
| 5. | पर्लमटर | 64.59 | एन / ए | एन / ए | 2,589 | 2021 |
| 6. | सेलेन | 63.46 | 71,680 | 483,840 | 2,646 | 2020 |
| 7. | Tianhe-2 | 61.445 | 427,008 | 4,554,752 | 18,482 | 2013 |
| 8. | विज्ञापन अस्त्र | 46.1 | 21,632 | 297,440 | 921 | 2022 |
निष्कर्ष
GPU कंप्यूटिंग में इस गोता के अंत तक पहुँचने और इसके साथ आने वाली सभी चीज़ों तक, आपको अब तक इसकी शक्ति और दायरे का अंदाजा हो जाना चाहिए था।
अधिक जानकारी के लिए, आप यहां Nvidia का डेवलपर प्लेटफॉर्म या यहां AMD का डेवलपर प्लेटफॉर्म देख सकते हैं ।




