आरओसीएम: Difference between revisions

From Vigyanwiki
Line 22: Line 22:
आरओसीएम<ref>{{Cite web|url=https://github.com/RadeonOpenCompute/ROCm/issues/1628|title=Question: What does ROCm stand for? · Issue #1628 · RadeonOpenCompute/ROCm|website=Github.com|access-date=January 18, 2022}}</ref> [[ग्राफ़िक्स प्रोसेसिंग युनिट]] (जीपीयू) प्रोग्रामिंग के लिए ऍड्वांस्ड माइक्रो डिवाइसेज़ (एएमडी) सॉफ्टवेयर स्टैक है। आरओसीएम कई क्षेत्रों में फैला हुआ है: जनरल-पर्पस कंप्यूटिंग ऑन ग्राफिक्स प्रोसेसिंग यूनिट (जीपीजीपीयू), [[उच्च प्रदर्शन कंप्यूटिंग|हाई-परफॉरमेंस कंप्यूटिंग]] (एचपीसी), [[विषम कंप्यूटिंग|हेटेरोगेनोस कंप्यूटिंग]] है। यह कई प्रोग्रामिंग मॉडल  प्रदान करता है: एचआईपी (जीपीयू-कर्नेल-आधारित प्रोग्रामिंग), [[OpenMP|ओपनएमपी]]/मैसेज [[संदेश पासिंग इंटरफ़ेस|पासिंग इंटरफ़ेस]](एमपीआई) निर्देश-आधारित प्रोग्रामिंग), [[OpenCL|ओपनसीएल]] है।
आरओसीएम<ref>{{Cite web|url=https://github.com/RadeonOpenCompute/ROCm/issues/1628|title=Question: What does ROCm stand for? · Issue #1628 · RadeonOpenCompute/ROCm|website=Github.com|access-date=January 18, 2022}}</ref> [[ग्राफ़िक्स प्रोसेसिंग युनिट]] (जीपीयू) प्रोग्रामिंग के लिए ऍड्वांस्ड माइक्रो डिवाइसेज़ (एएमडी) सॉफ्टवेयर स्टैक है। आरओसीएम कई क्षेत्रों में फैला हुआ है: जनरल-पर्पस कंप्यूटिंग ऑन ग्राफिक्स प्रोसेसिंग यूनिट (जीपीजीपीयू), [[उच्च प्रदर्शन कंप्यूटिंग|हाई-परफॉरमेंस कंप्यूटिंग]] (एचपीसी), [[विषम कंप्यूटिंग|हेटेरोगेनोस कंप्यूटिंग]] है। यह कई प्रोग्रामिंग मॉडल  प्रदान करता है: एचआईपी (जीपीयू-कर्नेल-आधारित प्रोग्रामिंग), [[OpenMP|ओपनएमपी]]/मैसेज [[संदेश पासिंग इंटरफ़ेस|पासिंग इंटरफ़ेस]](एमपीआई) निर्देश-आधारित प्रोग्रामिंग), [[OpenCL|ओपनसीएल]] है।


आरओसीएम मुफ़्त, कामचलाऊ और [[खुला स्रोत सॉफ्टवेयर|मुक्त स्रोत सॉफ्टवेयर]] है (जीपीयू [[बाइनरी ब्लॉब]] को छोड़कर<ref>{{Cite web|url=https://packages.debian.org/buster/firmware-amd-graphics|title=Debian -- Details of package firmware-amd-graphics in buster|website=Packages.debian.org|access-date=January 18, 2022}}</ref>), यह विभिन्न अनुज्ञप्ति के तहत वितरित किया जाता है।
आरओसीएम मुफ़्त, कामचलाऊ और [[खुला स्रोत सॉफ्टवेयर|मुक्त स्रोत सॉफ्टवेयर]] है (जीपीयू [[बाइनरी ब्लॉब]] को छोड़कर<ref>{{Cite web|url=https://packages.debian.org/buster/firmware-amd-graphics|title=Debian -- Details of package firmware-amd-graphics in buster|website=Packages.debian.org|access-date=January 18, 2022}}</ref>), यह विभिन्न अनुज्ञप्ति के अनुसार वितरित किया जाता है।


{{TOC limit|5}}
{{TOC limit|5}}
Line 31: Line 31:


=== हेटेरोगेनोस सिस्टम आर्किटेक्चर ===
=== हेटेरोगेनोस सिस्टम आर्किटेक्चर ===
एचएसए का उद्देश्य मध्य-स्तर, हार्डवेयर-अज्ञेयवादी मध्यवर्ती प्रतिनिधित्व का उत्पादन करना था, जो उपयुक्त अंतिम रूप का उपयोग करके अंतिम हार्डवेयर (जीपीयू, एफपीजीए ...) के लिए जेआईटी-संकलित किया जा सकता है। आरओसीएम के लिए यह दृष्टिकोण हटा दिया गया था: अब यह [[एलएलवीएम]] का उपयोग करके केवल जीपीयू कोड बनाता है, और इसका एलएलवीएम बैकएंड जो उजान किया गया था,<ref>{{Cite web|url=https://llvm.org/docs/AMDGPUUsage.html|title=User Guide for AMDGPU Backend — LLVM 13 documentation|website=Llvm.org|access-date=January 18, 2022}}</ref> हालांकि एलएलवीएम एमएलआईआर के साथ इस तरह के संवर्धित प्रतिरूपकता पर अभी भी शोध चल रहा है।<ref name="The LLVM Compiler Infrastructure">{{Cite web|url=https://github.com/ROCmSoftwarePlatform/llvm-project-mlir|title=The LLVM Compiler Infrastructure|website=[[GitHub]]|date=January 19, 2022}}</ref>
एचएसए का उद्देश्य मध्य-स्तर, हार्डवेयर-अज्ञेयवादी मध्यवर्ती प्रतिनिधित्व का उत्पादन करना था, जो उपयुक्त अंतिम रूप का उपयोग करके अंतिम हार्डवेयर (जीपीयू, एफपीजीए ...) के लिए जेआईटी-संकलित किया जा सकता है। आरओसीएम के लिए यह दृष्टिकोण हटा दिया गया था: अब यह [[एलएलवीएम]] का उपयोग करके केवल जीपीयू कोड बनाता है, और इसका एलएलवीएम बैकएंड जो उजान किया गया था,<ref>{{Cite web|url=https://llvm.org/docs/AMDGPUUsage.html|title=User Guide for AMDGPU Backend — LLVM 13 documentation|website=Llvm.org|access-date=January 18, 2022}}</ref> चूंकि एलएलवीएम एमएलआईआर के साथ इस तरह के संवर्धित प्रतिरूपकता पर अभी भी शोध चल रहा है।<ref name="The LLVM Compiler Infrastructure">{{Cite web|url=https://github.com/ROCmSoftwarePlatform/llvm-project-mlir|title=The LLVM Compiler Infrastructure|website=[[GitHub]]|date=January 19, 2022}}</ref>
=== माइक्रोसॉफ्ट एएमपी C ++ 1.2 ===
=== माइक्रोसॉफ्ट एएमपी C ++ 1.2 ===


Line 57: Line 57:


== हार्डवेयर अवलंब ==
== हार्डवेयर अवलंब ==
आरओसीएम मुख्य रूप से असतत पेशेवर जीपीयू पर लक्षित है,[https://docs.amd.com/bundle/ROCm-Getting-Started-Guide-v5.2.3/page/Introduction_to_AMD_ROCm_Getting_Started_Guide_for_Linux.html], लेकिन अनौपचारिक अवलंब में वेगा- वर्ग और आरडीएनए2 उपभोक्ता जीपीयू शामिल हैं।
आरओसीएम मुख्य रूप से असतत पेशेवर जीपीयू पर लक्षित है,[https://docs.amd.com/bundle/ROCm-Getting-Started-Guide-v5.2.3/page/Introduction_to_AMD_ROCm_Getting_Started_Guide_for_Linux.html], लेकिन अनौपचारिक अवलंब में वेगा- वर्ग और आरडीएनए2 उपभोक्ता जीपीयू सम्मिलित हैं।


[[AMD Accelerated Processing Unit|एएमडी त्वरित प्रसंस्करण इकाई]] (एपीयू) सक्षम हैं, लेकिन आधिकारिक रूप से समर्थित नहीं हैं। आरओसीएम के कार्यशील होने में शामिल है।<ref>{{Cite web|url=https://www.reddit.com/r/Amd/comments/rd7mmi/heres_something_you_dont_see_every_day_pytorch/|title = Here's something you don't see every day: PyTorch running on top of ROCm on a 6800M (6700XT) laptop! Took a ton of minor config tweaks and a few patches but it actually functionally works. HUGE!|date = December 10, 2021}}</ref>
[[AMD Accelerated Processing Unit|एएमडी त्वरित प्रसंस्करण इकाई]] (एपीयू) सक्षम हैं, लेकिन आधिकारिक रूप से समर्थित नहीं हैं। आरओसीएम के कार्यशील होने में सम्मिलित है।<ref>{{Cite web|url=https://www.reddit.com/r/Amd/comments/rd7mmi/heres_something_you_dont_see_every_day_pytorch/|title = Here's something you don't see every day: PyTorch running on top of ROCm on a 6800M (6700XT) laptop! Took a ton of minor config tweaks and a few patches but it actually functionally works. HUGE!|date = December 10, 2021}}</ref>


{{See also|एएमडी ग्राफिक्स प्रोसेसिंग इकाइयों की सूची}}
{{See also|एएमडी ग्राफिक्स प्रोसेसिंग इकाइयों की सूची}}
Line 195: Line 195:
===== जूलिया =====
===== जूलिया =====


[[जूलिया (प्रोग्रामिंग भाषा)]] में एएमडीजीपीयू.जेएल पैकेज है,<ref>{{Cite web|url=https://juliagpu.org/rocm/|title=AMD ROCm ⋅ JuliaGPU|website=juliagpu.org}}</ref> जो एलएलवीएम के साथ एकीकृत होता है और आरओसीएम स्टैक के घटकों का चयन करता है। एचआईपी के माध्यम से कोड संकलित करने के बजाय, एएमडीजीपीयू.जेएल सीधे एलएलवीएम आईआर उत्पन्न करने के लिए जूलिया के कंपाइलर का उपयोग करता है, जिसे बाद में एलएलवीएम द्वारा देशी डिवाइस कोड उत्पन्न करने के लिए उपयोग किया जाता है। एएमडीजीपीयू.जेएल डिवाइस पर नेटिव कोड अभिभारण करने और इसे निष्पादित करने के लिए आरओसीआर के एचएसए कार्यान्वयन का उपयोग करता है, ठीक उसी तरह जिस तरह एचआईपी अपने स्वयं के जनरेट किए गए डिवाइस कोड को लोड करता है।
[[जूलिया (प्रोग्रामिंग भाषा)]] में एएमडीजीपीयू.जेएल पैकेज है,<ref>{{Cite web|url=https://juliagpu.org/rocm/|title=AMD ROCm ⋅ JuliaGPU|website=juliagpu.org}}</ref> जो एलएलवीएम के साथ एकीकृत होता है और आरओसीएम स्टैक के घटकों का चयन करता है। एचआईपी के माध्यम से कोड संकलित करने के अतिरिक्त, एएमडीजीपीयू.जेएल सीधे एलएलवीएम आईआर उत्पन्न करने के लिए जूलिया के कंपाइलर का उपयोग करता है, जिसे बाद में एलएलवीएम द्वारा देशी डिवाइस कोड उत्पन्न करने के लिए उपयोग किया जाता है। एएमडीजीपीयू.जेएल डिवाइस पर नेटिव कोड अभिभारण करने और इसे निष्पादित करने के लिए आरओसीआर के एचएसए कार्यान्वयन का उपयोग करता है, ठीक उसी तरह जिस तरह एचआईपी अपने स्वयं के जनरेट किए गए डिवाइस कोड को लोड करता है।


एएमडीजीपीयू.जेएल भी आरओसीएम के रॉकब्लास (ब्लास के लिए), रॉकरैंड (यादृच्छिक संख्या जनन के लिए), और आरओसीके एफएफटी (एफएफटी के लिए) के साथ एकीकरण का अवलंब करता है। रोसाल्यूशन, रोको सॉल्वर, एमआईओपेन, और कुछ अन्य आरओसीएम लाइब्रेरी के साथ भविष्य के एकीकरण की योजना बनाई गई है।
एएमडीजीपीयू.जेएल भी आरओसीएम के रॉकब्लास (ब्लास के लिए), रॉकरैंड (यादृच्छिक संख्या जनन के लिए), और आरओसीके एफएफटी (एफएफटी के लिए) के साथ एकीकरण का अवलंब करता है। रोसाल्यूशन, रोको सॉल्वर, एमआईओपेन, और कुछ अन्य आरओसीएम लाइब्रेरी के साथ भविष्य के एकीकरण की योजना बनाई गई है।
Line 220: Line 220:
|https://github.com/rocmsoftwareplatform/
|https://github.com/rocmsoftwareplatform/
|}
|}
एएमडी आरओसीएम के लिए कंटेनरीकृत अनुप्रयोगों का वितरण विशेष रूप से [https://www.amd.com/en/technologies/infinity-hub एएमडी इन्फिनिटी हब] के तहत एकत्र किए गए वैज्ञानिक अनुसंधान अनुप्रयोगों के लिए शुरू करता है।<ref>{{Cite web|url=https://www.hpcwire.com/2021/10/18/running-scientific-applications-on-amd-instinct-accelerators-just-got-easier|title=Running Scientific Applications on AMD Instinct Accelerators Just Got Easier|date=October 18, 2021|access-date=January 25, 2022|website=HPCwire.com}}</ref>
एएमडी आरओसीएम के लिए कंटेनरीकृत अनुप्रयोगों का वितरण विशेष रूप से [https://www.amd.com/en/technologies/infinity-hub एएमडी इन्फिनिटी हब] के अनुसार एकत्र किए गए वैज्ञानिक अनुसंधान अनुप्रयोगों के लिए शुरू करता है।<ref>{{Cite web|url=https://www.hpcwire.com/2021/10/18/running-scientific-applications-on-amd-instinct-accelerators-just-got-easier|title=Running Scientific Applications on AMD Instinct Accelerators Just Got Easier|date=October 18, 2021|access-date=January 25, 2022|website=HPCwire.com}}</ref>


एएमडी विभिन्न लिनक्स वितरणों के अनुरूप पैकेज [https://repo.radeon.com/rocm खुद को वितरित करता है]।
एएमडी विभिन्न लिनक्स वितरणों के अनुरूप पैकेज [https://repo.radeon.com/rocm खुद को वितरित करता है]।
Line 234: Line 234:
कर्नेल-स्पेस कंपोनेंट है,आरओसीके, और बाकी - स्टैक में लगभग सौ कंपोनेंट्स हैं - जो यूजर-स्पेस मॉड्यूल से बना है।
कर्नेल-स्पेस कंपोनेंट है,आरओसीके, और बाकी - स्टैक में लगभग सौ कंपोनेंट्स हैं - जो यूजर-स्पेस मॉड्यूल से बना है।


अनौपचारिक टाइपोग्राफ़िक नीति का उपयोग करना है: निम्न-स्तरीय लाइब्रेरी के लिए अपरकेस आरओसी लोअरकेस अनुसरण करना, यानी आरओसीटी, और इसके विपरीत उपयोगकर्ता-सामना करने वाले लाइब्रेरी के लिए, यानी रॉकब्लास है।<ref>{{Cite mailing list|url=https://lists.debian.org/debian-ai/2021/12/msg00028.html|title=20211221 Packaging session notes and small update|mailing-list=debian-ai@lists.debian.org|last=Bloor|first=Cordell|language=english|access-date=January 18, 2022}}</ref>
अनौपचारिक टाइपोग्राफ़िक नीति का उपयोग करना है: निम्न-स्तरीय लाइब्रेरी के लिए अपरकेस आरओसी लोअरकेस अनुसरण करना, अर्थात आरओसीटी, और इसके विपरीत उपयोगकर्ता-सामना करने वाले लाइब्रेरी के लिए, अर्थात रॉकब्लास है।<ref>{{Cite mailing list|url=https://lists.debian.org/debian-ai/2021/12/msg00028.html|title=20211221 Packaging session notes and small update|mailing-list=debian-ai@lists.debian.org|last=Bloor|first=Cordell|language=english|access-date=January 18, 2022}}</ref>


एएमडी एलएलवीएम समुदाय के साथ सक्रिय विकास कर रहा है, लेकिन अपस्ट्रीमिंग तात्कालिक नहीं है, और जनवरी 2022 तक, अभी भी पिछड़ रहा है।<ref>{{Cite web|url=https://github.com/ROCm-Developer-Tools/HIP/issues/2449|title = &#91;Debian official packaging&#93; How is ROCm LLVM fork still needed? · Issue #2449 · ROCm-Developer-Tools/HIP|website = [[GitHub]]}}</ref> एएमडी अभी भी आधिकारिक तौर पर विभिन्न एलएलवीएम फोर्क्स को पैकेज करता है<ref>{{Cite web|url=https://github.com/ROCm-Developer-Tools/aomp|title = Aomp - V 14.0-1|website = [[GitHub]]|date = January 22, 2022}}</ref><ref>{{Cite web|url=https://github.com/RadeonOpenCompute/llvm-project|title = The LLVM Compiler Infrastructure|website = [[GitHub]]|date = January 10, 2022}}</ref><ref name="The LLVM Compiler Infrastructure" />उन हिस्सों के लिए जो अभी तक उजान नहीं हुए हैं - कंपाइलर ऑप्टिमाइज़ेशन स्वामित्व, डीबग अवलंब, ओपनएमपी ऑफ़लोडिंग रहने के लिए नियत हैं ...
एएमडी एलएलवीएम समुदाय के साथ सक्रिय विकास कर रहा है, लेकिन अपस्ट्रीमिंग तात्कालिक नहीं है, और जनवरी 2022 तक, अभी भी पिछड़ रहा है।<ref>{{Cite web|url=https://github.com/ROCm-Developer-Tools/HIP/issues/2449|title = &#91;Debian official packaging&#93; How is ROCm LLVM fork still needed? · Issue #2449 · ROCm-Developer-Tools/HIP|website = [[GitHub]]}}</ref> एएमडी अभी भी आधिकारिक तौर पर विभिन्न एलएलवीएम फोर्क्स को पैकेज करता है<ref>{{Cite web|url=https://github.com/ROCm-Developer-Tools/aomp|title = Aomp - V 14.0-1|website = [[GitHub]]|date = January 22, 2022}}</ref><ref>{{Cite web|url=https://github.com/RadeonOpenCompute/llvm-project|title = The LLVM Compiler Infrastructure|website = [[GitHub]]|date = January 10, 2022}}</ref><ref name="The LLVM Compiler Infrastructure" />उन हिस्सों के लिए जो अभी तक उजान नहीं हुए हैं - कंपाइलर ऑप्टिमाइज़ेशन स्वामित्व, डीबग अवलंब, ओपनएमपी ऑफ़लोडिंग रहने के लिए नियत हैं ...
Line 274: Line 274:
एचआईपीआईएफवाई की तरह, [https://github.com/rocmsoftwareplatform/gpufort जीपीयूएफओआरटी] एक टूल है जो स्रोत कोड को अन्य तीसरी जनन के भाषा स्रोतों में संकलित करता है, जिससे उपयोगकर्ता क्यूडा फोरट्रान से एचआईपी फोरट्रान में प्रवास कर सकते हैं। यह अनुसंधान परियोजनाओं के प्रदर्शनों की सूची में भी है, इससे भी ज्यादा भी है।<ref>{{Cite web|url=https://www.phoronix.com/scan.php?page=news_item&px=AMD-Radeon-GPUFORT|title = AMD Publishes Open-Source "GPUFORT" as Newest Effort to Help Transition Away from CUDA}}</ref>
एचआईपीआईएफवाई की तरह, [https://github.com/rocmsoftwareplatform/gpufort जीपीयूएफओआरटी] एक टूल है जो स्रोत कोड को अन्य तीसरी जनन के भाषा स्रोतों में संकलित करता है, जिससे उपयोगकर्ता क्यूडा फोरट्रान से एचआईपी फोरट्रान में प्रवास कर सकते हैं। यह अनुसंधान परियोजनाओं के प्रदर्शनों की सूची में भी है, इससे भी ज्यादा भी है।<ref>{{Cite web|url=https://www.phoronix.com/scan.php?page=news_item&px=AMD-Radeon-GPUFORT|title = AMD Publishes Open-Source "GPUFORT" as Newest Effort to Help Transition Away from CUDA}}</ref>
=== उच्च स्तर ===
=== उच्च स्तर ===
आरओसीएम उच्च-स्तरीय लाइब्रेरीको आमतौर पर [[यंत्र अधिगम]] फ्रेमवर्क जैसे अनुप्रयोग सॉफ़्टवेयर द्वारा सीधे उपयोग किया जाता है। निम्नलिखित में से अधिकांश लाइब्रेरी [[सामान्य मैट्रिक्स गुणा]] (जीईएमएम) श्रेणी में हैं, जिसमें जीपीयू आर्किटेक्चर उत्कृष्ट है।
आरओसीएम उच्च-स्तरीय लाइब्रेरीको सामान्यतः [[यंत्र अधिगम]] फ्रेमवर्क जैसे अनुप्रयोग सॉफ़्टवेयर द्वारा सीधे उपयोग किया जाता है। निम्नलिखित में से अधिकांश लाइब्रेरी [[सामान्य मैट्रिक्स गुणा]] (जीईएमएम) श्रेणी में हैं, जिसमें जीपीयू आर्किटेक्चर उत्कृष्ट है।


इनमें से अधिकांश उपयोगकर्ता-सामना करने वाले लाइब्रेरी दोहरे रूप में आते हैं: अप्रत्यक्ष स्तर के लिए हिप जो एनवीडिया हार्डवेयर को रूट कर सकता है, और एएमडी कार्यान्वयन के लिए आरओसी को रूट कर सकता है।<ref>
इनमें से अधिकांश उपयोगकर्ता-सामना करने वाले लाइब्रेरी दोहरे रूप में आते हैं: अप्रत्यक्ष स्तर के लिए हिप जो एनवीडिया हार्डवेयर को रूट कर सकता है, और एएमडी कार्यान्वयन के लिए आरओसी को रूट कर सकता है।<ref>

Revision as of 16:05, 9 March 2023

ROCm
Developer(s)AMD
Initial releaseNovember 14, 2016; 9 years ago (2016-11-14)
Stable release
5.3.0 / October 4, 2022; 3 years ago (2022-10-04)[1]
RepositoryMeta-repository
github.com/radeonopencompute/rocm
Written inC, C++, Python, Fortran, Julia
MiddlewareHIP
EngineAMDgpu kernel driver, HIPCC, a LLVM-based compiler
Operating systemLinux
PlatformSupported GPUs
PredecessorClose to metal, Stream, HSA
Size<2 GiB
TypeGPGPU libraries and APIs
LicenseLibre
Websitewww.amd.com/en/graphics/servers-solutions-rocm

आरओसीएम[2] ग्राफ़िक्स प्रोसेसिंग युनिट (जीपीयू) प्रोग्रामिंग के लिए ऍड्वांस्ड माइक्रो डिवाइसेज़ (एएमडी) सॉफ्टवेयर स्टैक है। आरओसीएम कई क्षेत्रों में फैला हुआ है: जनरल-पर्पस कंप्यूटिंग ऑन ग्राफिक्स प्रोसेसिंग यूनिट (जीपीजीपीयू), हाई-परफॉरमेंस कंप्यूटिंग (एचपीसी), हेटेरोगेनोस कंप्यूटिंग है। यह कई प्रोग्रामिंग मॉडल प्रदान करता है: एचआईपी (जीपीयू-कर्नेल-आधारित प्रोग्रामिंग), ओपनएमपी/मैसेज पासिंग इंटरफ़ेस(एमपीआई) निर्देश-आधारित प्रोग्रामिंग), ओपनसीएल है।

आरओसीएम मुफ़्त, कामचलाऊ और मुक्त स्रोत सॉफ्टवेयर है (जीपीयू बाइनरी ब्लॉब को छोड़कर[3]), यह विभिन्न अनुज्ञप्ति के अनुसार वितरित किया जाता है।

पृष्ठभूमि

एटीआई टेक्नोलॉजीज/एएमडी से पहला जीपीजीपीयू सॉफ्टवेयर स्टैक मेटल के करीब था, जो एएमडी स्ट्रीम प्रोसेसर सॉफ्टवेयर डेवलपमेंट किट बन गया।

आरओसीएम को 2016 के आसपास [4] बोल्ट्ज़मैन इनिशिएटिव (आरओसीएम) के साथ प्रारंभ किया गया था।[5] आरओसीएम स्टैक पिछले एएमडी जीपीयू स्टैक पर बनाता है, कुछ उपकरण जीपीयूओपन, अन्य हेटेरोगेनोस सिस्टम आर्किटेक्चर (एचएसए) पर वापस जाते हैं।

हेटेरोगेनोस सिस्टम आर्किटेक्चर

एचएसए का उद्देश्य मध्य-स्तर, हार्डवेयर-अज्ञेयवादी मध्यवर्ती प्रतिनिधित्व का उत्पादन करना था, जो उपयुक्त अंतिम रूप का उपयोग करके अंतिम हार्डवेयर (जीपीयू, एफपीजीए ...) के लिए जेआईटी-संकलित किया जा सकता है। आरओसीएम के लिए यह दृष्टिकोण हटा दिया गया था: अब यह एलएलवीएम का उपयोग करके केवल जीपीयू कोड बनाता है, और इसका एलएलवीएम बैकएंड जो उजान किया गया था,[6] चूंकि एलएलवीएम एमएलआईआर के साथ इस तरह के संवर्धित प्रतिरूपकता पर अभी भी शोध चल रहा है।[7]

माइक्रोसॉफ्ट एएमपी C ++ 1.2

प्रोग्रामिंग क्षमता

आरओसीएम स्टैक के रूप में कर्नेल ड्राइवर से लेकर एंड-यूज़र अनुप्रयोग तक होता है।एएमडी में एएमडी जीसीएन हार्डवेयर के बारे में [8] और आरओसीएम प्रोग्रामिंग[9] इसके लर्निंग पोर्टल के माध्यम से परिचयात्मक वीडियो हैं।[10]

स्टैक और आरओसीएम/एचआईपी प्रोग्रामिंग के बारे में सबसे अच्छे तकनीकी परिचयों में से एक, आज तक रेडिट पर पाया जाना बाकी है।[11]

उच्च स्तरीय प्रोग्रामिंग

एचआईपी प्रोग्रामिंग

एचआईपी (एचसीसी) कर्नेल भाषा

मेमोरी आवंटन

नुमा

हेटेरोगेनोस मेमोरी मॉडल और साझा वर्चुअल मेमोरी

आरओसीएम कोड ऑब्जेक्ट्स

कंप्यूट/ग्राफिक्स इंटरऑप

निम्न स्तर की प्रोग्रामिंग

हार्डवेयर अवलंब

आरओसीएम मुख्य रूप से असतत पेशेवर जीपीयू पर लक्षित है,[1], लेकिन अनौपचारिक अवलंब में वेगा- वर्ग और आरडीएनए2 उपभोक्ता जीपीयू सम्मिलित हैं।

एएमडी त्वरित प्रसंस्करण इकाई (एपीयू) सक्षम हैं, लेकिन आधिकारिक रूप से समर्थित नहीं हैं। आरओसीएम के कार्यशील होने में सम्मिलित है।[12]

प्रोफेशनल-ग्रेड जीपीयू

प्रोजुमर राडॉन प्रो के साथ एएमडी इंस्टिंक्ट प्रथम श्रेणी के आरओसीएम नागरिक हैं: वे ज्यादातर पूर्ण अवलंब देखते हैं।

जनवरी 2022 तक राडॉन VII (जीसीएन 5 - वेगा) एकमात्र उपभोक्ता-ग्रेड जीपीयू है जिसे अपेक्षाकृत समान अवलंब प्राप्त है।

उपभोक्ता-ग्रेड जीपीयू

जीपीयू श्रृंखला का नाम दक्षिण

द्वीप समूह

समुद्र

द्वीप समूह

ज्वालामुखी

द्वीप समूहl

आर्कटिक

द्वीप / पोलारिस

वेगा नवी 1एक्स नवी 2एक्स
विमोचित जनवरी 2012 सितंबर 2013 जून 2015 जून 2016 जून 2017 जुलाई 2019 नवंबर 2020
मार्केटिंग का नाम राडेन एचडी 7000 राडेन आरएक्स 200 राडेन आरएक्स 300 राडेन आरएक्स 400/500 राडॉन आरएक्स वेगा/राडॉन VII(7 एनएम) राडेन आरएक्स 5000 राडॉन आरएक्स 6000
एएमडी समर्थन No Current
निर्देश समुच्चय जीसीएन निर्देश सेट आरडीएनए निर्देश सेट
माइक्रोआर्किटेक्चर जीसीएन 1st gen जीसीएन 2nd gen जीसीएन 3rd gen जीसीएन 4th gen जीसीएन 5th gen आरडीएनए आरडीएनए 2
प्रकार एकीकृत शेडर मॉडल
आरओसीएम[13] No Yes No Yes
ओपनसीएल 1.2 (लिंक्स पर: 1.1 (कोई छवि समर्थन नहीं) मेसा 3डी के साथ) 2.0 (Win7+ पर एड्रेनालाईन ड्राइवर)

(लिंक्स पर: 1.1 (कोई छवि समर्थन नहीं) मेसा 3डी के साथ, 2.0 एडीएमडी ड्राइवरों या एमडी आरओसीएम के साथ)

2.0 2.1[14]
वल्कन 1.0
(Win 7+ or मेसा 17+)
1.2 (एड्रेनालिन 20.1, लिंक्स मेसा 3डी 20.0)
शेडर मॉडल 5.1 5.1
6.3
6.4 6.5
ओपनजीएल 4.6 (लिंक्स पर: 4.6 (मेसा 3डी 20.0))
डायरेक्ट 3 डी 11 (11_1)
12 (11_1)
11 (12_0)
12 (12_0)
11 (12_1)
12 (12_1)
11 (12_1)
12 (12_2)
/drm/amdgpu[lower-alpha 1] Experimental[15] Yes
  1. DRM (Direct Rendering Manager) is a component of the Linux kernel.


सॉफ्टवेयर पारिस्थितिकी तंत्र

सीखने के संसाधन

एएमडी आरओसीएम उत्पाद प्रबंधक ने स्टैक का दौरा किया था।[16]

तृतीय-पक्ष एकीकरण

स्टैक के मुख्य उपभोक्ता मशीन लर्निंग और हाई-परफॉरमेंस कंप्यूटिंग/जीपीजीपीयू अनुप्रयोग हैं।

मशीन लर्निंग

विभिन्न डीप लर्निंग फ्रेमवर्क में आरओसीएम बैकएंड होता है:[17]

सुपरकंप्यूटिंग

आरओसीएम टॉप500 में महत्वपूर्ण कर्षण प्राप्त कर रहा है।[19]आरओसीएम का उपयोग एक्सास्केल सुपरकंप्यूटर एल कैपिटन (सुपरकंप्यूटर)[20][21] और फ्रंटियर (सुपरकंप्यूटर) के साथ किया जाता है।

कुछ संबंधित सॉफ़्टवेयर एएमडी इन्फिनिटी हब पर उपलब्ध हैं।

अन्य त्वरण और ग्राफिक्स इंटरऑपरेशन

संस्करण 3.0 के अनुसार, ब्लेंडर (सॉफ्टवेयर) अब अपने रेंडरिंग (कंप्यूटर ग्राफिक्स) चक्रों के लिए एचआईपी कंप्यूट कर्नेल का उपयोग कर सकता है।[22]

अन्य भाषाएँ

जूलिया

जूलिया (प्रोग्रामिंग भाषा) में एएमडीजीपीयू.जेएल पैकेज है,[23] जो एलएलवीएम के साथ एकीकृत होता है और आरओसीएम स्टैक के घटकों का चयन करता है। एचआईपी के माध्यम से कोड संकलित करने के अतिरिक्त, एएमडीजीपीयू.जेएल सीधे एलएलवीएम आईआर उत्पन्न करने के लिए जूलिया के कंपाइलर का उपयोग करता है, जिसे बाद में एलएलवीएम द्वारा देशी डिवाइस कोड उत्पन्न करने के लिए उपयोग किया जाता है। एएमडीजीपीयू.जेएल डिवाइस पर नेटिव कोड अभिभारण करने और इसे निष्पादित करने के लिए आरओसीआर के एचएसए कार्यान्वयन का उपयोग करता है, ठीक उसी