CUDA Cores और Tensor Cores में क्या अंतर है? (व्याख्या) - सभी अंतर
विषयसूची
CUDA और Tensor cores Nvidia नामक कंपनी द्वारा विकसित उत्पाद हैं। तो CUDA कोर और टेंसर कोर क्या हैं? CUDA का मतलब कंप्यूट यूनिफाइड डिवाइस आर्किटेक्चर है। जैसा कि एनवीडिया डेवलपर्स कहते हैं, सीयूडीए कोर आपके जीपीयू, स्मार्टफोन और यहां तक कि आपकी कारों में मौजूद हैं।
CUDA कोर एक समानांतर कंप्यूटिंग प्लेटफॉर्म और एप्लिकेशन प्रोग्रामिंग इंटरफ़ेस (API) है जो सॉफ्टवेयर को सामान्य प्रयोजन के प्रसंस्करण के लिए विशिष्ट प्रकार के ग्राफिक्स प्रोसेसिंग यूनिट (GPUs) का उपयोग करने में सक्षम बनाता है।
जबकि एनवीडिया द्वारा विकसित किए गए टेंसर कोर का उपयोग जीपीयू में भी किया जाता है। टेन्सर कोर मिश्रित-परिशुद्धता कंप्यूटिंग को सक्षम करते हैं, सटीकता बनाए रखते हुए थ्रूपुट बढ़ाने के लिए गतिशील रूप से गणनाओं को अपनाते हैं।
सरल शब्दों में, ये कोर कुछ गणना करने के लिए आपके पीसी में जीपीयू का एक महत्वपूर्ण हिस्सा हैं। CUDA कोर का उपयोग दो संख्याओं को गुणा करने और उन्हें दूसरी संख्या में जोड़ने के लिए किया जाता है।
जबकि टेंसर कोर समान है लेकिन 4×4 मैट्रिसेस के साथ। ये गणना मूल रूप से आपके लिए ग्राफिक्स को तेजी से प्रस्तुत कर रही हैं।
CUDA क्या है?
23 जून, 2007 को जारी Nvidia द्वारा विकसित संक्षिप्त CUDA में कंप्यूट यूनिफाइड डिवाइस आर्किटेक्चर, एक समानांतर कंप्यूटिंग प्लेटफॉर्म और एप्लिकेशन प्रोग्रामिंग इंटरफेस (API) है।
वह सामान्य प्रयोजन के प्रसंस्करण के लिए विशिष्ट प्रकार की ग्राफिक्स प्रोसेसिंग यूनिट (जीपीयू) का उपयोग करने के लिए सॉफ्टवेयर को सक्षम बनाता है, एक विधि जिसे सामान्य प्रयोजन कंप्यूटिंग के रूप में जाना जाता हैजीपीयू (जीपीयू)।
CUDA एक सॉफ्टवेयर लेयर है जो GPU के वर्चुअल इंस्ट्रक्शन सेट और कम्प्यूट कर्नेल के निष्पादन के लिए समानांतर कम्प्यूटेशनल तत्वों तक सीधी पहुँच प्रदान करता है। CUDA को C, C++ और फोरट्रान सहित विभिन्न प्रोग्रामिंग भाषाओं के साथ काम करने के लिए विकसित किया गया था।
विभिन्न प्रोग्रामिंग भाषाओं के साथ काम करने की क्षमता समानांतर प्रोग्रामिंग में विशेषज्ञों के लिए जीपीयू संसाधनों का उपयोग करना आसान बनाती है यदि हम इसे डायरेक्ट3डी या ओपनजीएल जैसे पूर्व एपीआई से अलग करते हैं, जिसके लिए आपको अधिक उन्नत एपीआई की आवश्यकता होगी। ग्राफिकल प्रोग्रामिंग में कौशल आधार।
CUDA के साथ GPU, OpenMP, OpenACC, OpenCL, और HIP जैसे प्रोग्रामिंग फ्रेमवर्क को भी सपोर्ट करता है, जो ऐसे कोड को CUDA में कंपाइल कर सकता है। CUDA के लिए उपयोग किया जाने वाला पहला नाम कंप्यूट यूनिफाइड डिवाइस आर्किटेक्चर के लिए एक संक्षिप्त नाम था। हालाँकि, एनवीडिया ने बाद में आमतौर पर इस्तेमाल किए जाने वाले संक्षिप्त नाम को छोड़ दिया।
एक शक्तिशाली एनवीडिया ग्राफिक्स कार्ड GTX 1080 Ti
CUDA के बारे में अधिक जानकारी
एक विशेष कंप्यूटर प्रोसेसर के रूप में, ग्राफिक्स प्रोसेसिंग यूनिट (GPU) वास्तविक की जरूरतों को पूरा करती है -टाइम, कंप्यूट-इंटेंसिव 3डी ग्राफिक्स वर्कलोड।
2012 के बारे में जीपीयू विकसित हुए और बड़े ब्लॉक के लिए प्रभावी डेटा प्रोसेसिंग को सक्षम करने वाले अत्यधिक समानांतर मल्टी-कोर सिस्टम बन गए।
समानांतर में डेटा के विशाल ब्लॉक को संसाधित करते समय, यह डिज़ाइन एल्गोरिदम के लिए सामान्य-उद्देश्य केंद्रीय प्रसंस्करण इकाइयों (सीपीयू) से बेहतर है, जैसे:
- क्रिप्टोग्राफ़िक हैशकार्य
- मशीन लर्निंग
- आण्विक गतिशीलता सिमुलेशन
- भौतिकी इंजन
- सॉर्ट एल्गोरिदम
अब CUDA आर्किटेक्चर का उपयोग और भविष्य में
- 3डी ग्राफिक्स का त्वरित प्रतिपादन
- वीडियो फ़ाइल स्वरूपों का त्वरित इंटरकनवर्जन
- त्वरित एन्क्रिप्शन, डिक्रिप्शन और संपीड़न
- जैव सूचना विज्ञान, उदाहरण के लिए, एनजीएस डीएनए सीक्वेंसिंग BarraCUDA
- वितरित गणना, जैसे प्रोटीन की मूल संरचना की भविष्यवाणी करना
- चिकित्सीय विश्लेषण सिमुलेशन, उदाहरण के लिए, सीटी और एमआरआई स्कैन छवियों पर आधारित आभासी वास्तविकता
- भौतिक सिमुलेशन, विशेष रूप से द्रव गतिकी में
- मशीन सीखने की समस्याओं में तंत्रिका नेटवर्क प्रशिक्षण
- चेहरे की पहचान
- वितरित कंप्यूटिंग परियोजनाएं, जैसे [ईमेल संरक्षित] और अन्य परियोजनाओं का उपयोग करना BOINC
- आण्विक गतिकी
- खनन क्रिप्टोकरेंसी
- गति से संरचना (SfM) सॉफ्टवेयर
टेंसर कोर क्या है?
टेन्सर कोर कहे जाने वाले विशिष्ट कोर मिश्रित-परिशुद्धता प्रशिक्षण की अनुमति देते हैं। ये विशेष कोर की प्रारंभिक पीढ़ी एक फ़्यूज्ड मल्टीप्ल-ऐड एल्गोरिथम के साथ ऐसा करती है। इससे 4 x 4 FP16 या FP32 मैट्रिक्स में दो 4 x 4 FP16 मैट्रिक्स को गुणा करना और जोड़ना संभव हो जाता है।
अंतिम परिणाम FP32 होगा जिसमें सूक्ष्मता का थोड़ा सा ही नुकसान होगा, मिश्रित परिशुद्धता संगणना को इसी रूप में नामित किया गया है, भले हीइनपुट मेट्रिसेस निम्न-परिशुद्धता FP16 हो सकते हैं।
व्यावहारिक रूप से, यह मॉडल की अंतिम प्रभावशीलता पर बहुत कम प्रभाव के साथ गणनाओं को महत्वपूर्ण रूप से गति देता है। इस क्षमता को बाद के माइक्रोआर्किटेक्चर द्वारा और भी कम सटीक कंप्यूटर संख्या अभ्यावेदन के लिए विस्तारित किया गया है।
पहली पीढ़ी को वोल्टा माइक्रोआर्किटेक्चर के साथ V100 से शुरू किया गया था, प्रत्येक बीतती पीढ़ी के साथ नए जीपीयू माइक्रोआर्किटेक्चर के साथ गणना के लिए अधिक कंप्यूटर नंबर सटीक प्रारूप उपलब्ध कराए गए थे।
हम आगे आने वाले अनुभाग में बात करेंगे कि प्रत्येक माइक्रोआर्किटेक्चर पीढ़ी के साथ Tensor Cores की क्षमता और कार्यक्षमता कैसे बदली और बेहतर हुई है।
टाइटन V द्वारा बनाई गई रेखांकन वाली छवि
टेंसर कोर कैसे काम करते हैं?
पहली पीढ़ी:
वोल्टा जीपीयू माइक्रोआर्किटेक्चर को टेंसर कोर की पहली पीढ़ी के साथ शामिल किया गया था। इन कोर ने मिश्रित सटीकता और FP16 संख्या प्रारूप के साथ प्रशिक्षित करना संभव बना दिया।
इससे कुछ GPU के लिए teraFLOP थ्रूपुट में 12x तक की वृद्धि हो सकती है। टॉप-टियर V100 के 640 कोर पिछली पीढ़ी के पास्कल जीपीयू की तुलना में प्रदर्शन की गति में 5 गुना वृद्धि देते हैं।
दूसरी पीढ़ी:
ट्यूरिंग जीपीयू की शुरुआत के साथ, टेंसर कोर की दूसरी पीढ़ी पेश की गई। Int8, Int4, और Int1 को समर्थित Tensor Core परिशुद्धताओं की सूची में जोड़ा गया, जो थेपहले FP16 तक सीमित था।
मिश्रित सटीक प्रशिक्षण प्रक्रियाओं के कारण, पास्कल जीपीयू की तुलना में जीपीयू का प्रदर्शन थ्रूपुट 32 गुना तक बढ़ गया था।
तीसरी पीढ़ी:
एम्पीयर जीपीयू में आर्किटेक्चर एफपी64, टीएफ32, और बीफ्लोट16 परिशुद्धता के लिए समर्थन जोड़कर वोल्टा और ट्यूरिंग माइक्रोआर्किटेक्चर की पिछली प्रगति पर विस्तार करता है।
डीप लर्निंग ट्रेनिंग और इंट्रेंस गतिविधियों को इन अतिरिक्त सटीक प्रारूपों द्वारा बहुत अधिक गति दी जाती है। उदाहरण के लिए, TF32 प्रारूप FP32 के समान कार्य करता है, जबकि बिना किसी कोड में बदलाव किए 20x स्पीडअप की गारंटी भी देता है।
यह सभी देखें: अमेरिका में पैरिश, काउंटी और बरो में क्या अंतर है? - सभी मतभेदफिर, कोड की केवल कुछ पंक्तियों के साथ, स्वत: मिश्रित सटीक कार्यान्वयन अतिरिक्त 2x द्वारा प्रशिक्षण को गति देगा।
तीसरी पीढ़ी का NVLink तेज गति से मल्टी-जीपीयू इंटरेक्शन को सक्षम करने के लिए, तीसरी पीढ़ी के रे ट्रेसिंग कोर, और विरल मैट्रिक्स गणित के साथ विशेषज्ञता एम्पीयर माइक्रोआर्किटेक्चर के अतिरिक्त पहलू हैं ।
चौथी पीढ़ी:
टेंसर कोर की हॉपर माइक्रोआर्किटेक्चर-आधारित चौथी पीढ़ी के भविष्य के रिलीज की योजना बनाई गई है। अगले H100 में चौथी पीढ़ी के Tensor Cores।
जो मार्च 2022 में जारी होने की उम्मीद है, FP8 सटीक प्रारूपों को संभालने में सक्षम होगा और, NVIDIA के अनुसार, "आश्चर्यजनक रूप से 30X द्वारा" विशाल भाषा मॉडल को गति देगा। पिछली पीढ़ी से अधिक।"
एक RTX ग्राफिक्स कार्ड हैग्राफ़िक्स को बहुत तेज़ी से प्रस्तुत करने के लिए उपयोग किया जाता है क्योंकि इसमें टेन्सर कोर होते हैं। दोनों जीपीयू पर 5120 सीयूडीए कोर में एक एकल परिशुद्धता बहु-संचित संचालन की अधिकतम क्षमता होती है (उदाहरण के लिए, fp32 में: x += y * z) प्रति GPU घड़ी (उदाहरण के लिए Tesla V100 PCIe आवृत्ति 1.38Gz है)।
प्रत्येक टेंसर कोर छोटे मैट्रिक्स के लिए 4×4 छोटे मैट्रिक्स पर काम करता है। प्रति एक जीपीयू घड़ी, प्रत्येक टेंसर कोर एक मैट्रिक्स गुणा-संचय ऑपरेशन को पूरा कर सकता है।
यह दो 4×4 FP16 मैट्रिसेस को गुणा करता है और 4×4 FP32 मैट्रिक्स को जोड़ता है जो संचायक में परिणत होता है (जो कि एक fp32 4×4 मैट्रिक्स भी है)।
क्योंकि इनपुट मेट्रिसेस fp16 हैं जबकि गुणन परिणाम और संचायक fp32 हैं, एल्गोरिथ्म को मिश्रित परिशुद्धता के रूप में जाना जाता है।
सही शब्द संभवतः "4×4 मैट्रिक्स कोर" होगा, लेकिन NVIDIA मार्केटिंग टीम ने "टेंसर कोर" का उपयोग करना चुना।
टेंसर कोर की पूरी व्याख्या संक्षेप में
GPU कार्ड | CUDA कोर | VRAM |
---|---|---|
GeForce GTX 1660 Ti | 1536 | 6GB |
GeForce GTX 1660 सुपर | 1408 | 6GB |
GeForce GTX 1660 | 1408 | 6GB |
GeForce GTX 1650 सुपर | 1408 | 4GB |
GeForce GTX 1650 | 1024 और896 | 4GB |
GeForce GTX 1060 3GB | 1280 | 4GB |
GeForce GTX 1650 | 1280 | 3GB |
GeForce GTX 1060 6GB | 768 | 6GB |
GeForce GTX 1050 Ti (3GB) | 768 | 4GB |
GeForce GTX 1050 (2GB)<22 | 640 | 3GB |
GeForce GTX 960 | 1024 | 2GB |
GeForce GTX 950 | 786 | 2GB |
GeForce GTX 780 Ti | 2880 | 2GB |
GeForce GTX 780 | 2304 | 3GB |
GeForce GTX 750 Ti | 640 | 2GB |
GeForce GTX 750 | 512 | 1GB या 2GB |
जीपीयू जिनमें CUDA कोर होते हैं
यह सभी देखें: अल्पविराम और काल के बीच अंतर क्या हैं? (स्पष्ट) - सभी अंतरनिष्कर्ष
- CUDA और Tensor कोर उत्पाद हैं, दोनों को Nvidia नामक कंपनी द्वारा विकसित किया गया है। CUDA का मतलब कंप्यूट यूनिफाइड डिवाइस आर्किटेक्चर है। ये सीयूडीए कोर आपके जीपीयू, स्मार्टफोन और यहां तक कि आपकी कारों में भी मौजूद हैं।
- जबकि एनवीडिया द्वारा विकसित किए गए टेंसर कोर का उपयोग जीपीयू में भी किया जाता है। "टेंसर कोर" नामक विशिष्ट कोर मिश्रित-परिशुद्धता प्रशिक्षण की अनुमति देते हैं। Tensor Cores की पहली पीढ़ी ने मिश्रित परिशुद्धता और FP16 संख्या प्रारूप के साथ प्रशिक्षण देना संभव बना दिया।
- इससे कुछ GPU के लिए teraFLOP थ्रूपुट में 12x तक की वृद्धि हो सकती है। Int8, Int4, और Int1 को समर्थित Tensor Core परिशुद्धताओं की सूची में जोड़ा गया था।
- मिश्रित होने के कारणसटीक प्रशिक्षण प्रक्रियाओं, GPU के प्रदर्शन में 32 गुना तक की वृद्धि हुई थी। Tensor Cores की चौथी पीढ़ी के हॉपर माइक्रोआर्किटेक्चर पर आधारित भविष्य में जारी करने की योजना है।