Yambani ndi Intel® Distribution ya GDB* pa Linux* OS Host

Yambani kugwiritsa ntchito Intel® Distribution ya GDB* pakuchotsa zolakwika. Tsatirani malangizo omwe ali pansipa kuti mukhazikitse chowongolera kuti muchotse zolakwika pamapulogalamu ndi ma maso omwe adatsitsidwa ku zida za CPU ndi GPU.

Intel® Distribution ya GDB* ikupezeka ngati gawo la Intel® oneAPI Base Toolkit. Kuti mumve zambiri pa zida za OneAPI, pitani ku tsamba mankhwala.

Pitani ku Zolemba Zotulutsa tsamba kuti mudziwe za kuthekera kwakukulu, zatsopano, ndi zodziwika.

Mutha kugwiritsa ntchito SYCL* sample code, Array Transform, kuti muyambe ndi Intel® Distribution ya GDB*. The sample samapanga zolakwika ndipo amangowonetsera mawonekedwe a debugger. Khodiyo imayendetsa zinthu zamagulu olowetsamo kutengera kuti ndi zofananira kapena zosamvetseka ndipo zimatulutsa zotulutsa. Mutha kugwiritsa ntchito sample kuti mukonze zolakwika pa CPU kapena GPU, kufotokozera chipangizo chomwe mwasankha kudzera pamtsutso wa mzere wolamula. Zindikirani ngakhale kuti GPU debugging ingafunike machitidwe awiri ndi kasinthidwe kowonjezera pakuwongolera kutali.

Zofunikira

Ngati mukufuna kukonza zolakwika pa GPU, ikani madalaivala aposachedwa a GPU ndikusintha makina anu kuti awagwiritse ntchito. Onani ku Intel® oneAPI Toolkits Installation Guide ya Linux* OS. Tsatirani malangizo Ikani Madalaivala a Intel GPU kukhazikitsa madalaivala a GPU ofanana ndi dongosolo lanu.

Kuphatikiza apo, mutha kuyika chowonjezera cha Visual Studio Code* pakuchotsa GPU ndi Intel® Distribution ya GDB*. Onani ku Kugwiritsa Ntchito Visual Studio Code yokhala ndi Intel® oneAPI Toolkits Guide.

Konzani GPU Debugger

Kuti mukhazikitse GPU debugger, muyenera kukhala ndi mizu.


ZINDIKIRANI Panthawi yokonza kernel, GPU imayimitsidwa ndipo mavidiyo sapezeka pamakina omwe mukufuna. Chifukwa cha izi, simungathe kusokoneza GPU kuchokera ku dongosolo lachindunji ngati khadi la GPU la dongosololi limagwiritsidwanso ntchito pojambula zithunzi. Pankhaniyi, kulumikiza makina kudzera ssh.


1. Ngati mukufuna kukonza zolakwika pa GPU, Linux Kernel yomwe imathandizira kukonza GPU ndiyofunikira.

a. Tsatirani malangizo pa Mapulogalamu a Intel® pazolinga zambiri za GPU kutsitsa ndi kukhazikitsa madalaivala ofunikira.
b. Yambitsani chithandizo cha i915 debug ku Kernel:

a. Tsegulani potherapo.
b. Tsegulani grub file mu /etc/default.
c. Mu grub file, pezani mzere GRUB_CMDLINE_LINUX_DEFAULT=””.
d. Lowetsani mawu otsatirawa pakati pa mawu (“”):

i915.debug_eu=1


ZINDIKIRANI Mwachikhazikitso, dalaivala wa GPU salola kuti ntchito ziziyenda pa GPU motalika kuposa nthawi inayake. Dalaivala amapha zolemetsa zomwe zakhala zikuchitika kwanthawi yayitali pokhazikitsanso GPU kuti apewe kupachika. Dongosolo la hangcheck la dalaivala limayimitsidwa ngati pulogalamuyo ikuyenda pansi pa debugger. Ngati mukukonzekera kuyendetsa ntchito zazitali zazitali popanda chowongolera cholumikizidwa, lingalirani kugwiritsa ntchito GPU: Letsani Hangcheck powonjezera

i915.enable_hangcheck=0

ku chomwecho GRUB_CMDLINE_LINUX_DEFAULT mzere.

c. Sinthani GRUB kuti zosinthazi zichitike:

sudo update-grub

d. Yambitsaninso.

2. Konzani malo anu a CLI pofufuza zolemba za setvars zomwe zili muzu wa zida zanu.

Linux (sudo):

gwero /opt/intel/oneapi/setvars.sh

Linux (wogwiritsa):

gwero ~/intel/oneapi/setvars.sh

3. Kukhazikitsa chilengedwe
Gwiritsani ntchito zosintha zotsatirazi kuti muthandizire kuthandizira pa Intel® oneAPI Level Zero:

