intel Ismerkedés a oneAPI DPC ++/C++ fordítóval
BEVEZETÉS
Az Intel® oneAPI DPC++/C++ Compiler olyan optimalizációkat biztosít, amelyek elősegítik az alkalmazások gyorsabb futtatását Intel® 64 architektúrákon Windows* és Linux* rendszeren, a legújabb C, C++ és SYCL nyelvi szabványok támogatásával. Ez a fordító optimalizált kódot állít elő, amely lényegesen gyorsabban futhat az advan használatávaltagAz Intel® Xeon® processzorok és a kompatibilis processzorok folyamatosan növekvő magszáma és vektorregiszter-szélessége. Az Intel® Compiler segít az alkalmazások teljesítményének növelésében a kiváló optimalizálás és a SIMD (Single Instruction Multiple Data) vektorizálás, az Intel® Performance Libraries-ekkel való integráció, valamint az OpenMP* 5.0/5.1 párhuzamos programozási modell kihasználása révén.
Az Intel® oneAPI DPC++/C++ fordítója C++ alapú SYCL* forrást fordít files számítási gyorsítók széles skálájához.
Az Intel® oneAPI DPC++/C++ Compiler az Intel® oneAPI Toolkits része.
További információ
Tartalom leírása és hivatkozások |
Kiadási megjegyzések Az ismert problémákért és a legfrissebb információkért keresse fel a Kiadási megjegyzések oldalt.
Intel® oneAPI programozási útmutató Részleteket ad az Intel® oneAPI DPC++/C++ fordítóról programozási modell, beleértve a SYCL* és az OpenMP* offload részleteit, a különböző célgyorsítók programozását és az Intel® oneAPI könyvtárak bemutatását. Intel® oneAPI DPC++/C++ Fedezze fel az Intel® oneAPI DPC++/C++ fordító funkcióit, valamint a beállítást és Fordító fejlesztői útmutató és részletesebb információkat kaphat a fordítói beállításokról, attribútumokról és Referencia több. oneAPI Code Samples Fedezze fel a legújabb oneAPI kódotamples. • Intel® oneAPI Data Parallel C+ Tegyen fel kérdéseket, és keressen válaszokat az Intel® oneAPI Data Parallel C+ segítségével + Fórum + és Intel® C++ Compiler fórumok.
Intel® oneAPI DPC++/C++ Fedezze fel az oktatóanyagokat, oktatási anyagokat és más Intel® oneAPI-kat Fordító dokumentáció DPC++/C++ fordító dokumentáció. SYCL specifikáció 1.2.1-es verzió A SYCL specifikáció elmagyarázza, hogy a SYCL hogyan integrálja az OpenCL-eszközöket PDF modern C++-szal. https://www.khronos.org/sycl/ Egy végeview a SYCL. A GNU* C++ Library – Használata A GNU* C++ Library dokumentációja a kettős ABI használatáról. Kettős ABI |
Rétegek a Yocto* projekthez Adjon hozzá oneAPI-összetevőket egy Yocto-projekthez a meta-intel használatával
rétegek. |
Megjegyzések és felelősség kizárása
Az Intel technológiákhoz engedélyezni kell a hardver, a szoftver vagy a szolgáltatás aktiválását.
- Egyetlen termék vagy alkatrész sem lehet teljesen biztonságos.
- A költségek és az eredmények változhatnak.
© Intel Corporation. Az Intel, az Intel logó és más Intel védjegyek az Intel Corporation vagy leányvállalatai védjegyei. Más nevek és márkák mások tulajdonát képezhetik.
Ez a dokumentum nem ad engedélyt (kifejezetten vagy hallgatólagosan, megtagadással vagy más módon) semmilyen szellemi tulajdonjogra.
A leírt termékek tervezési hibákat vagy hibáknak nevezett hibákat tartalmazhatnak, amelyek miatt a termék eltérhet a közzétett specifikációktól. Az aktuális jellemző hibák kérésre rendelkezésre állnak.
Az Intel elhárít minden kifejezett és vélelmezett garanciát, beleértve korlátozás nélkül az eladhatóságra, az adott célra való alkalmasságra és a jogsértésekre vonatkozó hallgatólagos garanciákat, valamint a teljesítés menetéből, a kereskedés menetéből vagy a kereskedelmi felhasználásból eredő minden garanciát.
Kezdje el a Linuxot
Mielőtt elkezdené
Állítsa be a környezeti változókat
A fordító használata előtt először be kell állítania a környezeti változókat a környezeti parancsfájl inicializálási segédprogrammal történő beszerzésével. Ez egy lépésben inicializálja az összes eszközt.
- Határozza meg a telepítési könyvtárat, :
- a. Ha a fordítót egy root felhasználó vagy sudo felhasználó telepítette az alapértelmezett helyre, akkor a fordító az/opt/intel/oneapi alatt lesz telepítve. Ebben az esetben, az /opt/intel/oneapi.
- b. A nem root felhasználók az intel/oneapi alatti saját könyvtárat használják. Ebben az esetben,
$HOME/intel/oneapi lesz. - c. A fürt vagy vállalati felhasználók esetében előfordulhat, hogy az adminisztrátori csapat egy megosztott hálózatra telepítette a fordítókat file rendszer. A telepítés helyéről érdeklődjön a helyi adminisztrátornál
( ).
- Forrásozza be a shell környezetbeállító szkriptjét:
- a. bash: forrás /setvars.sh intel64
- b. csh/tcsh: forrás /setvars.csh intel64
GPU-illesztőprogramok vagy beépülő modulok telepítése (opcionális)
C++ és SYCL* használatával fejleszthet oneAPI alkalmazásokat, amelyek Intel, AMD* vagy NVIDIA* GPU-kon futnak. Adott GPU-khoz való alkalmazások fejlesztéséhez és futtatásához először telepítenie kell a megfelelő illesztőprogramokat vagy beépülő modulokat:
- Intel GPU használatához telepítse a legújabb Intel GPU illesztőprogramokat.
- AMD GPU használatához telepítse a oneAPI for AMD GPUs beépülő modult.
- NVIDIA GPU használatához telepítse a oneAPI for NVIDIA GPUs beépülő modult.
1. lehetőség: Használja a parancssort
Az Intel® oneAPI DPC++/C++ fordító több illesztőprogramot biztosít:
A fordítóprogram meghívása a következő szintaxissal:
{fordító-illesztőprogram} [opció] file1 [file2…]
Plample:
icpx hello-world.cpp
A SYCL fordításhoz használja az -fsycl kapcsolót a C++ illesztőprogrammal:
icpx -fsycl hello-world.cpp
JEGYZET: Az -fsycl használatakor a -fsycl-targets=spir64 feltételezhető, kivéve, ha az -fsycl-targets kifejezetten be van állítva a parancsban.
Ha NVIDIA vagy AMD GPU-t céloz meg, tekintse meg a megfelelő GPU-bővítmény első lépések útmutatóját a részletes összeállítási utasításokért:
- oneAPI NVIDIA GPU-khoz – Kezdő lépések útmutató
- oneAPI AMD GPU-khoz Kezdő lépések útmutató
2. lehetőség: Használja az Eclipse* CDT-t
Kövesse ezeket a lépéseket a fordító meghívásához az Eclipse* CDT-ből.
Telepítse az Intel® Compiler Eclipse CDT beépülő modult.
- Indítsa el az Eclipse-t
- Válassza a Súgó > Új szoftver telepítése lehetőséget
- Válassza a Hozzáadás lehetőséget a Webhely hozzáadása párbeszédpanel megnyitásához
- Válassza az Archívum lehetőséget, és tallózással keresse meg a könyvtárat /fordítóprogram/ /linux/ide_support, válassza ki a .zip fájlt file amely a com.intel.dpcpp.compiler paranccsal kezdődik, majd kattintson az OK gombra
- Válassza az Intel kezdetű opciókat, válassza a Tovább lehetőséget, majd kövesse a telepítési utasításokat
- Amikor megkérdezi, hogy szeretné-e újraindítani az Eclipse* programot, válassza az Igen lehetőséget
Hozzon létre egy új projektet, vagy nyisson meg egy meglévőt.
- Nyissa meg a meglévő projektet vagy hozzon létre új projektet az Eclipse-en
- Kattintson a jobb gombbal a Projekt > Tulajdonságok > C/C++ Build > Szerszámlánc-szerkesztő elemre
- A jobb oldali panelen válassza az Intel DPC++/C++ Compiler lehetőséget
Állítsa be a build konfigurációit.
- Nyissa meg a meglévő projektet az Eclipse-en
- Kattintson a jobb gombbal a Project > Properties > C/C++ Build > Settings menüpontra
- Hozzon létre vagy kezeljen összeállítási konfigurációkat a jobb oldali panelen
Készítsen programot a parancssorból
A következő lépésekkel tesztelheti a fordító telepítését és készíthet programot.
- Szövegszerkesztővel hozzon létre a file hello-world.cpp néven a következő tartalommal:
- Fordítsa le a hello-world.cpp-t:
icpx hello-world.cpp -o hello-world
Az -o kapcsoló megadja a file a generált kimenet neve. - Most már van egy hello-world nevű végrehajtható fájlja, amely futtatható, és azonnali visszajelzést ad:
Melyik kimenet
A fordítói beállításokkal irányíthatja és vezérelheti a fordítást. Plample, létrehozhatja az objektumot file és két lépésben adja ki a végső binárist:
- Fordítsa le a hello-world.cpp-t:
A -c kapcsoló megakadályozza a linkelést ebben a lépésben.
- Az icpx fordítóval kapcsolja össze az eredményül kapott alkalmazásobjektum kódot, és adjon ki egy végrehajtható fájlt:
Az -o kapcsoló megadja a generált végrehajtható fájlt file név. Az elérhető opciókkal kapcsolatos részletekért lásd a Fordító beállításai részt.
Kezdje el a Windows rendszert
Mielőtt elkezdené
Állítsa be a környezeti változókat
A fordító a Microsoft Visual Studio* következő verzióiba integrálható:
- Visual Studio 2022
- Visual Studio 2019
- Visual Studio 2017
JEGYZET A Microsoft Visual Studio 2017 támogatása az Intel® oneAPI 2022.1 kiadástól kezdve elavult, és egy későbbi kiadásban megszűnik.
A Visual Studio teljes funkcionalitásához, beleértve a hibakeresést és a fejlesztést, a Visual Studio Community Edition vagy újabb verziója szükséges. A Visual Studio Express Edition csak parancssori összeállításokat tesz lehetővé. Minden verziónál a Microsoft C++ támogatást ki kell választani a Visual Studio telepítésének részeként. Visual Studio 2017 és újabb verziók esetén egyéni telepítést kell használnia ennek a lehetőségnek a kiválasztásához.
Általában nem kell beállítania a környezeti változókat a Windows rendszeren, mivel a fordító parancssori ablaka automatikusan beállítja ezeket a változókat. Ha be kell állítania a környezeti változókat, futtassa a környezeti parancsfájlt a programcsomag-specifikus Kezdő lépések dokumentációban leírtak szerint.
Az alapértelmezett telepítési könyvtár ( ) a C:\Program Files (x86)\Intel\oneAPI.
GPU-illesztőprogramok telepítése (opcionális)
Az Intel GPU-khoz való alkalmazások fejlesztéséhez és futtatásához először telepítenie kell a legújabb Intel GPU-illesztőprogramokat.
1. lehetőség: Használja a Microsoft Visual Studio parancssorát
Az Intel® oneAPI DPC++/C++ fordító több illesztőprogramot biztosít:
A fordítóprogram meghívása a következő szintaxissal:
A fordítóprogram Microsoft Visual Studio parancssorával történő meghívásához nyissa meg a parancssort, és írja be a fordítási parancsot. Plample:
A SYCL fordításhoz használja az -fsycl kapcsolót a C++ illesztőprogrammal:
JEGYZET: Az -fsycl használatakor a -fsycl-targets=spir64 feltételezhető, kivéve, ha az -fsycl-targets kifejezetten be van állítva a parancsban.
2. lehetőség: A Microsoft Visual Studio használata
Projekttámogatás az Intel® DPC++/C++ fordítóhoz a Microsoft Visual Studio alkalmazásban
Az új Microsoft Visual Studio DPC++ projektek automatikusan az Intel® oneAPI DPC++/C++ fordító használatára vannak beállítva.
Az új Microsoft Visual C++* (MSVC) projekteket manuálisan kell konfigurálni az Intel® oneAPI DPC++/C++ fordító használatához.
JEGYZET: A NET-alapú CLR C++ projekttípusokat az Intel® oneAPI DPC++/C++ fordító nem támogatja. A konkrét projekttípusok a Visual Studio verziójától függően változnak, plample: CLR Class Library, CLR Console App vagy CLR Empty Project.
Használja a Microsoft Visual Studio Intel® DPC++/C++ fordítóját
A pontos lépések a Microsoft Visual Studio használt verziójától függően változhatnak.
- Hozzon létre egy Microsoft Visual C++ (MSVC) projektet, vagy nyisson meg egy meglévő projektet.
- A Solution Explorerben válassza ki az Intel® oneAPI DPC++/C++ fordítóval összeállítandó projekt(eke)t.
- Nyissa meg a Projekt > Tulajdonságok menüpontot.
- A bal oldali ablaktáblában bontsa ki a Konfiguráció tulajdonságai kategóriát, és válassza az Általános tulajdonság oldalt.
- A jobb oldali ablaktáblában módosítsa a Platform eszközkészletet a használni kívánt fordítóra:
- SYCL-lel rendelkező C++ esetén válassza az Intel® oneAPI DPC++ fordítót.
- C/C++ esetén két eszközkészlet létezik.
Válassza az Intel C++ fordítót (voltample 2021) az icx meghívásához.
Válassza az Intel C++ fordítót (voltample 19.2) az icl meghívásához.
Alternatív megoldásként megadhat egy fordítóverziót eszközkészletként a kiválasztott projekt(ek) összes támogatott platformjához és konfigurációjához a Projekt > Intel fordító > Intel oneAPI DPC++/C++ fordító használata menüpont kiválasztásával.
- Építse újra a Build > Csak projekt > Újraépítés egyetlen projekthez vagy a Build > Rebuild Solution használatával egy megoldáshoz.
Válassza a Fordítóverzió lehetőséget
Ha az Intel® oneAPI DPC++/C++ Compiler több verziója is telepítve van, a Fordító kiválasztása párbeszédpanelen kiválaszthatja, hogy melyik verziót szeretné:
- Válasszon ki egy projektet, majd lépjen az Eszközök > Beállítások > Intel fordítók és könyvtárak > menüpontra > Fordítók, hol az értékek C++ vagy DPC++.
- A Kiválasztott fordító legördülő menüből válassza ki a fordító megfelelő verzióját.
- Válassza az OK lehetőséget.
Váltson vissza a Microsoft Visual Studio C++ fordítójára
Ha a projekt az Intel® oneAPI DPC++/C++ fordítót használja, választhat, hogy visszavált a Microsoft Visual C++ fordítójára:
- Válassza ki projektjét a Microsoft Visual Studio alkalmazásban.
- Kattintson a jobb gombbal, és válassza az Intel Compiler > Visual C++ használata lehetőséget a helyi menüből.
Ez a művelet frissíti a megoldást file a Microsoft Visual Studio C++ fordító használatához. Az érintett projektek összes konfigurációja automatikusan törlődik, kivéve, ha a Projekt(ok) tisztítása lehetőséget nem választja. Ha úgy dönt, hogy nem tisztítja a projekteket, újra kell építenie a frissített projekteket, hogy biztosítsa az összes forrást files az új fordítóval kerülnek összeállításra.
Készítsen programot a parancssorból
A következő lépésekkel tesztelheti a fordító telepítését és készíthet programot.
- Szövegszerkesztővel hozzon létre a file hello-world.cpp néven a következő tartalommal:
#beleértve int main() std::cout << “Helló világ!\n”; visszatérés 0; - Fordítsa le a hello-world.cpp-t:
icx hello-world.cpp - Most már van egy hello-world.exe nevű végrehajtható fájlja, amely futtatható, és azonnali visszajelzést ad:
hello-world.exe
Melyik kimenet:
Helló világ!
A fordítói beállításokkal irányíthatja és vezérelheti a fordítást. Plample, létrehozhatja az objektumot file és két lépésben adja ki a végső binárist:
- Fordítsa le a hello-world.cpp-t:
icx hello-world.cpp /c /Fohello-world.obj
A /c beállítás megakadályozza a hivatkozást ebben a lépésben, a /Fo pedig megadja az objektum nevét file. - Az icx fordítóval kapcsolja össze az eredményül kapott alkalmazásobjektum kódot, és adjon ki egy végrehajtható fájlt:
icx hello-world.obj /Fhello-world.exe - A /Fe paraméter határozza meg az előállított végrehajtható fájlt file név. Az elérhető opciókkal kapcsolatos részletekért lásd a Fordító beállításai részt.
Fordítsa le és hajtsa végre az S-tample Kód
Több kód sampEzek az Intel® oneAPI DPC++/C++ fordítóhoz vannak biztosítva, így felfedezheti a fordító funkcióit, és megismerheti annak működését. Plample:
Következő lépések
- Használja a legújabb oneAPI Code S-tamples, és kövesse az Intel® oneAPI képzési forrásokat.
- Fedezze fel az Intel® oneAPI DPC++/C++ Compiler Developer Guide és Reference című dokumentumát az Intel® Developer Zone-ról.
Dokumentumok / Források
![]() |
intel Ismerkedés a oneAPI DPC ++/C++ fordítóval [pdf] Felhasználói útmutató Ismerkedjen meg a oneAPI DPC C fordítóval, kezdje el a oneAPI DPC C fordítóval |