Kezdje el az Intel® Distribution for GDB* használatát Linux* OS Host rendszeren

Kezdje el az Intel® Distribution for GDB* használatát az alkalmazások hibakereséséhez. Kövesse az alábbi utasításokat a hibakereső beállításához a CPU- és GPU-eszközökre feltöltött kernelekkel rendelkező alkalmazások hibakereséséhez.

Az Intel® Distribution for GDB* az Intel® oneAPI Base Toolkit részeként érhető el. A oneAPI eszközkészletekkel kapcsolatos további információkért keresse fel a termékoldal.

Látogassa meg a Kiadási megjegyzések oldal a legfontosabb képességekkel, új funkciókkal és ismert problémákkal kapcsolatos információkért.

Használhat SYCL* s-tample kódot, az Array Transformot, hogy elkezdhesse az Intel® Distribution for GDB* használatát. Az SampA le nem generál hibákat, és egyszerűen szemlélteti a hibakereső funkciókat. A kód a bemeneti tömb elemeit dolgozza fel attól függően, hogy azok párosak vagy páratlanok, és egy kimeneti tömböt állít elő. Használhatja az sample hibakereséshez mind a CPU-n, mind a GPU-n, parancssori argumentum segítségével megadva a kiválasztott eszközt. Vegye figyelembe azonban, hogy a GPU-hibakereséshez két rendszerre és további konfigurációra lehet szükség a távoli hibakereséshez.

Előfeltételek

Ha GPU-n szeretne hibakeresést végezni, telepítse a legújabb GPU-illesztőprogramokat, és konfigurálja a rendszert ezek használatára. Utal Intel® oneAPI Toolkits Installation Guide for Linux* OS. Kövesse az utasításokat Telepítse az Intel GPU illesztőprogramokat a rendszernek megfelelő GPU-illesztőprogramok telepítéséhez.

Ezenkívül telepíthet egy bővítményt a Visual Studio Code* számára a GPU hibakereséséhez az Intel® Distribution for GDB* segítségével. Utal A Visual Studio Code használata Intel® oneAPI Toolkits útmutatóval.

Állítsa be a GPU hibakeresőt

A GPU hibakereső beállításához root hozzáféréssel kell rendelkeznie.


JEGYZET A kernel hibakeresése során a GPU leáll, és a videokimenet nem érhető el a célgépen. Emiatt nem lehet hibakeresni a GPU-t a célrendszerről, ha a rendszer GPU kártyáját is használják grafikus kimenetre. Ebben az esetben ssh-n keresztül csatlakozzon a géphez.


1. Ha GPU-n szeretne hibakeresést végezni, akkor olyan Linux kernelre van szükség, amely támogatja a GPU hibakeresését.

a. Kövesse a címen található utasításokat Intel® szoftver általános célú GPU-képességekhez a szükséges illesztőprogramok letöltéséhez és telepítéséhez.
b. Az i915 hibakeresési támogatás engedélyezése a kernelben:

a. Nyisson meg egy terminált.
b. Nyissa ki a grubot file az /etc/default fájlban.
c. A dögben file, keresse meg a GRUB_CMDLINE_LINUX_DEFAULT=” sort.
d. Írja be a következő szöveget az idézőjelek közé (""):

i915.debug_eu=1


JEGYZET Alapértelmezés szerint a GPU-illesztőprogram nem engedi, hogy a munkaterhelések egy bizonyos időtartamnál tovább futjanak a GPU-n. Az illesztőprogram megszünteti az ilyen hosszan tartó terheléseket a GPU alaphelyzetbe állításával, hogy megakadályozza a lefagyást. Az illesztőprogram hangellenőrző mechanizmusa le van tiltva, ha az alkalmazás a hibakereső alatt fut. Ha hosszú számítási munkaterhelést tervez futtatni hibakereső csatolása nélkül is, fontolja meg az alkalmazást GPU: A Hangcheck letiltása hozzáadásával

i915.enable_hangcheck=0

ugyanahhoz GRUB_CMDLINE_LINUX_DEFAULT sor.

c. Frissítse a GRUB-ot, hogy ezek a változások életbe lépjenek:

sudo update-grub

d. Indítsa újra.

2. Állítsa be a CLI-környezetet az eszközkészlet telepítésének gyökerében található setvars parancsfájl beszerzésével.

