Tanga neIntel® Distribution yeGDB* paLinux* OS Host
Tanga kushandisa Intel® Distribution yeGDB* yekugadzirisa maapplication. Tevedza mirairo iri pazasi kuti umise debugger kugadzirisa maapplication ane kernels akaiswa kuCPU neGPU zvishandiso.
Intel® Distribution yeGDB* inowanikwa sechikamu cheIntel® oneAPI Base Toolkit. Kuti uwane rumwe ruzivo nezve oneAPI toolkits, shanyira iyo chigadzirwa peji.
Visit the Release Notes peji reruzivo nezve akakosha kugona, maficha matsva, uye zvinozivikanwa nyaya.
Unogona kushandisa SYCL* sample kodhi, Array Shandura, kuti utange neIntel® Distribution yeGDB*. The sample haigadziri zvikanganiso uye inongoratidzira debugger maficha. Iyo kodhi inobata zvinhu zveiyo yekuisa array zvichienderana nekuti ivo vakatota kana kusanzwisisika uye inogadzira inobuda array. Unogona kushandisa sample kugadzirisa pane ese CPU kana GPU, ichitsanangura yakasarudzwa mudziyo kuburikidza nekuraira mutsara nharo. Ziva kunyangwe kuti GPU debugging ingangoda maviri masisitimu uye imwe gadziriso yekubvisa kure kure.
Prerequisites
Kana iwe uchivavarira kugadzirisa paGPU, isa madhiraivha eGPU achangoburwa uye gadzirisa system yako kuti uishandise. Tarisa kune Intel® oneAPI Toolkits Installation Guide yeLinux* OS. Tevedzera mirairo Isa Intel GPU Drivers kuisa madhiraivha eGPU anoenderana nehurongwa hwako.
Pamusoro pezvo, unogona kuisa yekuwedzera yeVisual Studio Code* yekubvisa GPU neIntel® Distribution yeGDB*. Tarisa kune Uchishandisa Visual Studio Code ine Intel® oneAPI Toolkits Guide.
Gadzira iyo GPU Debugger
Kuti umise iyo GPU debugger, unofanirwa kuve nemidzi yekuwana.
CHERECHEDZA Munguva yekernel debugging, iyo GPU inomiswa uye vhidhiyo inobuda haiwanikwe pamushini wako waunoda. Nekuda kweizvi, haugone kugadzirisa iyo GPU kubva kune inotarirwa sisitimu kana iyo GPU kadhi yehurongwa ichishandiswawo kuburitsa graphical. Muchiitiko ichi, batanidza kumuchina kuburikidza ne ssh.
1. Kana iwe uchivavarira kugadzirisa paGPU, Linux Kernel inotsigira GPU debugging inodiwa.
a. Tevedzera mirairo pa Intel® software yezvakawanda chinangwa GPU kugona kurodha uye kuisa madhiraivha anodiwa.
b. Gonesa i915 debug rutsigiro muKernel:
a. Vhura terminal.
b. Vhura grub file mu /etc/default.
c. In the grub file, tsvaga mutsetse GRUB_CMDLINE_LINUX_DEFAULT=””.
d. Isa mashoko anotevera pakati pezvakatorwa (“”):
i915.debug_eu=1
CHERECHEDZA Nekumisikidza, mutyairi weGPU haatenderi mitoro yebasa kuti imhanye paGPU kwenguva yakareba kupfuura imwe nguva. Mutyairi anouraya mabasa akareba akadaro nekugadzirisa zvakare GPU kudzivirira kusungirirwa. Iyo hangcheck mechanism yemutyairi yakavharwa kana application iri kushanda pasi pedebugger. Kana iwe ukaronga kumhanyisa kureba komputa basa zvakare pasina debugger inosungirirwa, funga kunyorera GPU: Dzima Hangcheck nekuwedzera
i915.enable_hangcheck=0
zvakafanana GRUB_CMDLINE_LINUX_DEFAULT mutsetse.
c. Gadziridza GRUB kuti shanduko idzi dziite:
sudo update-grub
d. Reboot.
2. Gadzirisa yako CLI nharaunda nekutsvaga iyo setvars script iri mumudzi wekumisikidza kwako kit.
Linux (sudo):
kunobva /opt/intel/oneapi/setvars.sh
Linux (mushandisi):
kwakabva ~/intel/oneapi/setvars.sh
3. Setup nharaunda
Shandisa zvinotevera nharaunda kugonesa debugger rutsigiro rweIntel® oneAPI Level Zero:
kunze ZET_ENABLE_PROGRAM_DEBUGGING=1
kunze IGC_EnableGTLocationDebugging=1
4. System check
Kana zvese zvagadzirira, ndapota mhanya unotevera kuraira kuti uone kuti iyo sisitimu yekumisikidza yakavimbika:
python3 /path/to/intel/oneapi/diagnostics/latest/diagnostics.py -sefa debugger_sys_check -force
Iyo inogona kubuda yeakanyatso configured system ndeiyi inotevera:
…
Tarisa mhinduro:
================================================= ===============================
Tarisa zita: debugger_sys_check
Tsanangudzo: Cheki iyi inosimbisa kana nharaunda yakagadzirira kushandisa gdb (Intel(R) Distribution yeGDB*).
Chimiro chemhedzisiro: PASS
Debugger yawanikwa.
libipt yakawanikwa.
libiga found.
i915 debug inogoneswa.
Zvakasiyana-siyana zvezvakatipoteredza ndizvozvo. ================================================= ================================
1 CHECK: 1 PASS, 0 FAIL, 0 WARNINGS, 0 zvikanganiso
Console kubuda file: /path/to/logs/diagnostics_filter_debugger_sys_check_force.txt JSON kubuda file: /path/to/diagnostics/logs/diagnostics_filter_debugger_sys_check_force.json …
Nyora Chirongwa neDebug Ruzivo
Unogona kushandisa sample purojekiti, Array Shandura, kukurumidza kutanga nedebugger yekushandisa.
1. Kuti uwane sample, sarudza chero ipi yeiyi nzira dzinotevera:
- Shandisa imwe API CLI Samples Browser kusarudza Array Shandura kubva paKutanga chikamu.
- Dhawunirodha kubva GitHub*.
2. Enda kune src ye sampLe project:
cd array-transform/src
3. Unganidza iyo application nekugonesa iyo debug info (-g mureza) uye nekudzima optimizations (-O0 mureza).
Kudzima optimization inokurudzirwa kune yakagadzikana uye yakarurama debug nharaunda. Izvi zvinobatsira kudzivirira kuvhiringidzika kunokonzerwa nekuchinja kune kodhi mushure mekugadzirisa compiler.
CHERECHEDZA Iwe uchiri kukwanisa kuunganidza chirongwa ne optimization inogoneswa (-O2 mureza), iyo inogona kubatsira kana iwe uchivavarira kuGPU gungano debugging.
Iwe unogona kuunganidza purogiramu nenzira dzakawanda. Sarudzo 1 uye 2 shandisa just-in-time (JIT) kuunganidzwa, inokurudzirwa kugadzirisa s.ample. Sarudzo 3 inoshandisa kumberi-kwenguva (AOT) kuunganidzwa.
- Sarudzo 1. Unogona kushandisa CMake file kugadzirisa uye kuvaka application. Tarisa kune VERENGA zve sample yemirairo.
CHERECHEDZA Iye CMake file inopiwa ne sample yatopfuura iyo -g -O0 mireza.
- Sarudzo 2. Kuunganidza array-transform.cpp sample application pasina CMake file, budisa mirairo inotevera:
icpx -fsycl -g -O0 array-transform.cpp -o array-transform
Kana kuunganidza uye kubatanidza kuchiitwa zvakasiyana, chengetedza -g -O0 mireza padanho rekubatanidza. Nhanho yekubatanidza ndeye apo icpx inoshandura mireza iyi kuti ipfuurwe kumugadziri wemudziyo panguva yekumhanya. Example:
icpx -fsycl -g -O0 -c array-transform.cpp
icpx -fsycl -g -O0 array-transform.o -o array-transform
- Sarudzo 3. Unogona kushandisa AOT kuunganidza kuti udzivise nguva yakareba yeJIT yekuunganidza panguva yekumhanya. JIT kuunganidzwa kunogona kutora zvakanyanya nguva yakareba kune mahombe kernels pasi pe debugger. Kushandisa Kumberi-kwe-Nguva yekubatanidza maitiro:
• Zvekugadzirisa paGPU:
Taura mudziyo wauchashandisa kuita chirongwa. For example, -device dg2-g10 yeIntel® Data Center GPU Flex 140 Graphics. Kuti uwane rondedzero yesarudzo dzinotsigirwa uye rumwe ruzivo nezve AOT kuunganidzwa, tarisa kune Intel® oneAPI DPC++ Compiler Developer Guide uye Reference.
For example:
icpx -fsycl -g -O0 -fsycl-targets=spir64_gen -Xs “-device dg2-g10” array-transform.cpp -o arraytransform
Pamberi-kwe-Nguva kuunganidzwa kunoda iyo OpenCLTM Offline Compiler (OC Compiler LOC). Kuti uwane rumwe ruzivo, tarisa chikamu "Isa OpenCLTM Offline Compiler (OCLOC)" che Installation Guide.
• Zvekugadzirisa paCPU:
icpx -fsycl -g -O0 -fsycl-targets=spir64_x86_64 array-transform.cpp -o array-transform
Tanga Debug Session
Tanga iyo debug session:
1. Tanga Intel® Distribution yeGDB* sezvinotevera:
gdb-oneapi array-transform
Iwe unofanirwa kuona iyo (gdb) kukurumidza.
2. Kuti uve nechokwadi chekuti kernel yadzikiswa kune chaiyo mudziyo, ita zvinotevera matanho. Paunenge uchiita iyo yekumhanya command kubva ku (gdb) kukurumidza, pfuura iyo cpu, gpu or accelerator nharo:
- Nezve debugging paCPU:
kumhanya cpu
Example output:
[SYCL] Uchishandisa mudziyo: [Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz] kubva ku [Intel(R) OpenCL]- Zvekugadzirisa paGPU:
mhanya gpu
Example output:
[SYCL] Uchishandisa mudziyo: [Intel(R) Data Center GPU Flex Series 140 [0x56c1]] kubva [Intel(R) LevelZero]- Zvekugadzirisa pane FPGA-emulator:
run accelerator
Example output:
[SYCL] Uchishandisa mudziyo: [Intel(R) FPGA Emulation Device] kubva [Intel(R) FPGA Emulation Platform ye OpenCL(TM) software]CHERECHEDZA Iyo cpu, gpu, uye accelerator paramita yakanangana neiyo Array Shandura application.
3. Kusiya Intel® Distribution yeGDB*:
quit
Kuti zvikuitire nyore, zvakajairika Intel® Distribution yeGDB* mirairo inopihwa mu Reference Sheet.
Kugadzirisa iyo Array Shandura sample uye dzidza zvakawanda nezve Intel® Distribution yeGDB*, famba nepakati pekutanga debugging mamiriro uchishandisa iyo Tutorial.
Dzidza zvimwe
Gwaro | Tsanangudzo |
Dzidziso: Kugadzirisa neIntel® Distribution yeGDB* | Gwaro iri rinotsanangura mamiriro ekutanga ekutevera uchigadzirisa SYCL* uye OpenCL neIntel® Distribution yeGDB*. |
Intel® Distribution yeGDB* Mushandisi Gwaro | Gwaro iri rinotsanangura mabasa ese akajairwa aunogona kupedza neIntel® Distribution yeGDB* uye rinopa ruzivo rwehunyanzvi hunodiwa. |
Intel® Distribution yeGDB* Release Notes | Iwo manotsi ane ruzivo nezve akakosha kugona, zvitsva zvimiro, uye zvinozivikanwa nyaya dzeIntel® Distribution yeGDB*. |
oneAPI Chigadzirwa Peji | Iri peji rine sumo pfupi pane oneAPI maturusi ekushandisa uye zvinongedzo kune zvinobatsira zviwanikwa. |
Intel® Distribution yeGDB* Reference Sheet | Gwaro repeji rimwe iri rinotsanangura muchidimbu Intel® Distribution yeGDB* zvinodiwa uye mirairo inobatsira. |
Jacobi Sample | Iyi diki SYCL* application ine mavhezheni maviri: bugged uye yakagadziriswa. Shandisa sample kuita dhizaini yekushandisa neIntel® Distribution yeGDB*. |
Zviziviso uye Disclaimer
Intel tekinoroji inogona kuda Hardware, software kana basa activation.
Hapana chigadzirwa kana chikamu chinogona kuchengetedzwa zvachose.
Mari yako nemigumisiro inogona kusiyana.
© Intel Corporation. Intel, iyo Intel logo, uye mamwe maIntel mamaki zviratidzo zveIntel Corporation kana vatsigiri vayo. Mamwe mazita nemhando anogona kunzi zvinhu zvevamwe.
Hapana rezinesi (kutaura kana kurehwa, ne estoppel kana neimwe nzira) kune chero kodzero dzepfuma yehungwaru inopihwa negwaro iri.
Zvigadzirwa zvinotsanangurwa zvinogona kunge zvine dhizaini yakakanganisika kana zvikanganiso zvinozivikanwa se errata izvo zvinogona kuita kuti chigadzirwa chibve pane zvakaburitswa. Ikozvino maitiro errata anowanikwa pakukumbira.
Intel inorambidza zvese zvinotsanangurwa uye zvinorehwa waranti, kusanganisira pasina muganho, iwo waranti inorehwa yekutengesa, kusimba kune chimwe chinangwa, uye kusatyorwa, pamwe nechero waranti inobva mukuita, kosi yekubata, kana kushandiswa mukutengesa.
OpenCL nelogo yeOpenCL zviratidzo zveApple Inc. zvinoshandiswa nemvumo naKhronos.
Zvinyorwa / Zvishandiso
![]() |
intel Distribution yeGDB paLinux OS Host [pdf] Bhuku reMushandisi Kugoverwa kweGDB paLinux OS Host, GDB paLinux OS Host, Linux OS Host, OS Host, Host |