CUDA कोर र टेन्सर कोर बीच के भिन्नता छ? (स्पष्टीकरण) - सबै भिन्नताहरू
सामग्री तालिका
CUDA र Tensor cores Nvidia भनिने कम्पनी द्वारा विकसित उत्पादनहरू हुन्। त्यसोभए CUDA कोर र टेन्सर कोरहरू के हुन्? CUDA भनेको कम्प्युट युनिफाइड उपकरण आर्किटेक्चर हो। CUDA कोरहरू तपाइँको GPU हरू, स्मार्टफोनहरू, र तपाइँका कारहरूमा पनि उपस्थित छन्, जस्तै Nvidia विकासकर्ताहरूले भने।
CUDA कोरहरू एक समानान्तर कम्प्युटिङ प्लेटफर्म र एप्लिकेसन प्रोग्रामिङ इन्टरफेस (API) हुन् जसले सफ्टवेयरलाई सामान्य-उद्देश्यीय प्रशोधनका लागि विशिष्ट प्रकारका ग्राफिक्स प्रोसेसिङ इकाइहरू (GPUs) प्रयोग गर्न सक्षम बनाउँछ।
जबकि Nvidia द्वारा विकसित टेन्सर कोरहरू पनि GPU मा प्रयोग गरिन्छ। Tensor Cores ले मिश्रित-परिशुद्धता कम्प्युटिङ सक्षम गर्दछ, सटीकता कायम राख्दा थ्रुपुट बढाउन गतिशील रूपमा गणनाहरू अनुकूलन गर्दछ।
साधारण शब्दहरूमा, यी कोरहरू निश्चित गणनाहरू गर्नको लागि तपाइँको पीसीमा GPU हरूको महत्त्वपूर्ण भाग हुन्। CUDA कोरहरू दुई नम्बरहरू गुणा गर्न र तिनीहरूलाई अर्को नम्बरमा थप्न प्रयोग गरिन्छ।
जबकि टेन्सर कोर उस्तै छ तर ४×४ म्याट्रिक्सको साथ। यी गणनाहरू मूलतया तपाईंको लागि ग्राफिक्स छिटो रेन्डर गर्दै छन्।
CUDA के हो?
Nvidia द्वारा विकसित छोटो CUDA मा कम्प्युट युनिफाइड डिभाइस आर्किटेक्चर, जुन 23, 2007 मा रिलीज, एक समानान्तर कम्प्युटिङ प्लेटफर्म र एप्लिकेसन प्रोग्रामिङ इन्टरफेस (API) हो।
त्यो सफ्टवेयरलाई सामान्य-उद्देश्य प्रशोधनका लागि विशिष्ट प्रकारका ग्राफिक्स प्रशोधन इकाइहरू (GPUs) प्रयोग गर्न सक्षम बनाउँछ, जुन सामान्य-उद्देश्य कम्प्युटिङ भनेर चिनिन्छ।GPUs (GPU)।
CUDA एउटा सफ्टवेयर तह हो जसले GPU को भर्चुअल निर्देशन सेट र कम्प्युट कर्नेलहरूको कार्यान्वयनको लागि समानान्तर कम्प्युटेशनल तत्वहरूमा प्रत्यक्ष पहुँच प्रदान गर्दछ। CUDA C, C++, र Fortran सहित विभिन्न प्रोग्रामिङ भाषाहरूसँग काम गर्नको लागि विकसित गरिएको थियो।
विभिन्न प्रोग्रामिङ भाषाहरूसँग काम गर्ने क्षमताले समानान्तर प्रोग्रामिङका विशेषज्ञहरूलाई GPU स्रोतहरूको प्रयोग गर्न सजिलो बनाउँछ यदि हामीले यसलाई Direct3D वा OpenGL जस्ता पहिलेका API हरूबाट फरक गर्छौं, जसका लागि तपाईंलाई अझ उन्नत हुनु आवश्यक हुन्छ। ग्राफिकल प्रोग्रामिंग मा कौशल आधार।
CUDA सँग GPU ले OpenMP, OpenACC, OpenCL, र HIP जस्ता प्रोग्रामिङ फ्रेमवर्कहरूलाई पनि समर्थन गर्दछ जसले CUDA मा यस्तो कोड कम्पाइल गर्न सक्छ। CUDA का लागि प्रयोग गरिएको पहिलो नाम कम्प्युट युनिफाइड डिभाइस आर्किटेक्चरको संक्षिप्त रूप थियो। जे होस्, Nvidia पछि सामान्यतया प्रयोग हुने एक्रोनिम छोडियो।
एक शक्तिशाली Nvidia ग्राफिक्स कार्ड GTX 1080 Ti
CUDA बारे थप
एक विशेष कम्प्युटर प्रोसेसरको रूपमा, ग्राफिक्स प्रशोधन इकाई (GPU) ले वास्तविक आवश्यकताहरू पूरा गर्दछ। -समय, गणना-गहन 3D ग्राफिक्स वर्कलोडहरू।
लगभग 2012 GPU हरू विकसित भएका छन् र ठूला ब्लकहरूको लागि प्रभावकारी डाटा प्रशोधन सक्षम गर्ने उच्च समानान्तर बहु-कोर प्रणालीहरू भएका छन्।
डेटाका ठूला ब्लकहरूलाई समानान्तर रूपमा प्रशोधन गर्दा, यो डिजाइन एल्गोरिदमहरूका लागि सामान्य-उद्देश्य केन्द्रीय प्रशोधन एकाइहरू (CPUs) भन्दा उच्च हुन्छ, जस्तै:
- क्रिप्टोग्राफिक ह्यासप्रकार्यहरू
- मेसिन लर्निङ
- आणविक गतिशीलता सिमुलेशन
- भौतिक इन्जिनहरू
- एल्गोरिदमहरू क्रमबद्ध गर्नुहोस्
CUDA आर्किटेक्चरको प्रयोगहरू र भविष्यमा
- 3D ग्राफिक्सको द्रुत प्रतिपादन
- भिडियो फाइल ढाँचाहरूको द्रुत अन्तररूपान्तरण
- त्वरित इन्क्रिप्शन, डिक्रिप्शन, र कम्प्रेसन
- जैव सूचना विज्ञान, उदाहरणका लागि, NGS DNA अनुक्रमण BarraCUDA
- वितरित गणनाहरू, जस्तै प्रोटिनको नेटिभ कन्फर्मेसन भविष्यवाणी गर्ने
- चिकित्सा विश्लेषण सिमुलेशन, उदाहरणका लागि, भर्चुअल वास्तविकता CT र MRI स्क्यान छविहरूमा आधारित
- शारीरिक सिमुलेशनहरू, विशेष गरी फ्लुइड डाइनामिक्समा
- मेसिन लर्निङ समस्याहरूमा न्यूरल नेटवर्क प्रशिक्षण
- फेस रिकग्निसन
- वितरित कम्प्युटिङ परियोजनाहरू, जस्तै [इमेल सुरक्षित] र अन्य परियोजनाहरू प्रयोग गरेर BOINC
- आणविक गतिशीलता
- खनन क्रिप्टोकरन्सी
- गति (SfM) सफ्टवेयरबाट संरचना
टेन्सर कोर के हो?
टेन्सर कोर भनिने विशेष कोरहरूले मिश्रित-परिशुद्धता प्रशिक्षणको लागि अनुमति दिन्छ। यी विशेष कोरको प्रारम्भिक जेनेरेसनले यो फ्युज्ड मल्टीप्लाइ-एड एल्गोरिथ्मको साथ गर्छ। यसले 4 x 4 FP16 वा FP32 म्याट्रिक्समा दुई 4 x 4 FP16 म्याट्रिक्सहरूलाई गुणन गर्न र थप्न सम्भव बनाउँछ।
अन्तिम परिणाम FP32 मा परिशुद्धता को थोरै हानि संग हुनेछ, मिश्रित परिशुद्धता कम्प्युटिङ को रूपमा तोकिएको छ।इनपुट matrices कम परिशुद्धता FP16 हुन सक्छ।
अभ्यासमा, यसले मोडेलको अन्तिम प्रभावकारितामा थोरै प्रभाव पारेर गणनालाई उल्लेखनीय रूपमा गति दिन्छ। यो क्षमता पछिको माइक्रोआर्किटेक्चरहरू द्वारा अझ कम सटीक कम्प्युटर संख्या प्रतिनिधित्वहरूमा विस्तार गरिएको छ।
पहिलो पुस्ता V100 मा सुरु हुने भोल्टा माइक्रोआर्किटेक्चरको साथ प्रस्तुत गरिएको थियो, प्रत्येक गुजरिरहेको जेनरेशनको साथ नयाँ GPU माइक्रोआर्किटेक्चरहरूसँग गणनाको लागि थप कम्प्युटर नम्बर सटीक ढाँचाहरू उपलब्ध गराइयो।
हामी निम्न खण्डमा प्रत्येक माइक्रोआर्किटेक्चर जेनेरेसनसँग टेन्सर कोरको क्षमता र कार्यक्षमता कसरी परिवर्तन र सुधार भएको छ भन्ने बारेमा कुरा गर्नेछौं।
Titan V द्वारा बनाईएको ग्राफिक रूपमा रेन्डर गरिएको छवि
टेन्सर कोरले कसरी काम गर्छ?
पहिलो पुस्ता:
0> भोल्टा GPU माइक्रोआर्किटेक्चर टेन्सर कोरको पहिलो पुस्तामा समावेश गरिएको थियो। यी कोरहरूले मिश्रित परिशुद्धता र FP16 नम्बर ढाँचामा तालिम दिन सम्भव बनायो।यसले निश्चित GPU हरूका लागि teraFLOP थ्रुपुटमा 12x बूस्ट गर्न सक्छ। शीर्ष-स्तरीय V100 को 640 कोरले अघिल्लो पुस्ताको पास्कल GPU हरूको तुलनामा कार्यसम्पादन गतिमा 5x वृद्धि दिन्छ।
दोस्रो पुस्ता:
ट्युरिङ जीपीयूको परिचयसँगै, टेन्सर कोरको दोस्रो पुस्ताको परिचय भयो। Int8, Int4, र Int1 समर्थित टेन्सर कोर परिशुद्धताहरूको सूचीमा थपियो, जुनपहिले FP16 मा सीमित थियो।
मिश्रित सटीक प्रशिक्षण प्रक्रियाहरूको कारण, GPU को कार्यसम्पादन थ्रुपुट पास्कल GPU हरूको तुलनामा 32 गुणाले बढेको थियो।
तेस्रो जेनेरेसन:
एम्पीयर GPU मा आर्किटेक्चर FP64, TF32, र bfloat16 सटीकताका लागि समर्थन थपेर भोल्टा र ट्युरिङ माइक्रोआर्किटेक्चरको अघिल्लो प्रगतिहरूमा विस्तार हुन्छ।
यी अतिरिक्त परिशुद्धता ढाँचाहरूद्वारा गहिरो सिकाइ प्रशिक्षण र अनुमान गतिविधिहरू धेरै बढि गतिमा हुन्छन्। उदाहरणका लागि, TF32 ढाँचाले FP32 जस्तै कार्य गर्दछ जबकि कुनै पनि कोड परिवर्तन नगरी 20x गतिको ग्यारेन्टी दिन्छ।
त्यसपछि, कोडका केही लाइनहरूसँग, स्वचालित मिश्रित परिशुद्धता कार्यान्वयनले थप 2x द्वारा प्रशिक्षणको गति बढाउनेछ।
तेस्रो पुस्ताको NVLink चाँडै छिटो बहु-GPU अन्तर्क्रियाहरू सक्षम पार्न, तेस्रो-पुस्ताको रे ट्रेसिङ कोरहरू, र स्प्यार्स म्याट्रिक्स गणितसँग विशेषज्ञता एम्पीयर माइक्रोआर्किटेक्चरका अतिरिक्त पक्षहरू हुन् ।
चौथो पुस्ता:
हपर माइक्रोआर्किटेक्चरमा आधारित टेन्सर कोरको चौथो पुस्ताको भावी विमोचन योजना छ। अर्को H100 मा चौथो पुस्ताको Tensor Cores।
जुन मार्च २०२२ मा रिलिज हुने अपेक्षा गरिएको छ, FP8 परिशुद्धता ढाँचाहरू ह्यान्डल गर्न सक्षम हुनेछ र NVIDIA का अनुसार, विशाल भाषा मोडेलहरूलाई "अचम्मको 30X द्वारा गति दिनेछ। अघिल्लो पुस्ताको तुलनामा।”
एक RTX ग्राफिक्स कार्ड होग्राफिक्स रेन्डरिङका लागि धेरै छिटो प्रयोग गरिन्छ किनभने यसले टेन्सर कोरहरू समावेश गर्दछ।
CUDA कोर र टेन्सर कोरहरू बीचको भिन्नता
टेन्सर कोरहरू हाल Titan V र Tesla V100 मा सीमित छन्। दुबै GPU हरूमा 5120 CUDA कोरहरूमा एक एकल परिशुद्धता गुणन-सञ्चित कार्यको अधिकतम क्षमता छ (उदाहरणका लागि, fp32 मा: x += y * z) प्रति GPU घडी (जस्तै Tesla V100 PCIe आवृत्ति 1.38Gz हो)।
प्रत्येक टेन्सर कोरले साना म्याट्रिक्सका लागि ४×४ साना म्याट्रिक्समा काम गर्छ। प्रति एक GPU घडी, प्रत्येक टेन्सर कोरले एक म्याट्रिक्स गुणन-सञ्चित कार्य पूरा गर्न सक्छ।
यो पनि हेर्नुहोस्: दुई व्यक्तिहरू बीचको उचाइमा 3-इन्च भिन्नता कत्तिको उल्लेखनीय छ? - सबै भिन्नताहरूयसले दुई 4×4 FP16 म्याट्रिक्सलाई गुणन गर्छ र 4×4 FP32 म्याट्रिक्स थप्छ जसले एक्युमुलेटरमा परिणाम दिन्छ (यो पनि fp32 4×4 म्याट्रिक्स हो)।
इनपुट म्याट्रिक्सहरू fp16 हुनाले गुणन परिणामहरू र एक्युमुलेटर fp32 हुनाले, एल्गोरिदमलाई मिश्रित परिशुद्धता भनिन्छ।
सही शब्द सम्भवतः "4×4 म्याट्रिक्स कोर" मात्र हुनेछ, तर NVIDIA मार्केटिङ टोलीले "टेन्सर कोर" प्रयोग गर्न रोजेको छ।
यो पनि हेर्नुहोस्: Furibo, Kanabo, र Tetsubo बीच के भिन्नता छ? (स्पष्टीकरण) - सबै भिन्नताहरूटेन्सर कोर संक्षेपमा पूर्ण व्याख्या
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 | 2 GB |
GeForce GTX 750 | 512 | 1GB वा 2 GB |
GPUs जसमा CUDA कोरहरू छन्
निष्कर्ष
- CUDA र टेन्सर कोरहरू उत्पादनहरू हुन्, दुबै Nvidia भनिने कम्पनीले विकास गरेका हुन्। CUDA भनेको कम्प्युट युनिफाइड उपकरण आर्किटेक्चर हो। यी CUDA कोरहरू तपाईंको GPUs, स्मार्टफोनहरू र तपाईंको कारहरूमा पनि उपस्थित छन्।
- जबकि Nvidia द्वारा विकसित टेन्सर कोरहरू पनि GPU मा प्रयोग गरिन्छ। "टेन्सर कोर" भनिने विशेष कोरहरू मिश्रित-परिशुद्धता प्रशिक्षणको लागि अनुमति दिन्छ। Tensor Cores को पहिलो पुस्ताले मिश्रित परिशुद्धता र FP16 नम्बर ढाँचामा तालिम दिन सम्भव बनायो।
- यसले निश्चित GPU को लागि teraFLOP थ्रुपुटमा 12x सम्म बढावा दिन सक्छ। Int8, Int4, र Int1 समर्थित टेन्सर कोर सटीकताहरूको सूचीमा थपियो।
- मिश्रितको कारणसटीक प्रशिक्षण प्रक्रियाहरू, GPU को प्रदर्शन 32 पटक सम्म बढेको थियो। हपर माइक्रोआर्किटेक्चरमा आधारित टेन्सर कोरको चौथो पुस्ताको भावी विमोचन योजना गरिएको छ।