Qalisa nge-Intel® Distribution ye-GDB* ku-Linux* OS Host

Qala ukusebenzisa i-Intel® Distribution ye-GDB* ekulungiseni izinhlelo zokusebenza. Landela imiyalelo engezansi ukuze umise isilungisi-maphutha ukuze silungise izinhlelo zokusebenza ngama-kernels alayishwe kumadivayisi we-CPU kanye ne-GPU.

I-Intel® Distribution ye-GDB* iyatholakala njengengxenye ye-Intel® oneAPI Base Toolkit. Ukuze uthole ulwazi olwengeziwe ngamakhithi amathuluzi e-oneAPI, vakashela ku ikhasi lomkhiqizo.

Vakashela i- Khipha Amanothi ukuze uthole ulwazi mayelana namakhono abalulekile, izici ezintsha, nezindaba ezaziwayo.

Ungasebenzisa i-SYCL* sample code, Array Transform, ukuze uqalise nge-Intel® Distribution ye-GDB*. I-sampi-le ayikhiqizi amaphutha futhi imane ibonise izici zokususa iphutha. Ikhodi icubungula izici zamalungu afanayo okokufaka kuye ngokuthi ziyalingana noma ziyinqaba futhi ikhiqiza amalungu afanayo okukhiphayo. Ungasebenzisa i-sample ukulungisa iphutha kukho kokubili i-CPU noma i-GPU, icacisa idivayisi ekhethiwe ngokusebenzisa impikiswano yomugqa womyalo. Qaphela nokho ukuthi ukulungisa iphutha kwe-GPU kungase kudinge amasistimu amabili kanye nokucushwa okwengeziwe kokususa iphutha kude.

Okudingekayo

Uma uhlose ukulungisa iphutha ku-GPU, faka abashayeli be-GPU bakamuva futhi ulungiselele isistimu yakho ukuthi iwasebenzise. Bheka ku- I-Intel® oneAPI Toolkits Installation Guide ye-Linux* OS. Landela imiyalelo Faka Abashayeli be-Intel GPU ukufaka abashayeli be-GPU abafana nesistimu yakho.

Ukwengeza, ungakwazi ukufaka isandiso se-Visual Studio Code* ukuze ulungise iphutha le-GPU nge-Intel® Distribution ye-GDB*. Bheka ku- Ukusebenzisa Ikhodi Yesitudiyo Esibonakalayo ene-Intel® oneAPI Toolkits Guide.

Setha i-GPU Debugger

Ukuze usethe i-debugger ye-GPU, kufanele ube nokufinyelela kwezimpande.


QAPHELA Phakathi nokulungisa iphutha le-kernel, i-GPU iyamiswa futhi ukuphuma kwevidiyo akutholakali emshinini wakho oqondiwe. Ngenxa yalokhu, awukwazi ukususa iphutha ku-GPU ohlelweni oluqondiwe uma ikhadi le-GPU lesistimu liphinde lisetshenziswe ekukhishweni kwesithombe. Kulokhu, xhuma emshinini nge-ssh.


1. Uma uhlose ukulungisa iphutha ku-GPU, i-Linux Kernel esekela ukulungisa iphutha kwe-GPU iyadingeka.

a. Landela imiyalelo kokuthi Isofthiwe ye-Intel® yezinjongo ezijwayelekile zamakhono e-GPU ukulanda nokufaka abashayeli abadingekayo.
b. Nika amandla usekelo lwe-i915 lokususa iphutha ku-Kernel:

a. Vula itheminali.
b. Vula i-grub file ku-/etc/default.
c. Esigangeni file, thola umugqa GRUB_CMDLINE_LINUX_DEFAULT=””.
d. Faka umbhalo olandelayo phakathi kwezingcaphuno (“”):

i915.debug_eu=1


