Začnite z distribucijo Intel® za GDB* na gostitelju OS Linux*

Začnite uporabljati distribucijo Intel® za GDB* za odpravljanje napak v aplikacijah. Sledite spodnjim navodilom, da nastavite razhroščevalnik za odpravljanje napak v aplikacijah z jedri, prenesenimi na naprave CPE in GPE.

Intel® Distribution for GDB* je na voljo kot del osnovnega orodja Intel® oneAPI. Za več informacij o kompletih orodij oneAPI obiščite stran izdelka.

Obiščite Opombe ob izdaji stran za informacije o ključnih zmožnostih, novih funkcijah in znanih težavah.

Uporabite lahko SYCL* sampkodo, Array Transform, da začnete z distribucijo Intel® za GDB*. Sample ne ustvarja napak in preprosto ponazarja funkcije razhroščevalnika. Koda obdela elemente vhodne matrike glede na to, ali so sodi ali lihi, in ustvari izhodno matriko. Uporabite lahko sample za odpravljanje napak v CPE ali GPE, pri čemer izbrano napravo določite prek argumenta ukazne vrstice. Upoštevajte, da bo odpravljanje napak GPE morda zahtevalo dva sistema in dodatno konfiguracijo za oddaljeno odpravljanje napak.

Predpogoji

Če nameravate odpravljati napake na GPE, namestite najnovejše gonilnike GPE in konfigurirajte sistem za njihovo uporabo. Glejte na Priročnik za namestitev kompletov orodij Intel® oneAPI za OS Linux*. Sledite navodilom Namestite gonilnike Intel GPU za namestitev gonilnikov GPE, ki ustrezajo vašemu sistemu.

Poleg tega lahko namestite razširitev za Visual Studio Code* za odpravljanje napak GPE z Intel® Distribution for GDB*. Glejte na Uporaba Visual Studio Code z Intel® oneAPI Toolkits Guide.

Nastavite razhroščevalnik GPU

Če želite nastaviti razhroščevalnik GPU, morate imeti korenski dostop.


OPOMBA Med razhroščevanjem jedra se GPE ustavi in ​​video izhod ni na voljo na vašem ciljnem računalniku. Zaradi tega ne morete odpraviti napak v GPE iz ciljnega sistema, če se kartica GPE sistema uporablja tudi za grafični izhod. V tem primeru se na stroj povežite prek ssh.


1. Če nameravate odpravljati napake na GPU, je potrebno jedro Linuxa, ki podpira odpravljanje napak GPE.

a. Sledite navodilom na Programska oprema Intel® za splošne zmogljivosti GPE za prenos in namestitev potrebnih gonilnikov.
b. Omogoči podporo za odpravljanje napak i915 v jedru:

a. Odprite terminal.
b. Odprite grubo file v /etc/default.
c. V jedi file, poiščite vrstico GRUB_CMDLINE_LINUX_DEFAULT=””.
d. Med narekovaje (»«) vnesite naslednje besedilo:

i915.debug_eu=1


OPOMBA Gonilnik GPE privzeto ne dovoljuje izvajanja delovnih obremenitev na GPE dlje kot določen čas. Gonilnik uniči tako dolgotrajne delovne obremenitve s ponastavitvijo GPE, da prepreči zastoje. Mehanizem hangcheck gonilnika je onemogočen, če se aplikacija izvaja pod razhroščevalnikom. Če nameravate izvajati dolge računalniške delovne obremenitve tudi brez priključenega razhroščevalnika, razmislite o prijavi GPU: Onemogoči Hangcheck z dodajanjem

i915.enable_hangcheck=0

do istega Vrstica GRUB_CMDLINE_LINUX_DEFAULT.

c. Posodobite GRUB, da te spremembe začnejo veljati:

sudo update-grub

d. Znova zaženite.

2. Nastavite svoje okolje CLI tako, da pridobite skript setvars, ki se nahaja v korenu namestitve vašega orodja.

Linux (sudo):

vir /opt/intel/oneapi/setvars.sh

Linux (uporabnik):

vir ~/intel/oneapi/setvars.sh

3. Namestitveno okolje
Uporabite naslednje spremenljivke okolja, da omogočite podporo za odpravljanje napak za Intel® oneAPI Level Zero:

