Bẹrẹ pẹlu Pipin Intel® fun GDB* lori Lainos* OS Gbalejo
Bẹrẹ lilo Pipin Intel® fun GDB* fun awọn ohun elo ti n ṣatunṣe aṣiṣe. Tẹle awọn itọnisọna ni isalẹ lati ṣeto yokokoro lati ṣatunṣe awọn ohun elo pẹlu awọn kernels ti a kojọpọ si Sipiyu ati awọn ẹrọ GPU.
Pipin Intel® fun GDB* wa bi ara Intel® oneAPI Base Toolkit. Fun alaye diẹ sii lori awọn irinṣẹ irinṣẹ ọkanAPI, ṣabẹwo si ọja iwe.
Ṣabẹwo si Awọn akọsilẹ Tu silẹ oju-iwe fun alaye nipa awọn agbara bọtini, awọn ẹya tuntun, ati awọn ọran ti a mọ.
O le lo SYCL * sample koodu, Array Transform, lati to bẹrẹ pẹlu Intel® Distribution fun GDB *. Awọn sample ko ṣe ina awọn aṣiṣe ati ki o sapejuwe nirọrun awọn ẹya debugger. Awọn ilana koodu awọn eroja ti ọna titẹ sii ti o da lori boya wọn jẹ paapaa tabi aiṣedeede ati ṣe agbejade akojọpọ iṣelọpọ kan. O le lo awọn sample lati yokokoro lori mejeji awọn Sipiyu tabi GPU, pato awọn ti o yan ẹrọ nipasẹ a ariyanjiyan laini aṣẹ. Ṣe akiyesi botilẹjẹpe ti n ṣatunṣe aṣiṣe GPU le nilo awọn ọna ṣiṣe meji ati iṣeto ni afikun fun n ṣatunṣe aṣiṣe latọna jijin.
Awọn ibeere pataki
Ti o ba ṣe ifọkansi lati ṣatunṣe lori GPU, fi awọn awakọ GPU tuntun sori ẹrọ ki o tunto eto rẹ lati lo wọn. Tọkasi awọn Intel® oneAPI Awọn irinṣẹ fifi sori ẹrọ Itọsọna fun Lainos* OS. Tẹle awọn ilana Fi Intel GPU Drivers sori ẹrọ lati fi sori ẹrọ awọn awakọ GPU ti o baamu eto rẹ.
Ni afikun, o le fi ohun itẹsiwaju sori ẹrọ fun Visual Studio Code* fun n ṣatunṣe aṣiṣe GPU pẹlu Intel® Distribution fun GDB*. Tọkasi awọn Lilo Code Studio Visual pẹlu Intel® oneAPI Toolkits Itọsọna.
Ṣeto Ṣeto GPU Debugger
Lati ṣeto oluyipada GPU, o gbọdọ ni iwọle root.
AKIYESI Lakoko n ṣatunṣe aṣiṣe kernel, GPU ti da duro ati pe iṣelọpọ fidio ko si lori ẹrọ ibi-afẹde rẹ. Nitori eyi, o ko le ṣatunṣe GPU lati eto ibi-afẹde ti kaadi GPU ti eto naa tun lo fun iṣelọpọ ayaworan. Ni idi eyi, sopọ si ẹrọ nipasẹ ssh.
1. Ti o ba ni ifọkansi lati ṣatunṣe lori GPU, Kernel Linux kan ti o ṣe atilẹyin n ṣatunṣe aṣiṣe GPU nilo.
a. Tẹle awọn ilana ni Sọfitiwia Intel® fun idi gbogbogbo awọn agbara GPU lati gba lati ayelujara ati fi sori ẹrọ awọn awakọ pataki.
b. Mu atilẹyin yokokoro i915 ṣiṣẹ ni Kernel:
a. Ṣii ebute kan.
b. Ṣii grub file ni /etc/default.
c. Ninu agba file, wa laini GRUB_CMDLINE_LINUX_DEFAULT=””.
d. Tẹ ọrọ atẹle sii laarin awọn agbasọ ọrọ (""):
i915.debug_eu=1
AKIYESI Nipa aiyipada, awakọ GPU ko gba awọn ẹru iṣẹ laaye lati ṣiṣẹ lori GPU to gun ju iye akoko kan lọ. Awakọ naa npa iru awọn iṣẹ ṣiṣe ti o gun-gun nipasẹ ṣiṣe atunto GPU lati ṣe idiwọ. Ilana hangcheck ti awakọ jẹ alaabo ti ohun elo naa ba nṣiṣẹ labẹ yokokoro. Ti o ba gbero lati ṣiṣe awọn iṣẹ ṣiṣe iṣiro gigun tun laisi olutọpa ti o somọ, ronu lilo GPU: Mu Hangcheck ṣiṣẹ nipa fifi
i915.enable_hangcheck = 0
si kanna GRUB_CMDLINE_LINUX_DEFAULT ila.
c. Ṣe imudojuiwọn GRUB fun awọn ayipada wọnyi lati mu ipa:
sudo imudojuiwọn-grub
d. Atunbere.
2. Ṣeto agbegbe CLI rẹ nipa jijade iwe afọwọkọ setvars ti o wa ninu gbongbo fifi sori ẹrọ irinṣẹ rẹ.
Lainos (sudo):
orisun /opt/intel/oneapi/setvars.sh
Linux (olumulo):
orisun ~/intel/oneapi/setvars.sh
3. Eto ayika
Lo awọn oniyipada ayika wọnyi lati mu atilẹyin atunkọ fun Intel® oneAPI Ipele Zero:
okeere ZET_ENABLE_PROGRAM_DEBUGGING=1
okeere IGC_EnableGTLocationDebugging=1
4. Ayẹwo eto
Nigbati ohun gbogbo ba ti ṣetan, jọwọ ṣiṣẹ aṣẹ atẹle lati jẹrisi pe iṣeto ni eto jẹ igbẹkẹle:
python3 /ona/to/intel/oneapi/diagnostics/tuntun/diagnostics.py –filter debugger_sys_check -force
Ijade ti o ṣeeṣe ti eto tunto daradara jẹ bi atẹle:
…
Ṣayẹwo awọn abajade:
================================================= ===============================
Ṣayẹwo orukọ: debugger_sys_check
Apejuwe: Ayẹwo yii jẹri ti agbegbe ba ti ṣetan lati lo gdb (Intel (R) Pinpin fun GDB*).
Ipo esi: PASS
Ti ri olutọpa.
libpt ri.
libiga ri.
i915 yokokoro ti wa ni sise.
Awọn oniyipada ayika tọ. ================================================= ===============================
1 Ayẹwo: 1 Pass, 0 Ikuna, 0 IKILO, 0 Asise
Iṣajade console file: /ona/to/logs/diagnostics_filter_debugger_sys_check_force.txt JSON iṣẹjade file: /ona/to/diagnostics/logs/diagnostics_filter_debugger_sys_check_force.json …
Ṣe akopọ Eto naa pẹlu Alaye Atunṣe
O le lo awọn sample ise agbese, Array Transform, lati ni kiakia to bẹrẹ pẹlu awọn ohun elo debugger.
1. Lati gba awọn sample, yan eyikeyi ninu awọn ọna wọnyi:
- Lo ọkanAPI CLI Samples Browser lati yan Iyipada Array lati Ẹka Bibẹrẹ.
- Download lati GitHub*.
2. Lilö kiri si src ti awọn sample ise agbese:
cd orun-iyipada / src
3. Ṣe akopọ ohun elo naa nipa mimuuṣiṣẹ alaye yokokoro (-g flag) ati pipa awọn iṣapeye (-O0 flag).
Dinku iṣapeye jẹ iṣeduro fun iduroṣinṣin ati agbegbe yokokoro deede. Eyi ṣe iranlọwọ lati yago fun idamu ti o ṣẹlẹ nipasẹ awọn iyipada si koodu lẹhin awọn iṣapeye alakojọ.
AKIYESI O tun le ṣajọ eto naa pẹlu imudara iṣapeye (-O2 flag), eyiti o le ṣe iranlọwọ ti o ba ṣe ifọkansi ni n ṣatunṣe aṣiṣe apejọ apejọ GPU.
O le ṣajọ eto naa ni awọn ọna pupọ. Awọn aṣayan 1 ati 2 lo akojọpọ akoko kan (JIT), eyiti a ṣe iṣeduro lati ṣatunṣe awọn s.ample. Aṣayan 3 nlo iṣaju-akoko (AOT).
- Aṣayan 1. O le lo CMake file lati tunto ati kọ ohun elo naa. Tọkasi awọn README ti awọn sample fun awọn ilana.
AKIYESI CMake naa file pese pẹlu awọn sample ti kọja awọn asia -g -O0.
- Aṣayan 2. Lati ṣajọ array-transform.cpp sample elo lai CMake file, gbe awọn aṣẹ wọnyi jade:
icpx -fsycl -g -O0 array-transform.cpp -o array-transform
Ti akopọ ati sisopọ ba ṣe lọtọ, da awọn asia -g -O0 duro ni igbesẹ ọna asopọ. Igbesẹ ọna asopọ jẹ nigbati icpx tumọ awọn asia wọnyi lati kọja si olupilẹṣẹ ẹrọ ni akoko asiko. Example:
icpx -fsycl -g -O0 -c array-transform.cpp
icpx -fsycl -g -O0 array-transform.o -o array-transform
- Aṣayan 3. O le lo akopọ AOT lati yago fun awọn akoko akopọ JIT to gun ni akoko asiko. Akopọ JIT le gba ni pataki to gun fun awọn kernel nla labẹ olutọpa. Lati lo ipo iṣakojọpọ Iwaju-akoko:
• Fun n ṣatunṣe aṣiṣe lori GPU kan:
Pato ẹrọ ti iwọ yoo lo fun ipaniyan eto. Fun example, -ẹrọ dg2-g10 fun Intel® Data Center GPU Flex 140 Graphics. Fun atokọ ti awọn aṣayan atilẹyin ati alaye diẹ sii lori akopọ AOT, tọka si Intel® oneAPI DPC++ Itọsọna Olùgbéejáde Olupilẹṣẹ ati Itọkasi.
Fun example:
icpx -fsycl -g -O0 -fsycl-targets=spir64_gen -Xs “-device dg2-g10” array-transform.cpp -o arraytransform
Iṣakojọpọ iwaju-akoko nbeere Olupilẹṣẹ Aisinipo OpenCLTM (OC Compiler LOC). Fun alaye diẹ sii, tọka apakan “Fi Ṣiṣakoṣo Aisinipo OpenCLTM (OCLOC)” ti awọn Fifi sori Itọsọna.
• Fun n ṣatunṣe aṣiṣe lori Sipiyu:
icpx -fsycl -g -O0 -fsycl-targets=spir64_x86_64 array-transform.cpp -o array-transform
Bẹrẹ Ikoni yokokoro kan
Bẹrẹ igba yokokoro:
1. Bẹrẹ Pipin Intel® fun GDB* gẹgẹbi atẹle:
gdb-oneapi orun-iyipada
O yẹ ki o wo (gdb) kiakia.
2. Lati rii daju pe o ti gbe ekuro si ẹrọ ti o tọ, ṣe awọn igbesẹ wọnyi. Nigbati o ba ṣiṣẹ pipaṣẹ ṣiṣe lati (gdb) tọ, kọja naa cpu, gpu or ohun imuyara ariyanjiyan:
- Fun n ṣatunṣe aṣiṣe lori Sipiyu:
ṣiṣe cpu
Exampjade:
[SYCL] Lilo ẹrọ: [Intel (R) Core (TM) i7-9750H CPU @ 2.60GHz] lati [Intel (R) OpenCL]- Fun n ṣatunṣe aṣiṣe lori GPU:
ṣiṣe gpu
Exampjade:
[SYCL] Lilo ẹrọ: [Intel(R) Data Center GPU Flex Series 140 [0x56c1]] lati [Intel(R) LevelZero]- Fun n ṣatunṣe aṣiṣe lori FPGA-emulator:
ṣiṣe ohun imuyara
Exampjade:
[SYCL] Lilo ẹrọ: [Intel(R) FPGA Emulation Device] lati [Intel(R) FPGA Emulation Platform for OpenCL(TM) software]AKIYESI Sipiyu, gpu, ati awọn aye imuyara jẹ pato si ohun elo Iyipada Array.
3. Lati jade kuro ni Pipin Intel® fun GDB*:
jáwọ́
Fun irọrun rẹ, Pipin Intel® ti o wọpọ fun awọn aṣẹ GDB* ti pese ni awọn Iwe itọkasi.
Lati yokokoro Iyipada Array sampati kọ ẹkọ diẹ sii nipa Pipin Intel® fun GDB*, rin nipasẹ awọn oju iṣẹlẹ ti n ṣatunṣe aṣiṣe ni lilo Ikẹkọ.
Kọ ẹkọ diẹ si
Iwe aṣẹ | Apejuwe |
Ikẹkọ: N ṣatunṣe aṣiṣe pẹlu Intel® Pipin fun GDB* | Iwe yii ṣe apejuwe awọn oju iṣẹlẹ ipilẹ lati tẹle lakoko ti n ṣatunṣe aṣiṣe SYCL* ati OpenCL pẹlu Intel® Distribution fun GDB*. |
Pipin Intel® fun GDB * Itọsọna olumulo | Iwe yii ṣe apejuwe gbogbo awọn iṣẹ ṣiṣe ti o wọpọ ti o le pari pẹlu Pipin Intel® fun GDB * ati pese awọn alaye imọ-ẹrọ pataki. |
Pipin Intel® fun GDB * Awọn akọsilẹ itusilẹ | Awọn akọsilẹ ni alaye ninu nipa awọn agbara bọtini, awọn ẹya tuntun, ati awọn ọran ti a mọ ti Pipin Intel® fun GDB*. |
Oju-iwe Ọja ọkanAPI | Oju-iwe yii ni ifihan kukuru lori awọn ohun elo irinṣẹ API kan ati awọn ọna asopọ si awọn orisun to wulo. |
Pipin Intel® fun GDB* Iwe Itọkasi | Iwe-ipamọ oju-iwe kan ni ṣoki ṣapejuwe Pipin Intel® fun GDB* awọn ibeere pataki ati awọn aṣẹ iwulo. |
Jacobi Sample | Ohun elo SYCL * kekere yii ni awọn ẹya meji: bugged ati ti o wa titi. Lo awọn sample ṣe adaṣe ohun elo n ṣatunṣe aṣiṣe pẹlu Intel® Distribution fun GDB*. |
Akiyesi ati Disclaimers
Awọn imọ-ẹrọ Intel le nilo ohun elo ti n ṣiṣẹ, sọfitiwia tabi imuṣiṣẹ iṣẹ.
Ko si ọja tabi paati ti o le ni aabo patapata.
Awọn idiyele rẹ ati awọn abajade le yatọ.
© Intel Corporation. Intel, aami Intel, ati awọn aami Intel miiran jẹ aami-išowo ti Intel Corporation tabi awọn oniranlọwọ rẹ. Awọn orukọ miiran ati awọn ami iyasọtọ le jẹ ẹtọ bi ohun-ini ti awọn miiran.
Ko si iwe-aṣẹ (ṣafihan tabi mimọ, nipasẹ estoppel tabi bibẹẹkọ) si eyikeyi awọn ẹtọ ohun-ini imọ ni a fun ni nipasẹ iwe yii.
Awọn ọja ti a ṣapejuwe le ni awọn abawọn apẹrẹ tabi awọn aṣiṣe ti a mọ si errata eyiti o le fa ki ọja naa yapa lati awọn alaye ti a tẹjade. Errata ti o wa lọwọlọwọ wa lori ibeere.
Intel sọ gbogbo awọn iṣeduro ti o han ati mimọ, pẹlu laisi aropin, awọn iṣeduro iṣeduro ti iṣowo, amọdaju fun idi kan, ati aisi irufin, bakanna pẹlu atilẹyin ọja eyikeyi ti o dide lati iṣẹ ṣiṣe, ilana ṣiṣe, tabi lilo ninu iṣowo.
OpenCL ati aami OpenCL jẹ aami-iṣowo ti Apple Inc. ti a lo nipasẹ igbanilaaye nipasẹ Khronos.
Awọn iwe aṣẹ / Awọn orisun
![]() |
intel Pinpin fun GDB lori Lainos OS Gbalejo [pdf] Itọsọna olumulo Pipin fun GDB lori Lainos OS Gbalejo, GDB lori Lainos OS Gbalejo, Linux OS Gbalejo, OS Gbalejo, Gbalejo |