QAPHELA Ngokuzenzakalelayo, umshayeli we-GPU akakuvumeli ukugcwala komsebenzi ukuthi kusebenze ku-GPU isikhathi eside kunesikhathi esithile. Umshayeli ubulala umthwalo onjalo osebenza isikhathi eside ngokusetha kabusha i-GPU ukuvimbela ukulengiswa. I-hangcheck mechanism yomshayeli ivaliwe uma uhlelo lokusebenza lusebenza ngaphansi kwe-debugger. Uma uhlela ukusebenzisa imithwalo yemisebenzi emide ngaphandle kokuthi kufakwe isilungisi sephutha, cabanga ukufaka isicelo I-GPU: Khubaza i-Hangcheck ngokungeza

i915.enable_hangcheck=0

ngokufanayo GRUB_CMDLINE_LINUX_DEFAULT umugqa.

c. Buyekeza i-GRUB ukuze lezi zinguquko zisebenze:

sudo update-grub

d. Qalisa kabusha.

2. Setha indawo yakho ye-CLI ngokuthola umbhalo we-setvars otholakala empandeni yokufakwa kwekhithi yakho yamathuluzi.

I-Linux (sudo):

umthombo /opt/intel/oneapi/setvars.sh

I-Linux (umsebenzisi):

umthombo ~/intel/oneapi/setvars.sh

3. Setha indawo
Sebenzisa okuguquguqukayo kwemvelo okulandelayo ukuze unike amandla usekelo lwe-debugger lwe-Intel® oneAPI Level Zero:

thekelisa i-ZET_ENABLE_PROGRAM_DEBUGGING=1
thekelisa IGC_EnableGTLocationDebugging=1

4. Ukuhlola uhlelo
Uma konke sekumi ngomumo, sicela usebenzise umyalo olandelayo ukuze uqinisekise ukuthi ukucushwa kwesistimu kuthembekile:

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

Ukukhishwa okungenzeka kwesistimu emiswe kahle imi kanje:


Ihlola imiphumela:
================================================= ===============================
Hlola igama: debugger_sys_check
Incazelo: Lokhu kuhlola kuqinisekisa ukuthi imvelo ikulungele yini ukusebenzisa i-gdb (Intel(R) Distribution for GDB*).
Isimo somphumela: PASS
I-debugger itholakele.
i-libipt itholakele.
i-libiga itholakele.
i-i915 debug inikwe amandla.
Okuguquguqukayo kwemvelo kulungile. ================================================= ================================

IMITHI 1: 1 UKUDLULA, 0 KWEHLULEKA, 0 IZIXWAYISO, 0 AMAPHUTHA

Okukhiphayo kwekhonsoli file: /path/to/logs/diagnostics_filter_debugger_sys_check_force.txt okukhiphayo kwe-JSON file: /path/to/diagnostics/logs/diagnostics_filter_debugger_sys_check_force.json …

Hlanganisa Uhlelo Ngolwazi Lokususa iphutha

Ungasebenzisa i-sample phrojekthi, i-Array Transform, ukuze uqalise ngokushesha nge-debugger yohlelo lokusebenza.

1. Ukuze uthole i-sample, khetha noma iyiphi kulezi zindlela ezilandelayo:

2. Zulazulela ku-src ye-sample phrojekthi:

I-cd-array-transform/src

3. Hlanganisa uhlelo lokusebenza ngokunika amandla ulwazi lokususa iphutha (i--g flag) futhi uvale ukulungiselelwa (ifulegi -O0).
Ukukhubaza ukulungiselelwa kuyanconywa endaweni ezinzile nenembile yokususa iphutha. Lokhu kusiza ukugwema ukudideka okubangelwa izinguquko zekhodi ngemva kokuthuthukiswa komhlanganisi.


QAPHELA Usengahlanganisa uhlelo ngokwenza ukulungiselelwa kunikwe amandla (ifulegi -O2), okungaba usizo uma uhlose ukulungisa iphutha komhlangano we-GPU.


Ungakwazi ukuhlanganisa uhlelo ngezindlela eziningana. Izinketho 1 no-2 zisebenzisa ukuhlanganiswa kwe-just-in-time (JIT), okunconywayo ukulungisa iphuthaample. Inketho yesi-3 isebenzisa ukuhlanganiswa kwangaphambili kwesikhathi (AOT).

  • Inketho 1. Ungasebenzisa i-CMake file ukulungisa nokwakha uhlelo lokusebenza. Bheka ku- FUNDA kwe sample for imiyalelo.