izvoz ZET_ENABLE_PROGRAM_DEBUGGING=1
izvoz IGC_EnableGTLocationDebugging=1

4. Sistemsko preverjanje
Ko je vse pripravljeno, zaženite naslednji ukaz, da potrdite, da je sistemska konfiguracija zanesljiva:

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

Možen rezultat dobro konfiguriranega sistema je naslednji:


Rezultati preverjanja:
==================================================== ===============================
Ime preverjanja: debugger_sys_check
Opis: to preverjanje preveri, ali je okolje pripravljeno za uporabo gdb (Intel(R) Distribution for GDB*).
Stanje rezultata: USPOREDI
Razhroščevalnik je bil najden.
najden libipt.
libiga našla.
i915 debug je omogočen.
Okoljske spremenljivke pravilne. ==================================================== =================================

1 PREVERJANJE: 1 USPEŠNO, 0 NEUSPEŠNO, 0 OPOZORIL, 0 NAPAK

Konzolni izhod file: /path/to/logs/diagnostics_filter_debugger_sys_check_force.txt Izhod JSON file: /path/to/diagnostics/logs/diagnostics_filter_debugger_sys_check_force.json …

Prevedite program z informacijami o odpravljanju napak

Uporabite lahko sample projekta, Array Transform, da hitro začnete z razhroščevalnikom aplikacij.

1. Da bi dobili sample, izberite enega od naslednjih načinov:

2. Pomaknite se do src sample projekt:

cd array-transform/src

3. Prevedite aplikacijo tako, da omogočite informacije o odpravljanju napak (zastavica -g) in izklopite optimizacije (zastavica -O0).
Onemogočanje optimizacije je priporočljivo za stabilno in natančno okolje za odpravljanje napak. To pomaga preprečiti zmedo zaradi sprememb kode po optimizaciji prevajalnika.


OPOMBA Še vedno lahko prevedete program z omogočeno optimizacijo (zastavica -O2), kar je lahko koristno, če ciljate na odpravljanje napak v sestavu GPE.


Program lahko sestavite na več načinov. Možnosti 1 in 2 uporabljata pravočasno prevajanje (JIT), ki je priporočljivo za odpravljanje napak vample. Možnost 3 uporablja prevajanje vnaprej (AOT).

  • Možnost 1. Uporabite lahko CMake file za konfiguracijo in izdelavo aplikacije. Glejte na PREBERI ME od sample za navodila.

OPOMBA CMake file opremljen s sample že prenaša zastavice -g -O0.


  • Možnost 2. Za prevajanje array-transform.cpp sample aplikacijo brez CMake file, izdajte naslednje ukaze:

icpx -fsycl -g -O0 pretvorba matrike.cpp -o pretvorba matrike

Če prevajanje in povezovanje potekata ločeno, ohranite zastavice -g -O0 v koraku povezave. Korak povezovanja je, ko icpx te zastavice prevede, da jih med izvajanjem posreduje prevajalniku naprave. nprample:

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

  • 3. možnost. Uporabite lahko prevajanje AOT, da se izognete daljšim časom prevajanja JIT med izvajanjem. Prevajanje JIT lahko traja bistveno dlje za velika jedra pod razhroščevalnikom. Če želite uporabiti način prevajanja vnaprej:

• Za odpravljanje napak na GPE:
Določite napravo, ki jo boste uporabljali za izvajanje programa. Na primerample, -device dg2-g10 za Intel® Data Center GPU Flex 140 Graphics. Za seznam podprtih možnosti in več informacij o prevajanju AOT glejte Priročnik in referenca za razvijalce prevajalnika Intel® oneAPI DPC++.
Na primerample:

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

Predčasna kompilacija zahteva OpenCLTM Offline Compiler (OC Compiler LOC). Za več informacij si oglejte razdelek »Namestitev OpenCLTM Offline Compiler (OCLOC)« v dokumentu Navodila za namestitev.

• Za odpravljanje napak v CPE:

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

Začnite sejo odpravljanja napak

Začnite sejo odpravljanja napak:

1. Zaženite distribucijo Intel® za GDB* na naslednji način:

gdb-oneapi pretvorba polja

Videti bi morali poziv (gdb).