kutumiza kunja ZET_ENABLE_PROGRAM_DEBUGGING=1
kutumiza kunja IGC_EnableGTLocationDebugging=1

4. Kuwunika kwadongosolo
Zonse zikakonzeka, chonde yendetsani lamulo ili kuti mutsimikizire kuti kasinthidwe kachitidweko ndi kodalirika:

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

Kutulutsa kotheka kwa dongosolo lokonzedwa bwino ndi motere:


Onani zotsatira:
============================================= =============================
Chongani dzina: debugger_sys_check
Kufotokozera: Chekichi chikutsimikizira ngati chilengedwe chakonzeka kugwiritsa ntchito gdb (Intel(R) Distribution ya GDB*).
Zotsatira: PASS
Debugger yapezeka.
libipt anapeza.
libiga anapeza.
i915 debug imayatsidwa.
Zosintha zachilengedwe zolondola. ============================================= ===============================

CHECK 1: 1 PASS, 0 FOIL, 0 CHENJEZO, 0 ZOPHUNZITSA

Kutulutsa kwa Console file: /path/to/logs/diagnostics_filter_debugger_sys_check_force.txt kutulutsa kwa JSON file: /path/to/diagnostics/logs/diagnostics_filter_debugger_sys_check_force.json …

Konzani Pulogalamuyi ndi Zambiri Zowonongeka

Mutha kugwiritsa ntchito sample project, Array Transform, kuti muyambe mwamsanga ndi debugger.

1. Kuti mupeze sample, sankhani iliyonse mwa njira izi:

2. Yendetsani ku src ya sampndi polojekiti:

cd array-transform/src

3. Phatikizani pulogalamuyi poyambitsa zidziwitso za debug (-g mbendera) ndikuzimitsa kukhathamiritsa (-O0 mbendera).
Kuyimitsa kukhathamiritsa kumalimbikitsidwa kuti pakhale malo okhazikika komanso olondola. Izi zimathandiza kupewa chisokonezo chobwera chifukwa cha kusintha kwa code pambuyo pa kukhathamiritsa kwa compiler.


ZINDIKIRANI Mutha kupangabe pulogalamuyo ndi kukhathamiritsa kothandizidwa (-O2 mbendera), yomwe ingakhale yothandiza ngati mukufuna kukonza zolakwika pamisonkhano ya GPU.


Mutha kupanga pulogalamuyo m'njira zingapo. Zosankha 1 ndi 2 zimagwiritsa ntchito kupanga-in-time (JIT), zomwe zimalimbikitsidwa kuti zithetse vutoli.ample. Njira 3 imagwiritsa ntchito kuphatikiza kwanthawi yayitali (AOT).

  • Njira 1. Mutha kugwiritsa ntchito CMake file kukonza ndi kupanga pulogalamuyo. Onani ku WERENGANI mwa sample kwa malangizo.

ZINDIKIRANI The CMake file zoperekedwa ndi sample wadutsa kale -g -O0 mbendera.


  • Njira 2. Kupanga array-transform.cpp sample ntchito popanda CMake file, perekani malamulo awa:

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

Ngati kuphatikiza ndi kulumikiza kuchitidwa mosiyana, sungani -g -O0 mbendera pa sitepe yolumikizira. Njira yolumikizira ndi pamene icpx imamasulira mbendera izi kuti ziperekedwe kwa wopanga zida panthawi yothamanga. EksampLe:

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

  • Njira 3. Mutha kugwiritsa ntchito kuphatikiza kwa AOT kuti mupewe nthawi yayitali yophatikiza JIT panthawi yothamanga. Kupanga kwa JIT kumatha kutenga nthawi yayitali kwa maso akulu pansi pa debugger. Kugwiritsa Ntchito Patsogolo Pa Nthawi Yophatikiza:

• Pakukonza zolakwika pa GPU:
Tchulani chipangizo chomwe mungagwiritse ntchito pokonzekera pulogalamu. Za example, -device dg2-g10 ya Intel® Data Center GPU Flex 140 Graphics. Kuti mupeze mndandanda wazothandizira zothandizira komanso zambiri pakuphatikiza kwa AOT, onani Intel® oneAPI DPC++ Compiler Developer Guide and Reference.
Za exampLe:

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

Kupanga Patsogolo pa Nthawi kumafuna OpenCLTM Offline Compiler (OC Compiler LOC). Kuti mudziwe zambiri, onani gawo la "Ikani OpenCLTM Offline Compiler (OCLOC)" ya Kuyika Guide.

• Kuthetsa vuto pa CPU:

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

Yambitsani Gawo la Debug

Yambitsani gawo lowongolera:

1. Yambitsani Intel® Distribution ya GDB* motere:

gdb-oneapi array-transform

Muyenera kuwona (gdb) mwachangu.