QAPHELA I-CMake file kuhlinzekwe nge-sampu-le usevele wedlulisa amafulegi -g -O0.


  • Inketho 2. Ukuhlanganisa i-array-transform.cpp sample isicelo ngaphandle kwe-CMake file, khipha imiyalo elandelayo:

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

Uma ukuhlanganisa nokuxhuma kwenziwa ngokwehlukana, gcina -g -O0 amafulegi esinyathelweni sesixhumanisi. Isinyathelo sesixhumanisi yilapho i-icpx ihumusha lawa mafulegi ukuthi adluliselwe kusihlanganisi sedivayisi ngesikhathi sokusebenza. Example:

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

  • Inketho 3. Ungasebenzisa ukuhlanganiswa kwe-AOT ukuze ugweme izikhathi ezinde zokuhlanganisa i-JIT ngesikhathi sokusebenza. Ukuhlanganiswa kwe-JIT kungathatha isikhathi eside kakhulu kuma-kernels amakhulu ngaphansi kwe-debugger. Ukuze usebenzise imodi yokuhlanganisa yangaphambi kwesikhathi:

• Ngokulungisa iphutha ku-GPU:
Cacisa idivayisi ozoyisebenzisela ukwenza uhlelo. Okwesiboneloample, -device dg2-g10 ye-Intel® Data Center GPU Flex 140 Graphics. Ukuze uthole uhlu lwezinketho ezisekelwayo nolwazi olwengeziwe ngokuhlanganiswa kwe-AOT, bheka ku I-Intel® oneAPI DPC++ Compiler Developer Guide kanye nereferensi.
Okwesiboneloample:

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

Ukuhlanganiswa Kwesikhathi Esengaphambili kudinga I-OpenCLTM Offline Compiler (OC Compiler LOC). Ukuze uthole ulwazi olwengeziwe, bheka isigaba "Faka I-OpenCLTM Offline Compiler (OCLOC)" ye Umhlahlandlela wokufaka.

• Ngokulungisa iphutha ku-CPU:

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

Qala Iseshini Yokususa iphutha

Qala iseshini yokususa iphutha:

1. Qala i-Intel® Distribution ye-GDB* kanje:

gdb-oneapi array-transform

Kufanele ubone (gdb) ukwaziswa.

2. Ukuqinisekisa ukuthi i-kernel ilayishiwe kudivayisi efanele, yenza lezi zinyathelo ezilandelayo. Uma ukhipha umyalo wokugijima kusuka ku-(gdb) ngokushesha, dlulisa ifayela cpu, gpu or i-accelerator ukuphikisana:

  • Ukulungisa iphutha ku-CPU:

gijima cpu

Exampokukhiphayo:

[SYCL] Isebenzisa idivayisi: [Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz] kusuka ku-[Intel(R) OpenCL]
  • Ngokulungisa iphutha ku-GPU:

sebenzisa gpu

Exampokukhiphayo:

[SYCL] Isebenzisa idivayisi: [Intel(R) Data Center GPU Flex Series 140 [0x56c1]] kusukela ku-[Intel(R) LevelZero]
  • Ukulungisa iphutha kusifanisi se-FPGA:

sebenzisa i-accelerator

Exampokukhiphayo:

[SYCL] Isebenzisa idivayisi: [Intel(R) FPGA Emulation Device] kusukela ku-[Intel(R) FPGA Emulation Platform for OpenCL(TM) software]

QAPHELA Amapharamitha we-cpu, gpu, kanye ne-accelerator aqondene nohlelo lokusebenza lwe-Array Transform.


3. Ukuze uyeke i-Intel® Distribution ye-GDB*:

yeka

Ukuze kube lula kuwe, imiyalo evamile ye-Intel® Distribution ye-GDB* inikezwa ku- Ishidi Lereferensi.