2. Če želite zagotoviti, da je jedro preneseno na pravo napravo, naredite naslednje korake. Ko izvedete ukaz za zagon iz poziva (gdb), posredujte procesor, gpu or pospeševalnik argument:

  • Za odpravljanje napak v CPE:

zaženi procesor

Example izhod:

[SYCL] Uporaba naprave: [CPU Intel(R) Core(TM) i7-9750H @ 2.60 GHz] iz [Intel(R) OpenCL]
  • Za odpravljanje napak na GPE:

zaženi gpu

Example izhod:

[SYCL] Uporaba naprave: [Intel(R) Data Center GPU Flex Series 140 [0x56c1]] iz [Intel(R) LevelZero]
  • Za odpravljanje napak v emulatorju FPGA:

pospeševalnik teka

Example izhod:

[SYCL] Uporaba naprave: [Intel(R) FPGA Emulation Device] iz [Intel(R) FPGA Emulation Platform for OpenCL(TM) software]

OPOMBA Parametri cpu, gpu in pospeševalnik so specifični za aplikacijo Array Transform.


3. Če želite zapreti distribucijo Intel® za GDB*:

nehati

Za vaše udobje so običajni ukazi Intel® Distribution for GDB* na voljo v Referenčni list.

Za odpravljanje napak v pretvorbi matrike sample in izvedite več o distribuciji Intel® za GDB*, sprehodite se skozi osnovne scenarije odpravljanja napak z uporabo Vadnica.

Več o tem
Dokument Opis
Vadnica: Odpravljanje napak z Intel® Distribution for GDB* Ta dokument opisuje osnovne scenarije, ki jih je treba upoštevati pri odpravljanju napak SYCL* in OpenCL z Intel® Distribution for GDB*.
Intel® Distribution for GDB* Uporabniški priročnik Ta dokument opisuje vse pogoste naloge, ki jih lahko opravite z Intel® Distribution for GDB*, in nudi potrebne tehnične podrobnosti.
Intel® Distribution for GDB* Opombe ob izdaji Opombe vsebujejo informacije o ključnih zmožnostih, novih funkcijah in znanih težavah Intel® Distribution for GDB*.
stran izdelka oneAPI Ta stran vsebuje kratko predstavitev kompletov orodij oneAPI in povezave do uporabnih virov.
Intel® Distribution for GDB* Referenčni list Ta enostranski dokument na kratko opisuje predpogoje in uporabne ukaze za Intel® Distribution for GDB*.
Jacobi Sample Ta majhna aplikacija SYCL* ima dve različici: z napakami in s popravki. Uporabite sample za izvajanje odpravljanja napak aplikacij z Intel® Distribution for GDB*.
Obvestila in zavrnitve odgovornosti

Intelove tehnologije morda zahtevajo aktivirano strojno, programsko opremo ali storitve.

Noben izdelek ali komponenta ne more biti popolnoma varna.

Stroški in rezultati se lahko razlikujejo.

© Intel Corporation. Intel, logotip Intel in druge znamke Intel so blagovne znamke družbe Intel Corporation ali njenih podružnic. Druga imena in blagovne znamke se lahko zahtevajo kot last drugih.

Ta dokument ne podeljuje nobene licence (izrecne ali implicitne, z ustavitvijo ali kako drugače) za kakršne koli pravice intelektualne lastnine.

Opisani izdelki lahko vsebujejo oblikovne pomanjkljivosti ali napake, znane kot errata, zaradi katerih lahko izdelek odstopa od objavljenih specifikacij. Trenutne karakterizirane napake so na voljo na zahtevo.

Intel zavrača vsa izrecna in implicitna jamstva, vključno brez omejitev z implicitnimi jamstvi glede primernosti za prodajo, primernosti za določen namen in nekršitve, kot tudi vsa jamstva, ki izhajajo iz poteka delovanja, poteka poslovanja ali uporabe v trgovini.

OpenCL in logotip OpenCL sta blagovni znamki družbe Apple Inc., ki ju uporablja Khronos z dovoljenjem.

Dokumenti / Viri

distribucija intel za GDB na gostitelju OS Linux [pdf] Uporabniški priročnik
Distribucija za GDB na gostitelju OS Linux, GDB na gostitelju OS Linux, gostitelju OS Linux, gostitelju OS, gostitelju

Reference

Pustite komentar

Vaš elektronski naslov ne bo objavljen. Obvezna polja so označena *