intel oneAPI DPC++/C++ कंपाइलर के साथ आरंभ करें
परिचय
Intel® oneAPI DPC++/C++ कंपाइलर अनुकूलन प्रदान करता है जो आपके अनुप्रयोगों को नवीनतम C, C++ और SYCL भाषा मानकों के समर्थन के साथ Windows* और Linux* पर Intel® 64 आर्किटेक्चर पर तेजी से चलाने में मदद करता है। यह कंपाइलर ऑप्टिमाइज्ड कोड तैयार करता है जो एडवांस लेकर काफी तेजी से चल सकता हैtagIntel® Xeon® प्रोसेसर और संगत प्रोसेसर में लगातार बढ़ती कोर संख्या और वेक्टर रजिस्टर चौड़ाई का ई। Intel® कंपाइलर बेहतर अनुकूलन और सिंगल इंस्ट्रक्शन मल्टीपल डेटा (SIMD) वैश्वीकरण, Intel® प्रदर्शन पुस्तकालयों के साथ एकीकरण, और OpenMP* 5.0/5.1 समानांतर प्रोग्रामिंग मॉडल का लाभ उठाकर एप्लिकेशन प्रदर्शन को बढ़ावा देने में आपकी सहायता करेगा।
Intel® oneAPI DPC++/C++ कंपाइलर C++-आधारित SYCL* स्रोत संकलित करता है fileगणना त्वरक की एक विस्तृत श्रृंखला के लिए।
Intel® oneAPI DPC++/C++ कंपाइलर Intel® oneAPI टूलकिट का हिस्सा है।
ज्यादा ढूंढें
सामग्री विवरण और लिंक |
रिलीज नोट्स ज्ञात मुद्दों और सबसे अद्यतित जानकारी के लिए रिलीज़ नोट्स पृष्ठ पर जाएँ।
Intel® oneAPI प्रोग्रामिंग गाइड Intel® oneAPI DPC++/C++ कंपाइलर पर विवरण प्रदान करता है प्रोग्रामिंग मॉडल, जिसमें SYCL* और OpenMP* ऑफलोड के बारे में विवरण, विभिन्न लक्ष्य त्वरक के लिए प्रोग्रामिंग, और Intel® oneAPI पुस्तकालयों का परिचय शामिल है। इंटेल वनएपीआई डीपीसी++/सी++ Intel® oneAPI DPC++/C++ कंपाइलर सुविधाओं और सेटअप का अन्वेषण करें और कंपाइलर डेवलपर गाइड और संकलक विकल्पों, विशेषताओं और के बारे में अधिक विस्तृत जानकारी प्राप्त करें संदर्भ अधिक। वनएपीआई कोड एसampलेस नवीनतम oneAPI कोड का अन्वेषण करेंampलेस. • Intel® oneAPI डेटा समानांतर C+ Intel® oneAPI Data Parallel C+ में प्रश्न पूछें और उत्तर खोजें + फोरम + और Intel® C++ कंपाइलर फ़ोरम।
इंटेल वनएपीआई डीपीसी++/सी++ ट्यूटोरियल, प्रशिक्षण सामग्री और अन्य Intel® oneAPI का अन्वेषण करें संकलक प्रलेखन डीपीसी++/सी++ कंपाइलर दस्तावेज। एसवाईसीएल विशिष्टता संस्करण 1.2.1 SYCL विनिर्देश बताता है कि SYCL OpenCL उपकरणों को कैसे एकीकृत करता है पीडीएफ आधुनिक सी ++ के साथ। https://www.khronos.org/sycl/ एक ओवरview एसवाईसीएल की। GNU* C++ लाइब्रेरी - प्रयोग करना दोहरी ABI का उपयोग करने पर GNU* C++ लाइब्रेरी दस्तावेज़ीकरण। दोहरी एबीआई |
योक्टो * प्रोजेक्ट के लिए परतें मेटा-इंटेल का उपयोग करके योक्टो प्रोजेक्ट बिल्ड में oneAPI घटक जोड़ें
परतें. |
नोटिस और अस्वीकरण
इंटेल प्रौद्योगिकियों को सक्षम हार्डवेयर, सॉफ़्टवेयर या सेवा सक्रियण की आवश्यकता हो सकती है।
- कोई भी उत्पाद या घटक पूर्णतः सुरक्षित नहीं हो सकता।
- आपकी लागत और परिणाम भिन्न हो सकते हैं.
© इंटेल कॉर्पोरेशन। Intel, Intel लोगो और अन्य Intel चिह्न Intel Corporation या उसकी सहायक कंपनियों के ट्रेडमार्क हैं। अन्य नामों और ब्रांडों पर दूसरों की संपत्ति के रूप में दावा किया जा सकता है।
इस दस्तावेज़ द्वारा किसी भी बौद्धिक संपदा अधिकार के लिए कोई लाइसेंस (स्पष्ट या निहित, विबंधन द्वारा या अन्यथा) प्रदान नहीं किया गया है।
वर्णित उत्पादों में डिज़ाइन दोष या त्रुटियाँ हो सकती हैं जिन्हें इरेटा के रूप में जाना जाता है, जिसके कारण उत्पाद प्रकाशित विनिर्देशों से अलग हो सकता है। वर्तमान में वर्णित इरेटा अनुरोध पर उपलब्ध हैं।
इंटेल बिना किसी सीमा के, व्यापारिक योग्यता की निहित वारंटी, किसी विशेष उद्देश्य के लिए उपयुक्तता, और गैर-उल्लंघन, साथ ही प्रदर्शन के दौरान उत्पन्न होने वाली किसी भी वारंटी, व्यवहार के पाठ्यक्रम, या व्यापार में उपयोग सहित सभी व्यक्त और निहित वारंटी को अस्वीकार करता है।
लिनक्स पर आरंभ करें
आरंभ करने से पहले
पर्यावरण चर सेट करें
इससे पहले कि आप कंपाइलर का उपयोग कर सकें, आपको पहले इनिशियलाइज़ेशन यूटिलिटी का उपयोग करके पर्यावरण स्क्रिप्ट को सोर्स करके पर्यावरण चर सेट करना होगा। यह सभी टूल्स को एक स्टेप में इनिशियलाइज़ करता है।
- अपनी स्थापना निर्देशिका निर्धारित करें, :
- a. यदि आपका कंपाइलर रूट उपयोगकर्ता या सुडो उपयोगकर्ता द्वारा डिफ़ॉल्ट स्थान पर स्थापित किया गया था, तो कंपाइलर को/opt/intel/oneapi के तहत इंस्टॉल किया जाएगा। इस मामले में, है /ऑप्ट/इंटेल/oneapi.
- b. गैर-रूट उपयोक्ताओं के लिए, आपके होम डाइरेक्टरी का उपयोग intel/oneapi के अंतर्गत किया जाता है। इस मामले में,
$ HOME/Intel/oneapi होगा। - c. क्लस्टर या एंटरप्राइज़ उपयोगकर्ताओं के लिए, आपकी व्यवस्थापक टीम ने साझा नेटवर्क पर कंपाइलर स्थापित किए होंगे file प्रणाली। स्थापना के स्थान के लिए अपने स्थानीय व्यवस्थापक कर्मचारियों से जाँच करें
( ).
- अपने शेल के लिए पर्यावरण-सेटिंग स्क्रिप्ट का स्रोत:
- a. बैश: स्रोत /setvars.sh Intel64
- b. सीएसएच/टीसीएसएच: स्रोत /setvars.csh Intel64
GPU ड्राइवर या प्लग-इन इंस्टॉल करें (वैकल्पिक)
आप C++ और SYCL* का उपयोग करके oneAPI एप्लिकेशन विकसित कर सकते हैं जो Intel, AMD*, या NVIDIA* GPU पर चलेंगे। विशिष्ट जीपीयू के लिए एप्लिकेशन विकसित करने और चलाने के लिए आपको पहले संबंधित ड्राइवर या प्लग-इन इंस्टॉल करना होगा:
- Intel GPU का उपयोग करने के लिए, नवीनतम Intel GPU ड्राइवर स्थापित करें।
- AMD GPU का उपयोग करने के लिए, oneAPI for AMD GPUs प्लग इन इंस्टॉल करें।
- NVIDIA GPU का उपयोग करने के लिए, NVIDIA GPUs प्लगइन के लिए oneAPI इंस्टॉल करें।
विकल्प 1: कमांड लाइन का प्रयोग करें
Intel® oneAPI DPC++/C++ कंपाइलर कई ड्राइवर प्रदान करता है:
निम्नलिखित सिंटैक्स का उपयोग करके कंपाइलर को आमंत्रित करें:
{कंपाइलर ड्राइवर} [विकल्प] file1 [file2...]
उदाहरणार्थampपर:
आईसीपीएक्स हैलो-वर्ल्ड.सीपीपी
SYCL संकलन के लिए, C++ ड्राइवर के साथ -fsycl विकल्प का उपयोग करें:
आईसीपीएक्स -एफएसवाईसीएल हैलो-वर्ल्ड.सीपीपी
टिप्पणी: -fsycl का उपयोग करते समय, -fsycl-targets=spir64 माना जाता है जब तक कि -fsycl-targets कमांड में स्पष्ट रूप से सेट न हो।
यदि आप एक NVIDIA या AMD GPU को लक्षित कर रहे हैं, तो विस्तृत संकलन निर्देशों के लिए संबंधित GPU प्लगइन आरंभ करें मार्गदर्शिका देखें:
- NVIDIA GPUs के लिए oneAPI आरंभ करें मार्गदर्शिका
- एएमडी जीपीयू के लिए वनएपीआई आरंभ करें मार्गदर्शिका
विकल्प 2: ग्रहण * सीडीटी का प्रयोग करें
एक्लिप्स* सीडीटी के भीतर से कंपाइलर को शुरू करने के लिए इन चरणों का पालन करें।
Intel® कंपाइलर एक्लिप्स सीडीटी प्लगइन स्थापित करें।
- ग्रहण प्रारंभ करें
- सहायता > नया सॉफ़्टवेयर इंस्टॉल करें चुनें
- साइट जोड़ें संवाद खोलने के लिए जोड़ें चुनें
- संग्रह का चयन करें, निर्देशिका में ब्राउज़ करें /संकलक/ /linux/ide_support, .zip चुनें file जो com.intel.dpcpp.compiler से शुरू होता है, फिर OK चुनें
- Intel से शुरू होने वाले विकल्पों को चुनें, अगला चुनें, फिर इंस्टॉलेशन निर्देशों का पालन करें
- यह पूछे जाने पर कि क्या आप एक्लिप्स* को फिर से शुरू करना चाहते हैं, हाँ चुनें
एक नया प्रोजेक्ट बनाएं या एक मौजूदा प्रोजेक्ट खोलें।
- मौजूदा प्रोजेक्ट खोलें या एक्लिप्स पर नया प्रोजेक्ट बनाएं
- प्रोजेक्ट> प्रॉपर्टीज> सी/सी ++ बिल्ड> टूल चेन एडिटर पर राइट क्लिक करें
- दाहिने पैनल से Intel DPC++/C++ Compiler का चयन करें
बिल्ड कॉन्फ़िगरेशन सेट करें।
- ग्रहण पर मौजूदा परियोजना खोलें
- प्रोजेक्ट> प्रॉपर्टीज> सी/सी ++ बिल्ड> सेटिंग्स पर राइट क्लिक करें
- दाएँ फलक में बिल्ड कॉन्फ़िगरेशन बनाएँ या प्रबंधित करें
कमांड लाइन से प्रोग्राम बनाएं
अपने कंपाइलर इंस्टॉलेशन का परीक्षण करने और प्रोग्राम बनाने के लिए निम्न चरणों का उपयोग करें।
- बनाने के लिए टेक्स्ट एडिटर का उपयोग करें file निम्नलिखित सामग्री के साथ hello-world.cpp कहा जाता है:
- संकलन हैलो-world.cpp:
आईसीपीएक्स हैलो-वर्ल्ड.सीपीपी -ओ हैलो-वर्ल्ड
-ओ विकल्प निर्दिष्ट करता है file उत्पन्न आउटपुट के लिए नाम। - अब आपके पास हैलो-वर्ल्ड नामक निष्पादन योग्य है जिसे चलाया जा सकता है और तत्काल प्रतिक्रिया देगा:
जो आउटपुट देता है
आप कंपाइलर विकल्पों के साथ संकलन को निर्देशित और नियंत्रित कर सकते हैं। पूर्व के लिएampले, आप वस्तु बना सकते हैं file और अंतिम बाइनरी को दो चरणों में आउटपुट करें:
- संकलन हैलो-world.cpp:
-सी विकल्प इस कदम पर लिंक करने से रोकता है।
- परिणामी एप्लिकेशन ऑब्जेक्ट कोड को लिंक करने और निष्पादन योग्य आउटपुट करने के लिए icpx कंपाइलर का उपयोग करें:
-ओ विकल्प उत्पन्न निष्पादन योग्य निर्दिष्ट करता है file नाम। उपलब्ध विकल्पों के विवरण के लिए कंपाइलर विकल्प देखें।
विंडोज पर शुरू करें
आरंभ करने से पहले
पर्यावरण चर सेट करें
कंपाइलर Microsoft Visual Studio* के निम्नलिखित संस्करणों में एकीकृत होता है:
- विजुअल स्टूडियो 2022
- विजुअल स्टूडियो 2019
- विजुअल स्टूडियो 2017
टिप्पणी Microsoft Visual Studio 2017 के लिए समर्थन को Intel® oneAPI 2022.1 रिलीज़ के रूप में हटा दिया गया है और इसे भविष्य के रिलीज़ में हटा दिया जाएगा।
डिबगिंग और विकास सहित विज़ुअल स्टूडियो के भीतर पूर्ण कार्यक्षमता के लिए, विज़ुअल स्टूडियो कम्युनिटी एडिशन या उच्चतर की आवश्यकता है। विजुअल स्टूडियो एक्सप्रेस संस्करण केवल कमांड लाइन बनाने की अनुमति देता है। सभी संस्करणों के लिए, Microsoft C++ समर्थन को Visual Studio स्थापना के भाग के रूप में चुना जाना चाहिए। विजुअल स्टूडियो 2017 और बाद के संस्करण के लिए, आपको इस विकल्प को चुनने के लिए एक कस्टम इंस्टाल का उपयोग करना होगा।
आपको आमतौर पर विंडोज पर पर्यावरण चर सेट करने की आवश्यकता नहीं होती है, क्योंकि कंपाइलर कमांड-लाइन विंडो इन चरों को आपके लिए स्वचालित रूप से सेट करती है। यदि आपको परिवेश चर सेट करने की आवश्यकता है, तो सूट-विशिष्ट प्रारंभ करें दस्तावेज़ीकरण में बताए अनुसार परिवेश स्क्रिप्ट चलाएँ.
डिफ़ॉल्ट स्थापना निर्देशिका ( ) सी है: प्रोग्राम Fileएस (x86)\Intel\oneAPI.
GPU ड्राइवर स्थापित करें (वैकल्पिक)
इंटेल जीपीयू के लिए एप्लिकेशन विकसित करने और चलाने के लिए आपको पहले नवीनतम इंटेल जीपीयू ड्राइवर स्थापित करना होगा।
विकल्प 1: Microsoft Visual Studio में कमांड लाइन का उपयोग करें
Intel® oneAPI DPC++/C++ कंपाइलर कई ड्राइवर प्रदान करता है:
निम्नलिखित सिंटैक्स का उपयोग करके कंपाइलर को आमंत्रित करें:
Microsoft Visual Studio के भीतर से कमांड लाइन का उपयोग करके कंपाइलर को इनवॉइस करने के लिए, कमांड प्रॉम्प्ट खोलें और अपना कंपाइलेशन कमांड दर्ज करें। पूर्व के लिएampपर:
SYCL संकलन के लिए, C++ ड्राइवर के साथ -fsycl विकल्प का उपयोग करें:
टिप्पणी: -fsycl का उपयोग करते समय, -fsycl-targets=spir64 माना जाता है जब तक कि -fsycl-targets कमांड में स्पष्ट रूप से सेट न हो।
विकल्प 2: माइक्रोसॉफ्ट विजुअल स्टूडियो का प्रयोग करें
Microsoft Visual Studio में Intel® DPC++/C++ कंपाइलर के लिए प्रोजेक्ट समर्थन
DPC++ के लिए नए Microsoft Visual Studio प्रोजेक्ट Intel® oneAPI DPC++/C++ कंपाइलर का उपयोग करने के लिए स्वचालित रूप से कॉन्फ़िगर किए गए हैं।
नए Microsoft Visual C++* (MSVC) प्रोजेक्ट्स को Intel® oneAPI DPC++/C++ कंपाइलर का उपयोग करने के लिए मैन्युअल रूप से कॉन्फ़िगर किया जाना चाहिए।
टिप्पणी: NET-आधारित CLR C++ प्रोजेक्ट प्रकार Intel® oneAPI DPC++/C++ कंपाइलर द्वारा समर्थित नहीं हैं। विज़ुअल स्टूडियो के आपके संस्करण के आधार पर विशिष्ट प्रोजेक्ट प्रकार अलग-अलग होंगे, उदाहरण के लिएample: CLR क्लास लाइब्रेरी, CLR कंसोल ऐप, या CLR खाली प्रोजेक्ट।
Microsoft Visual Studio में Intel® DPC++/C++ कंपाइलर का उपयोग करें
उपयोग में Microsoft Visual Studio के संस्करण के आधार पर सटीक चरण भिन्न हो सकते हैं।
- Microsoft Visual C++ (MSVC) प्रोजेक्ट बनाएँ या कोई मौजूदा प्रोजेक्ट खोलें।
- समाधान एक्सप्लोरर में, Intel® oneAPI DPC++/C++ कंपाइलर के साथ निर्माण करने के लिए प्रोजेक्ट(ओं) का चयन करें।
- ओपन प्रोजेक्ट> गुण।
- बाएँ फलक में, कॉन्फ़िगरेशन गुण श्रेणी का विस्तार करें और सामान्य गुण पृष्ठ का चयन करें।
- दाएँ फलक में प्लेटफ़ॉर्म टूलसेट को उस कंपाइलर में बदलें जिसका आप उपयोग करना चाहते हैं:
- SYCL के साथ C++ के लिए, Intel® oneAPI DPC++ कंपाइलर चुनें।
- सी/सी ++ के लिए, दो टूलसेट हैं।
इंटेल सी ++ कंपाइलर का चयन करें (पूर्वample 2021) icx को आमंत्रित करने के लिए।
इंटेल सी ++ कंपाइलर का चयन करें (पूर्वample 19.2) icl का आह्वान करने के लिए।
वैकल्पिक रूप से, आप प्रोजेक्ट > Intel Compiler > Use Intel oneAPI DPC++/C++ Compiler का चयन करके सभी समर्थित प्लेटफ़ॉर्म और चयनित प्रोजेक्ट के कॉन्फ़िगरेशन के लिए टूलसेट के रूप में एक कंपाइलर संस्करण निर्दिष्ट कर सकते हैं।
- बिल्ड > केवल प्रोजेक्ट > एकल प्रोजेक्ट के लिए पुनर्निर्माण करें या किसी समाधान के लिए बिल्ड > समाधान का पुनर्निर्माण करें, का उपयोग करके पुनर्निर्माण करें।
कंपाइलर संस्करण का चयन करें
यदि आपके पास Intel® oneAPI DPC++/C++ कंपाइलर के कई संस्करण स्थापित हैं, तो आप कंपाइलर चयन संवाद बॉक्स से वह संस्करण चुन सकते हैं जो आप चाहते हैं:
- एक परियोजना का चयन करें, फिर टूल्स> विकल्प> इंटेल कंपाइलर्स और लाइब्रेरी> पर जाएं > कंपाइलर्स, जहां मान सी ++ या डीपीसी ++ हैं।
- कंपाइलर के उपयुक्त संस्करण का चयन करने के लिए चयनित कंपाइलर ड्रॉप-डाउन मेनू का उपयोग करें।
- ठीक चुनें.
Microsoft Visual Studio C++ कंपाइलर पर वापस जाएँ
यदि आपका प्रोजेक्ट Intel® oneAPI DPC++/C++ कंपाइलर का उपयोग कर रहा है, तो आप Microsoft Visual C++ कंपाइलर पर वापस स्विच करना चुन सकते हैं:
- Microsoft Visual Studio में अपना प्रोजेक्ट चुनें।
- संदर्भ मेनू से राइट-क्लिक करें और Intel Compiler > Use Visual C++ चुनें।
यह क्रिया समाधान को अद्यतन करती है file Microsoft Visual Studio C++ कंपाइलर का उपयोग करने के लिए। प्रभावित प्रोजेक्ट के सभी कॉन्फ़िगरेशन स्वचालित रूप से साफ़ हो जाते हैं जब तक कि आप प्रोजेक्ट को साफ़ न करें चुनें। यदि आप परियोजनाओं को साफ नहीं करना चुनते हैं, तो आपको सभी स्रोत सुनिश्चित करने के लिए अद्यतन परियोजनाओं का पुनर्निर्माण करना होगा files नए कंपाइलर के साथ संकलित हैं।
कमांड लाइन से प्रोग्राम बनाएं
अपने कंपाइलर इंस्टॉलेशन का परीक्षण करने और प्रोग्राम बनाने के लिए निम्न चरणों का उपयोग करें।
- बनाने के लिए टेक्स्ट एडिटर का उपयोग करें file निम्नलिखित सामग्री के साथ hello-world.cpp कहा जाता है:
#शामिल करना int main() std::cout << "Hello, world!\n"; वापसी 0; - संकलन हैलो-world.cpp:
आईसीएक्स हैलो-वर्ल्ड.सीपीपी - अब आपके पास hello-world.exe नामक निष्पादन योग्य है जिसे चलाया जा सकता है और तत्काल प्रतिक्रिया देगा:
हैलो-world.exe
जो आउटपुट देता है:
हैलो वर्ल्ड!
आप कंपाइलर विकल्पों के साथ संकलन को निर्देशित और नियंत्रित कर सकते हैं। पूर्व के लिएampले, आप वस्तु बना सकते हैं file और अंतिम बाइनरी को दो चरणों में आउटपुट करें:
- संकलन हैलो-world.cpp:
आईसीएक्स हैलो-वर्ल्ड.सीपीपी /सी /फोहेलो-वर्ल्ड.ओबीजे
/c विकल्प इस चरण पर लिंक करने से रोकता है और /Fo ऑब्जेक्ट के लिए नाम निर्दिष्ट करता है file. - परिणामी एप्लिकेशन ऑब्जेक्ट कोड को लिंक करने के लिए icx कंपाइलर का उपयोग करें और एक निष्पादन योग्य आउटपुट करें:
icx hello-world.obj /Fehello-world.exe - /Fe विकल्प उत्पन्न निष्पादन योग्य निर्दिष्ट करता है file नाम। उपलब्ध विकल्पों के विवरण के लिए कंपाइलर विकल्प देखें।
एस संकलित करें और निष्पादित करेंampले कोड
एकाधिक कोड एसampIntel® oneAPI DPC++/C++ कंपाइलर के लिए लेस प्रदान किए गए हैं ताकि आप कंपाइलर सुविधाओं का पता लगा सकें और खुद को परिचित कर सकें कि यह कैसे काम करता है। पूर्व के लिएampपर:
अगले कदम
- नवीनतम oneAPI कोड S का उपयोग करेंamples और Intel® oneAPI प्रशिक्षण संसाधनों के साथ पालन करें।
- Intel® oneAPI DPC++/C++ कंपाइलर डेवलपर गाइड और Intel® डेवलपर ज़ोन पर संदर्भ का अन्वेषण करें।
दस्तावेज़ / संसाधन
![]() |
intel oneAPI DPC++/C++ कंपाइलर के साथ आरंभ करें [पीडीएफ] उपयोगकर्ता गाइड oneAPI DPC C कंपाइलर के साथ आरंभ करें, oneAPI DPC C कंपाइलर के साथ आरंभ करें |