Ukulungisa iphutha le-Array Transform sample futhi ufunde kabanzi mayelana ne-Intel® Distribution ye-GDB*, hamba ezimeni eziyisisekelo zokususa iphutha usebenzisa Okokufundisa.

Funda kabanzi
Idokhumenti Incazelo
Okokufundisa: Ukulungisa iphutha nge-Intel® Distribution ye-GDB* Lo mbhalo uchaza izimo eziyisisekelo okufanele uzilandele ngenkathi ususa iphutha i-SYCL* kanye ne-OpenCL nge-Intel® Distribution ye-GDB*.
I-Intel® Distribution ye-GDB* Umhlahlandlela Womsebenzisi Lo mbhalo uchaza yonke imisebenzi evamile ongayiqedela nge-Intel® Distribution ye-GDB* futhi inikeza imininingwane yobuchwepheshe edingekayo.
I-Intel® Distribution ye-GDB* Amanothi okukhishwa Amanothi aqukethe ulwazi mayelana namakhono abalulekile, izici ezintsha, nezindaba ezaziwayo ze-Intel® Distribution ye-GDB*.
OneAPI Product Page Leli khasi liqukethe isingeniso esifushane sekhithi yamathuluzi ye-oneAPI nezixhumanisi zezinsiza eziwusizo.
I-Intel® Distribution ye-GDB* Reference Sheet Lo mbhalo wekhasi elilodwa uchaza kafushane I-Intel® Distribution ye-GDB* kanye nemiyalo ewusizo.
Jacob Sample Lolu hlelo lokusebenza oluncane lwe-SYCL* lunezinguqulo ezimbili: ezinephutha nezilungisiwe. Sebenzisa i-sample ukusebenzisa uhlelo lokulungisa iphutha nge-Intel® Distribution ye-GDB*.
Izaziso Nemishwana Yokuzikhipha Emthwalweni

Ubuchwepheshe be-Intel bungadinga ihadiwe enikwe amandla, isofthiwe noma isevisi isebenze.

Awukho umkhiqizo noma ingxenye engavikeleka ngokuphelele.

Izindleko zakho nemiphumela ingahluka.

© Intel Corporation. I-Intel, ilogo ye-Intel, nezinye izimpawu ze-Intel yizimpawu zokuthengisa ze-Intel Corporation noma izinkampani ezingaphansi kwayo. Amanye amagama namabhrendi angafunwa njengempahla yabanye.

Ayikho ilayisensi (eshiwo noma eshiwo, nge-estoppel noma ngenye indlela) yanoma imaphi amalungelo empahla yengqondo enikezwa yile dokhumenti.

Imikhiqizo echazwe ingase iqukathe ukonakala kwedizayini noma amaphutha aziwa ngokuthi i-errata angabangela umkhiqizo ukuthi uphambuke ekucacisweni okushicilelwe. Izinkinga zamanje ezinezimpawu ziyatholakala ngesicelo.

I-Intel iyazilahla zonke iziqinisekiso ezicacile nezicatshangelwayo, okuhlanganisa ngaphandle komkhawulo, iziqinisekiso ezishiwo zokuthengiselana, ukufaneleka kwenjongo ethile, nokungaphuli umthetho, kanye nanoma yisiphi isiqinisekiso esivela ngenxa yokusebenza, inkambo yokuthengisa, noma ukusetshenziswa kwezohwebo.

I-OpenCL kanye nelogo ye-OpenCL yizimpawu zokuthengisa ze-Apple Inc. ezisetshenziswa ngemvume ka-Khronos.

Amadokhumenti / Izinsiza

Intel Distribution ye-GDB ku-Linux OS Host [pdf] Umhlahlandlela Womsebenzisi
Ukusatshalaliswa kwe-GDB ku-Linux OS Host, i-GDB ku-Linux OS Host, i-Linux OS Host, i-OS Host, iHost

Izithenjwa

Shiya amazwana

Ikheli lakho le-imeyili ngeke lishicilelwe. Izinkambu ezidingekayo zimakiwe *