Kòmanse ak Intel® Distribisyon pou GDB* sou Linux* OS Host
Kòmanse itilize Intel® Distribution pou GDB* pou aplikasyon pou debogaj. Swiv enstriksyon ki anba yo pou mete kanpe debogaj la pou deboge aplikasyon yo ak nwayo debake nan aparèy CPU ak GPU.
Intel® Distribution for GDB* disponib kòm yon pati nan Intel® oneAPI Base Toolkit. Pou plis enfòmasyon sou twous zouti oneAPI, vizite sit la paj pwodwi.
Vizite la Nòt lage paj pou enfòmasyon sou kapasite kle yo, nouvo karakteristik, ak pwoblèm li te ye.
Ou ka itilize yon SYCL* sample kòd, Array Transform, pou kòmanse ak Intel® Distribution for GDB*. S laample pa jenere erè epi tou senpleman ilistre karakteristik debugger. Kòd la trete eleman nan etalaj la opinyon depann de si yo menm oswa enpè epi li pwodui yon etalaj pwodiksyon. Ou ka itilize sampdebug sou tou de CPU oswa GPU, espesifye aparèy la chwazi atravè yon agiman liy lòd. Remake byen ke debogaj GPU ka mande pou de sistèm ak konfigirasyon adisyonèl pou debogaj aleka.
Prekondisyon
Si ou vize debogaj sou GPU, enstale dènye chofè GPU yo epi konfigirasyon sistèm ou a pou itilize yo. Gade nan Gid enstalasyon Intel® oneAPI Toolkits pou Linux* OS. Swiv enstriksyon yo Enstale Intel GPU Drivers pou enstale chofè GPU ki matche ak sistèm ou an.
Anplis de sa, ou ka enstale yon ekstansyon pou Visual Studio Code * pou debogaj GPU ak Intel® Distribution for GDB *. Gade nan Sèvi ak Kòd Visual Studio ak Gid Intel® oneAPI Toolkits.
Mete kanpe debogaj GPU la
Pou mete kanpe debugger GPU a, ou dwe gen aksè rasin.
REMAK Pandan debogaj nwayo a, GPU a sispann epi pwodiksyon videyo a pa disponib sou machin sib ou a. Poutèt sa, ou pa ka debug GPU nan sistèm sib la si kat GPU sistèm lan tou itilize pou pwodiksyon grafik. Nan ka sa a, konekte ak machin nan atravè ssh.
1. Si ou vize debogaj sou GPU, yon Kernel Linux ki sipòte debogaj GPU nesesè.
a. Swiv enstriksyon yo nan Lojisyèl Intel® pou kapasite jeneral GPU pou telechaje epi enstale chofè ki nesesè yo.
b. Pèmèt sipò debug i915 nan Kernel:
a. Louvri yon tèminal.
b. Louvri grub la file nan /etc/default.
c. Nan grub la file, jwenn liy lan GRUB_CMDLINE_LINUX_DEFAULT="".
d. Antre tèks sa a ant site yo (""):
i915.debug_eu=1
REMAK Pa default, chofè GPU a pa pèmèt chaj travay yo kouri sou yon GPU pi lontan pase yon sèten kantite tan. Chofè a touye chaj travay ki dire lontan yo lè li reset GPU a pou anpeche pann. Mekanis hangcheck chofè a andikape si aplikasyon an ap kouri anba debogaj la. Si w gen plan pou kouri tan calcul workloads tou san yon débogueur te atache, konsidere aplike GPU: Enfim Hangcheck pa ajoute
i915.enable_hangcheck=0
menm bagay la tou GRUB_CMDLINE_LINUX_DEFAULT liy.
c. Mete ajou GRUB pou chanjman sa yo pran efè:
sudo update-grub
d. Rdemare.
2. Mete anviwònman CLI ou a lè w chèche script setvars ki sitiye nan rasin enstalasyon bwat zouti ou a.
Linux (sudo):
sous /opt/intel/oneapi/setvars.sh
Linux (itilizatè):
sous ~/intel/oneapi/setvars.sh
3. Enstalasyon anviwònman
Sèvi ak varyab anviwònman sa yo pou pèmèt sipò debogaj pou Intel® oneAPI Nivo Zewo:
ekspòte ZET_ENABLE_PROGRAM_DEBUGGING=1
ekspòte IGC_EnableGTLocationDebugging=1
4. Tcheke sistèm lan
Lè tout bagay pare, tanpri kouri lòd sa a pou konfime ke konfigirasyon sistèm lan serye:
python3 /path/to/intel/oneapi/diagnostics/latest/diagnostics.py –filter debugger_sys_check -force
Yon pwodiksyon posib nan yon sistèm byen configuré se jan sa a:
…
Tcheke rezilta yo:
==================================================== ================================
Tcheke non: debugger_sys_check
Deskripsyon: Chèk sa a verifye si anviwònman an pare pou itilize gdb (Distribution Intel(R) pou GDB*).
Estati rezilta: PASE
Debugger jwenn.
libipt jwenn.
libiga jwenn.
i915 debug pèmèt.
Varyab anviwònman yo kòrèk. ==================================================== =================================
1 TCHEKE: 1 PASE, 0 ECHÈ, 0 AVÈTISMAN, 0 ERÈ
Pwodiksyon konsole file: /path/to/logs/diagnostics_filter_debugger_sys_check_force.txt JSON pwodiksyon file: /path/to/diagnostics/logs/diagnostics_filter_debugger_sys_check_force.json …
Konpile Pwogram nan ak Enfòmasyon Debug
Ou ka itilize sample pwojè, Array Transform, pou byen vit kòmanse ak debogaj aplikasyon an.
1. Pou jwenn s laample, chwazi nenpòt nan fason sa yo:
- Sèvi ak oneAPI CLI S laamples Browser pou chwazi Array Transform nan kategori Kòmanse.
- Telechaje soti nan GitHub*.
2. Navige nan src nan s laamppwojè a:
cd etalaj-transfòme/src
3. Konpile aplikasyon an pa pèmèt enfòmasyon debug la (-g drapo) ak fèmen optimize (-O0 drapo).
Enfimite optimize rekòmande pou yon anviwònman debug ki estab ak egzat. Sa a ede evite konfizyon ki te koze pa chanjman nan kòd la apre optimize konpilatè.
REMAK Ou ka toujou konpile pwogram nan ak optimize pèmèt (-O2 drapo), ki ka itil si ou vize a debogaj asanble GPU.
Ou ka konpile pwogram nan nan plizyè fason. Opsyon 1 ak 2 yo sèvi ak konpilasyon jis nan tan (JIT), ki rekòmande pou debogaj s la.ample. Opsyon 3 itilize konpilasyon davans (AOT).
- Opsyon 1. Ou ka itilize CMake la file konfigirasyon ak bati aplikasyon an. Gade nan README nan s laample pou enstriksyon yo.
REMAK CMake la file bay ak s laample deja pase -g -O0 drapo yo.
- Opsyon 2. Pou konpile array-transform.cpp sample aplikasyon san CMake la file, bay kòmandman sa yo:
icpx -fsycl -g -O0 array-transform.cpp -o array-transform
Si konpilasyon ak lyen yo fè separeman, kenbe drapo -g -O0 yo nan etap lyen an. Etap lyen an se lè icpx tradwi drapo sa yo pou yo pase nan konpilatè aparèy la nan tan an. Egzample:
icpx -fsycl -g -O0 -c array-transform.cpp
icpx -fsycl -g -O0 etalaj-transfòm.o -o etalaj-transfòme
- Opsyon 3. Ou ka itilize konpilasyon AOT pou fè pou evite tan konpilasyon JIT ki pi long nan lè a. Konpilasyon JIT ka pran anpil tan pou gwo nwayo anba debogaj la. Pou itilize mòd konpilasyon alavans:
• Pou debogaj sou yon GPU:
Espesifye aparèy ou pral itilize pou ekzekisyon pwogram lan. Pou egzanpample, -device dg2-g10 pou Intel® Data Center GPU Flex 140 Graphics. Pou lis opsyon ki sipòte yo ak plis enfòmasyon sou konpilasyon AOT, al gade nan Intel® oneAPI DPC++ Gid ak Referans pou Devlopè Konpilatè.
Pou egzanpample:
icpx -fsycl -g -O0 -fsycl-targets=spir64_gen -Xs "-device dg2-g10" array-transform.cpp -o arraytransform
Konpilasyon Ahead-of-Time mande pou OpenCLTM Offline Compiler (OC Compiler LOC). Pou plis enfòmasyon, gade seksyon "Enstale OpenCLTM Offline Compiler (OCLOC)" nan Gid enstalasyon.
• Pou debogaj sou yon CPU:
icpx -fsycl -g -O0 -fsycl-targets=spir64_x86_64 array-transform.cpp -o array-transform
Kòmanse yon Sesyon Debug
Kòmanse sesyon debug la:
1. Kòmanse Intel® Distribisyon pou GDB* jan sa a:
gdb-oneapi etalaj-transfòme
Ou ta dwe wè èd memwa (gdb).
2. Pou asire w ke nwayo a debake sou aparèy dwat la, fè etap sa yo. Lè ou egzekite lòd la kouri soti nan (gdb) èd memwa, pase a CPU, gpu or akseleratè agiman:
- Pou debogaj sou CPU a:
kouri CPU
Example pwodiksyon:
[SYCL] Sèvi ak aparèy: [Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz] soti nan [Intel(R) OpenCL]- Pou debogaj sou GPU a:
kouri gpu
Example pwodiksyon:
[SYCL] Sèvi ak aparèy: [Intel(R) Data Center GPU Flex Series 140 [0x56c1]] soti nan [Intel(R) LevelZero]- Pou debogaj sou FPGA-emulator la:
kouri akseleratè
Example pwodiksyon:
[SYCL] Sèvi ak aparèy: [Intel(R) FPGA Emulation Device] soti nan [Intel(R) FPGA Emulation Platform for OpenCL(TM) software]REMAK Paramèt CPU, gpu, ak akseleratè yo espesifik pou aplikasyon Array Transform la.
3. Pou kite Intel® Distribution pou GDB*:
kite
Pou konvenyans ou, yo bay kòmandman Intel® Distribution pou GDB* komen nan la Fèy referans.
Pou déboguer Array Transform sample epi aprann plis sou Intel® Distribution for GDB*, mache nan senaryo debogaj debaz lè l sèvi avèk la Tutorial.
Aprann Plis
Dokiman | Deskripsyon |
Tutorial: Debogaj ak Intel® Distribution pou GDB* | Dokiman sa a dekri senaryo debaz yo pou swiv pandan y ap debogaj SYCL* ak OpenCL ak Intel® Distribution for GDB*. |
Intel® Distribution for GDB* Gid itilizatè | Dokiman sa a dekri tout travay komen ou ka ranpli ak Intel® Distribution for GDB* epi li bay detay teknik ki nesesè yo. |
Nòt lage Intel® Distribution for GDB* | Nòt yo genyen enfòmasyon sou kapasite kle yo, nouvo karakteristik, ak pwoblèm li te ye nan Intel® Distribution for GDB*. |
Paj pwodwi oneAPI | Paj sa a gen yon ti entwodiksyon sou seri zouti oneAPI ak lyen ki mennen nan resous itil. |
Fèy referans Intel® Distribisyon pou GDB* | Dokiman yon paj sa a dekri yon ti tan sou kondisyon Intel® Distribution for GDB* ak kòmandman itil. |
Jacobi Sample | Ti aplikasyon SYCL* sa a gen de vèsyon: bugged ak fiks. Sèvi ak samppou fè egzèsis debogaj aplikasyon ak Intel® Distribution for GDB*. |
Avi ak Limit responsabilite nou
Intel teknoloji ka mande pou pèmèt pyès ki nan konpitè, lojisyèl oswa sèvis deklanchman.
Pa gen okenn pwodwi oswa eleman ki ka absoliman an sekirite.
Depans ou yo ak rezilta yo ka varye.
© Intel Corporation. Intel, logo Intel ak lòt mak Intel yo se mak komèsyal Intel Corporation oswa filiales li yo. Lòt non ak mak yo ka reklame kòm pwopriyete lòt moun.
Pa gen okenn lisans (eksprime oswa implicite, pa estoppel oswa otreman) nan okenn dwa pwopriyete entelektyèl yo akòde pa dokiman sa a.
Pwodwi yo dekri yo ka genyen defo konsepsyon oswa erè ke yo rekonèt kòm errata ki ka lakòz pwodwi a devye ak espesifikasyon pibliye. Aktyèl karakterize errata yo disponib sou demann.
Intel rejte tout garanti eksprime ak implicite, ki gen ladan san limitasyon, garanti implicite nan komèsan, kondisyon fizik pou yon objektif patikilye, ak ki pa vyolasyon, osi byen ke nenpòt garanti ki soti nan kou nan pèfòmans, kou nan komès, oswa itilizasyon nan komès.
OpenCL ak logo OpenCL yo se mak komèsyal Apple Inc. Khronos itilize avèk pèmisyon.
Dokiman / Resous
![]() |
Intel Distribisyon pou GDB sou Linux OS Host [pdfGid Itilizatè Distribisyon pou GDB sou Linux OS Host, GDB sou Linux OS Host, Linux OS Host, OS Host, Host |