Linux (sudo):

forrás /opt/intel/oneapi/setvars.sh

Linux (felhasználó):

forrás ~/intel/oneapi/setvars.sh

3. Beállítási környezet
A következő környezeti változókkal engedélyezheti a hibakereső támogatását az Intel® oneAPI Level Zero számára:

export ZET_ENABLE_PROGRAM_DEBUGGING=1
exportálás IGC_EnableGTLocationDebugging=1

4. Rendszerellenőrzés
Ha minden készen van, futtassa a következő parancsot, hogy megbizonyosodjon arról, hogy a rendszerkonfiguráció megbízható:

python3 /path/to/intel/oneapi/diagnostics/latest/diagnostics.py –filter debugger_sys_check -force

Egy jól konfigurált rendszer lehetséges kimenete a következő:


Az eredmények ellenőrzése:
=================================================== ===============================
Ellenőrzés neve: debugger_sys_check
Leírás: Ez az ellenőrzés ellenőrzi, hogy a környezet készen áll-e a gdb (Intel(R) Distribution for GDB*) használatára.
Az eredmény állapota: PASS
Hibakereső található.
lilipt talált.
libiga talált.
Az i915 hibakeresés engedélyezve van.
A környezeti változók helyesek. =================================================== ================================

1 ELLENŐRZÉS: 1 MEGFELELŐ, 0 SIKERTELEN, 0 FIGYELMEZTETÉS, 0 HIBA

Konzol kimenet file: /path/to/logs/diagnostics_filter_debugger_sys_check_force.txt JSON kimenet file: /path/to/diagnostics/logs/diagnostics_filter_debugger_sys_check_force.json …

Fordítsa le a programot hibakeresési információkkal

Használhatja az sample projektet, az Array Transformot, hogy gyorsan elkezdhesse az alkalmazáshibakeresőt.

1. A sample, válasszon az alábbi módok közül:

2. Navigáljon az s src-jéhezampprojekt:

cd array-transform/src

3. Fordítsa le az alkalmazást a hibakeresési információ (-g jelző) és az optimalizálás kikapcsolásával (-O0 jelző).
Az optimalizálás letiltása a stabil és pontos hibakeresési környezet érdekében javasolt. Ez segít elkerülni a zűrzavart, amelyet a fordítóoptimalizálás után a kód megváltoztatása okoz.


JEGYZET Továbbra is lefordíthatja a programot az optimalizálás engedélyezésével (-O2 jelző), ami hasznos lehet, ha a GPU-összeállítás hibakeresését célozza meg.


A programot többféleképpen is összeállíthatja. Az 1. és 2. lehetőség a just-in-time (JIT) fordítást használja, amely az s hibakereséséhez ajánlott.ample. A 3. lehetőség az idő előtti (AOT) fordítást használja.

  • 1. lehetőség. Használhatja a CMake-et file az alkalmazás konfigurálásához és elkészítéséhez. Utal README az sample az utasításokért.

JEGYZET A CMake file ellátva a szample már átadja a -g -O0 jelzőket.


  • 2. lehetőség. Az array-transform.cpp s fordításaampalkalmazás a CMake nélkül file, adja ki a következő parancsokat:

icpx -fsycl -g -O0 array-transform.cpp -o array-transform

Ha a fordítást és a linkelést külön-külön végzik el, tartsa meg a -g -O0 jelzőket a link lépésben. A link lépése az, amikor az icpx lefordítja ezeket a jelzőket, hogy azokat futás közben átadja az eszköz fordítójának. Voltample:

icpx -fsycl -g -O0 -c array-transform.cpp
icpx -fsycl -g -O0 array-transform.o -o array-transform

  • 3. lehetőség. Használhat AOT-fordítást, hogy elkerülje a hosszabb JIT-fordítási időt futás közben. A JIT fordítás jelentősen tovább tarthat nagy kerneleknél a hibakereső alatt. Az idő előtti összeállítási mód használata:

• GPU-n történő hibakereséshez:
Adja meg a program végrehajtásához használni kívánt eszközt. Plample, -device dg2-g10 Intel® Data Center GPU Flex 140 grafikus kártyához. A támogatott opciók listájáért és az AOT-összeállítással kapcsolatos további információkért tekintse meg a Intel® oneAPI DPC++ fordító fejlesztői útmutató és referencia.
Plample:

icpx -fsycl -g -O0 -fsycl-targets=spir64_gen -Xs "-device dg2-g10" array-transform.cpp -o arraytransform

Az idő előtti fordításhoz az OpenCLTM Offline Compiler (OC Compiler LOC) szükséges. További információkért olvassa el az „OpenCLTM Offline Compiler (OCLOC) telepítése” című részt Telepítési útmutató.

• Hibakereséshez CPU-n:

icpx -fsycl -g -O0 -fsycl-targets=spir64_x86_64 array-transform.cpp -o array-transform

Indítson el egy hibakeresési munkamenetet

Indítsa el a hibakeresési munkamenetet:

1. Indítsa el az Intel® Distribution for GDB* szolgáltatást az alábbiak szerint:

gdb-oneapi array-transform

Látnia kell a (gdb) promptot.

2. Ha meg szeretné győződni arról, hogy a kernel a megfelelő eszközre van betöltve, tegye a következőket. Amikor végrehajtja a run parancsot a (gdb) promptból, adja át a cpu, gpu or gázpedál érv:

  • A CPU hibakereséséhez:

futtasson cpu-t

Example kimenet:

[SYCL] Eszköz használata: [Intel(R) Core(TM) i7-9750H CPU @ 2.60 GHz] az [Intel(R) OpenCL-től]
  • A GPU hibakereséséhez:

futtatni a gpu-t

Example kimenet:

[SYCL] Eszköz használata: [Intel(R) Data Center GPU Flex Series 140 [0x56c1]], [Intel(R) LevelZero]
  • Hibakeresés az FPGA-emulátoron:

futás gyorsító

Example kimenet:

[SYCL] Eszköz használata: [Intel(R) FPGA Emulation Device] az [Intel(R) FPGA Emulation Platform for OpenCL(TM) szoftvertől]

JEGYZET A cpu, a gpu és a gyorsító paraméterei az Array Transform alkalmazásra jellemzőek.


3. Az Intel® Distribution for GDB* szolgáltatásból való kilépéshez:

kilép

Az Ön kényelme érdekében a közös Intel® Distribution for GDB* parancsok megtalálhatók a Referencialap.

Az Array Transform hibakereséséhez sample és tudjon meg többet az Intel® Distribution for GDB*-ről, végigjárja az alapvető hibakeresési forgatókönyveket a segítségével Oktatóanyag.

További információ
Dokumentum Leírás
Oktatóanyag: Hibakeresés az Intel® Distribution segítségével GDB-hez* Ez a dokumentum a SYCL* és OpenCL Intel® Distribution for GDB* rendszerrel végzett hibakeresése során követendő alapvető forgatókönyveket írja le.
Intel® Distribution for GDB* felhasználói kézikönyv Ez a dokumentum leírja az Intel® Distribution for GDB* szolgáltatással végrehajtható összes gyakori feladatot, és megadja a szükséges műszaki részleteket.
Intel® Distribution for GDB* kiadási megjegyzések A megjegyzések információkat tartalmaznak az Intel® Distribution for GDB* kulcsfontosságú képességeiről, új funkcióiról és ismert problémáiról.
oneAPI termékoldal Ez az oldal rövid bevezetőt tartalmaz a oneAPI eszközkészletekről, valamint hasznos forrásokra mutató hivatkozásokat.
Intel® Distribution for GDB* referencialap Ez az egyoldalas dokumentum röviden leírja az Intel® Distribution for GDB* előfeltételeit és hasznos parancsait.
Jacobi Sample Ennek a kis SYCL* alkalmazásnak két verziója van: hibás és javított. Használja az sampAz Intel® Distribution for GDB* segítségével az alkalmazások hibakeresését gyakorolhatja.
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.

Az OpenCL és az OpenCL logó az Apple Inc. védjegyei, amelyeket a Khronos engedélyével használ.

Dokumentumok / Források

intel Distribution for GDB Linux OS Host [pdf] Felhasználói útmutató
Terjesztés GDB számára Linux OS Host, GDB Linux OS Host, Linux OS Host, OS Host, Host

Hivatkozások

Hagyj megjegyzést

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