2. Kuti muwonetsetse kuti kernel yatsitsidwa ku chipangizo choyenera, chitani zotsatirazi. Mukapereka lamulo lothamanga kuchokera ku (gdb) mwamsanga, dutsani CPU, gpu or chothamangitsira mkangano:

  • Kuti mukonze zolakwika pa CPU:

kuthamanga cpu

Example output:

[SYCL] Pogwiritsa ntchito chipangizo: [Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz] kuchokera ku [Intel(R) OpenCL]
  • Kuti muchotse zolakwika pa GPU:

thamanga gpu

Example output:

[SYCL] Pogwiritsa ntchito chipangizo: [Intel(R) Data Center GPU Flex Series 140 [0x56c1]] kuchokera ku [Intel(R) LevelZero]
  • Pakukonza zolakwika pa FPGA-emulator:

kuthamanga accelerator

Example output:

[SYCL] Pogwiritsa ntchito chipangizo: [Intel(R) FPGA Emulation Device] kuchokera ku [Intel(R) FPGA Emulation Platform for OpenCL(TM) software]

ZINDIKIRANI Ma parameter a cpu, gpu, ndi accelerator ndi a Array Transform application.


3. Kuti musiye Intel® Distribution ya GDB*:

kusiya

Kuti muthandizire, malamulo wamba a Intel® Distribution a GDB* amaperekedwa mu Reference Mapepala.

Kuthetsa vuto la Array Transform sample ndi kuphunzira zambiri za Intel® Distribution ya GDB*, yendani m'machitidwe oyambira kugwiritsa ntchito Maphunziro.

Dziwani zambiri
Chikalata Kufotokozera
Maphunziro: Kuthetsa vuto ndi Intel® Distribution ya GDB* Chikalatachi chikufotokoza zochitika zofunika kutsatira pamene mukuchotsa SYCL* ndi OpenCL yokhala ndi Intel® Distribution ya GDB*.
Intel® Distribution ya GDB* User Guide Chikalatachi chikufotokoza ntchito zonse zomwe mungathe kumaliza ndi Intel® Distribution ya GDB* ndipo imapereka tsatanetsatane waukadaulo.
Intel® Distribution ya GDB* Zotulutsa Zotulutsa Zolembazo zili ndi zambiri za kuthekera kwakukulu, zatsopano, ndi nkhani zodziwika za Intel® Distribution ya GDB*.
OneAPI Product Page Tsambali lili ndi mawu achidule a zida za OneAPI ndi maulalo azinthu zothandiza.
Intel® Distribution ya GDB* Reference Sheet Chikalata chatsamba limodzichi chikufotokoza mwachidule zofunikira za Intel® Distribution ya GDB* ndi malamulo othandiza.
Jacob Sample Pulogalamu yaying'ono ya SYCL* ili ndi mitundu iwiri: yokhazikika komanso yokhazikika. Gwiritsani ntchito sampleni kuti mugwiritse ntchito kukonza zolakwika ndi Intel® Distribution ya GDB*.
Zidziwitso ndi Zodzikanira

Maukadaulo a Intel angafunike maofesi othandizira, mapulogalamu kapena ntchito yothandizira.

Palibe mankhwala kapena chigawo chimodzi chomwe chingakhale chotetezeka mwamtheradi.

Mtengo wanu ndi zotsatira zitha kusiyanasiyana.

Chithunzi © Intel Corporation Intel, logo ya Intel, ndi zizindikiro zina za Intel ndi zizindikiro za Intel Corporation kapena mabungwe ake. Mayina ena ndi mtundu zitha kunenedwa kuti ndi za ena.

Palibe chilolezo (chofotokoza kapena kutanthauza, mwa estoppel kapena mwanjira ina) yaufulu uliwonse waukadaulo womwe waperekedwa ndi chikalatachi.

Zogulitsa zomwe zafotokozedwa zitha kukhala ndi zolakwika zamapangidwe kapena zolakwika zomwe zimadziwika kuti errata zomwe zingapangitse kuti chinthucho chichoke pa zomwe zasindikizidwa. Zolakwika zamakono zilipo popempha.

Intel imakana zitsimikizo zonse zodziwika bwino, kuphatikiza popanda malire, zitsimikizo zogulitsira, kulimba pazifukwa zinazake, komanso kusaphwanya malamulo, komanso chitsimikizo chilichonse chobwera chifukwa chakuchita, kachitidwe, kapena kugwiritsa ntchito malonda.

OpenCL ndi logo ya OpenCL ndi zizindikiro za Apple Inc. zogwiritsidwa ntchito ndi chilolezo ndi Khronos.

Zolemba / Zothandizira

Intel Distribution ya GDB pa Linux OS Host [pdf] Buku Logwiritsa Ntchito
Kugawa kwa GDB pa Linux OS Host, GDB pa Linux OS Host, Linux OS Host, OS Host, Host

Maumboni

Siyani ndemanga

Imelo yanu sisindikizidwa. Minda yofunikira yalembedwa *