intel-LOGO

intel Ismerkedés a oneAPI DPC ++/C++ fordítóval

intel-Get-Started-with-the-one API-DPC ++-C++-Compiler-PRODUCT

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® C++ fordítói fórum

 

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.

  1. 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
      ( ).
  2. 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:

intel-Get-Started-with-the-one API-DPC ++-C++-Compiler-FIG-1intel-Get-Started-with-the-one API-DPC ++-C++-Compiler-FIG-2

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.

  1. Indítsa el az Eclipse-t
  2. Válassza a Súgó > Új szoftver telepítése lehetőséget
  3. Válassza a Hozzáadás lehetőséget a Webhely hozzáadása párbeszédpanel megnyitásához
  4. 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
  5. 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
  6. 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.

  1. Nyissa meg a meglévő projektet vagy hozzon létre új projektet az Eclipse-en
  2. Kattintson a jobb gombbal a Projekt > Tulajdonságok > C/C++ Build > Szerszámlánc-szerkesztő elemre
  3. A jobb oldali panelen válassza az Intel DPC++/C++ Compiler lehetőséget

Állítsa be a build konfigurációit.

  1. Nyissa meg a meglévő projektet az Eclipse-en
  2. Kattintson a jobb gombbal a Project > Properties > C/C++ Build > Settings menüpontra
  3. 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.intel-Get-Started-with-the-one API-DPC ++-C++-Compiler-FIG-3

  1. Szövegszerkesztővel hozzon létre a file hello-world.cpp néven a következő tartalommal:
  2. 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.
  3. Most már van egy hello-world nevű végrehajtható fájlja, amely futtatható, és azonnali visszajelzést ad:intel-Get-Started-with-the-one API-DPC ++-C++-Compiler-FIG-4

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:

  1. Fordítsa le a hello-world.cpp-t:intel-Get-Started-with-the-one API-DPC ++-C++-Compiler-FIG-5A -c kapcsoló megakadályozza a linkelést ebben a lépésben.
  2. Az icpx fordítóval kapcsolja össze az eredményül kapott alkalmazásobjektum kódot, és adjon ki egy végrehajtható fájlt:intel-Get-Started-with-the-one API-DPC ++-C++-Compiler-FIG-6
    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:intel-Get-Started-with-the-one API-DPC ++-C++-Compiler-FIG-7 intel-Get-Started-with-the-one API-DPC ++-C++-Compiler-FIG-8

A fordítóprogram meghívása a következő szintaxissal:intel-Get-Started-with-the-one API-DPC ++-C++-Compiler-FIG-9

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:intel-Get-Started-with-the-one API-DPC ++-C++-Compiler-FIG-10

A SYCL fordításhoz használja az -fsycl kapcsolót a C++ illesztőprogrammal:intel-Get-Started-with-the-one API-DPC ++-C++-Compiler-FIG-11

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.

  1. Hozzon létre egy Microsoft Visual C++ (MSVC) projektet, vagy nyisson meg egy meglévő projektet.
  2. A Solution Explorerben válassza ki az Intel® oneAPI DPC++/C++ fordítóval összeállítandó projekt(eke)t.
  3. Nyissa meg a Projekt > Tulajdonságok menüpontot.
  4. 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.
  5. 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.
  6. É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é:

  1. 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++.
  2. A Kiválasztott fordító legördülő menüből válassza ki a fordító megfelelő verzióját.
  3. 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:

  1. Válassza ki projektjét a Microsoft Visual Studio alkalmazásban.
  2. 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.

  1. 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;
  2. Fordítsa le a hello-world.cpp-t:
    icx hello-world.cpp
  3. 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:

  1.  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.
  2. 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
  3. 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:

intel-Get-Started-with-the-one API-DPC ++-C++-Compiler-FIG-17intel-Get-Started-with-the-one API-DPC ++-C++-Compiler-FIG-18

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

Hivatkozások

Hagyj megjegyzést

E-mail címét nem tesszük közzé. A kötelező mezők meg vannak jelölve *