Byrjaðu með Intel® Distribution for GDB* á Linux* OS Host
Byrjaðu að nota Intel® Distribution for GDB* fyrir villuleitarforrit. Fylgdu leiðbeiningunum hér að neðan til að setja upp villuleitarforritið til að kemba forrit með kjarna afhenta á CPU og GPU tæki.
Intel® Distribution for GDB* er fáanlegt sem hluti af Intel® oneAPI Base Toolkit. Fyrir frekari upplýsingar um oneAPI verkfærasett skaltu fara á vörusíðu.
Heimsæktu Útgáfuskýringar síðu fyrir upplýsingar um helstu eiginleika, nýja eiginleika og þekkt vandamál.
Þú getur notað SYCL* sampkóðinn, Array Transform, til að byrja með Intel® Distribution for GDB*. sample býr ekki til villur og sýnir einfaldlega villuleitareiginleika. Kóðinn vinnur úr þáttum inntaksfylkisins eftir því hvort þeir eru sléttir eða ójafnir og framleiðir úttaksfylki. Þú getur notað sample til að kemba bæði á örgjörva eða GPU, tilgreina valið tæki í gegnum skipanalínurök. Athugaðu þó að GPU kembiforrit gæti þurft tvö kerfi og viðbótarstillingar fyrir fjarkembiforrit.
Forkröfur
Ef þú stefnir að því að kemba á GPU skaltu setja upp nýjustu GPU reklana og stilla kerfið þitt til að nota þá. Vísa til Intel® oneAPI Toolkits Uppsetningarleiðbeiningar fyrir Linux* OS. Fylgdu leiðbeiningunum Settu upp Intel GPU bílstjóri til að setja upp GPU rekla sem passa við kerfið þitt.
Að auki geturðu sett upp viðbót fyrir Visual Studio Code* til að kemba GPU með Intel® Distribution for GDB*. Vísa til Notkun Visual Studio Code með Intel® oneAPI Toolkits Guide.
Settu upp GPU Debugger
Til að setja upp GPU kembiforritið verður þú að hafa rótaraðgang.
ATH Við kjarnakembi er GPU stöðvuð og myndbandsúttakið er ekki tiltækt á markvélinni þinni. Vegna þessa er ekki hægt að kemba GPU frá markkerfinu ef GPU kort kerfisins er einnig notað fyrir grafíska úttak. Í þessu tilviki skaltu tengjast vélinni í gegnum ssh.
1. Ef þú stefnir að því að kemba á GPU, þarf Linux kjarna sem styður GPU kembiforrit.
a. Fylgdu leiðbeiningunum kl Intel® hugbúnaður fyrir almenna GPU getu til að hlaða niður og setja upp nauðsynlega rekla.
b. Virkjaðu i915 villuleitarstuðning í kjarna:
a. Opnaðu flugstöð.
b. Opnaðu græjuna file í /etc/default.
c. Í kjafti file, finndu línuna GRUB_CMDLINE_LINUX_DEFAULT="".
d. Sláðu inn eftirfarandi texta á milli gæsalappanna (“”):
i915.debug_eu=1
ATH Sjálfgefið leyfir GPU bílstjóri ekki vinnuálag að keyra á GPU lengur en tiltekinn tíma. Ökumaðurinn drepur svo langvarandi vinnuálag með því að núllstilla GPU til að koma í veg fyrir að það hengi. Slökkt er á hangcheck vélbúnaði ökumanns ef forritið er í gangi undir villuleitarforritinu. Ef þú ætlar að keyra langt tölvuvinnuálag líka án þess að villuleit sé tengdur skaltu íhuga að sækja um GPU: Slökktu á Hangcheck með því að bæta við
i915.enable_hangcheck=0
að því sama GRUB_CMDLINE_LINUX_DEFAULT lína.
c. Uppfærðu GRUB til að þessar breytingar taki gildi:
sudo update-grub
d. Endurræstu.
2. Settu upp CLI umhverfið þitt með því að fá setvars handritið sem staðsett er í rót uppsetningar verkfærakistunnar.
Linux (sudo):
heimild /opt/intel/oneapi/setvars.sh
Linux (notandi):
heimild ~/intel/oneapi/setvars.sh
3. Uppsetningarumhverfi
Notaðu eftirfarandi umhverfisbreytur til að virkja villuleitarstuðning fyrir Intel® oneAPI Level Zero:
flytja ZET_ENABLE_PROGRAM_DEBUGGING=1
flytja út IGC_EnableGTLocationDebugging=1
4. Kerfisskoðun
Þegar allt er tilbúið skaltu keyra eftirfarandi skipun til að staðfesta að kerfisuppsetningin sé áreiðanleg:
python3 /path/to/intel/oneapi/diagnostics/latest/diagnostics.py –filter debugger_sys_check -force
Möguleg framleiðsla á vel stilltu kerfi er sem hér segir:
…
Athugar niðurstöður:
================================================== ================================
Athugaðu nafn: debugger_sys_check
Lýsing: Þessi athugun staðfestir hvort umhverfið sé tilbúið til notkunar gdb (Intel(R) Distribution for GDB*).
Staða úrslit: PASS
Villuleit fannst.
libipt fannst.
libiga fannst.
i915 kembiforrit er virkt.
Umhverfisbreytur réttar. ================================================== =================================
1 ATHUGIÐ: 1 PASSI, 0 FAIL, 0 VIÐVÖRUN, 0 VILLUR
Console úttak file: /path/to/logs/diagnostics_filter_debugger_sys_check_force.txt JSON úttak file: /path/to/diagnostics/logs/diagnostics_filter_debugger_sys_check_force.json …
Settu forritið saman með villuleitarupplýsingum
Þú getur notað sampverkefnið, Array Transform, til að byrja fljótt með villuleitarforritinu.
1. Til að fá sample, veldu einhverja af eftirfarandi leiðum:
- Notaðu oneAPI CLI Samples vafri til að velja Array Transform úr flokknum Getting Started.
- Sækja frá GitHub*.
2. Farðu að src á sampLe verkefni:
cd array-transform/src
3. Settu saman forritið með því að virkja villuleitarupplýsingar (-g fána) og slökkva á fínstillingum (-O0 fána).
Mælt er með því að slökkva á fínstillingu fyrir stöðugt og nákvæmt villuleitarumhverfi. Þetta hjálpar til við að forðast rugling sem stafar af breytingum á kóðanum eftir fínstillingu þýðanda.
ATH Þú getur samt sett forritið saman með fínstillingu virkt (-O2 fána), sem getur verið gagnlegt ef þú miðar að GPU samsetningu kembiforrit.
Þú getur sett forritið saman á nokkra vegu. Valmöguleikar 1 og 2 nota bara-í-tíma (JIT) samantekt, sem er mælt með því að villuleita sample. Valkostur 3 notar fyrirfram-af-tíma (AOT) samantekt.
- Valkostur 1. Þú getur notað CMake file til að stilla og smíða forritið. Vísa til README á sample fyrir leiðbeiningarnar.
ATH CMake file fylgir sample fer nú þegar framhjá -g -O0 fánum.
- Valkostur 2. Til að setja saman array-transform.cpp sampforritið án CMake file, gefðu út eftirfarandi skipanir:
icpx -fsycl -g -O0 fylki-umbreyting.cpp -o fylki-umbreyting
Ef samantekt og tenging er gerð sérstaklega, geymdu -g -O0 fánana í tengiskrefinu. Tengillskrefið er þegar icpx þýðir þessa fána til að vera send til tækjaþýðanda á keyrslutíma. Tdample:
icpx -fsycl -g -O0 -c array-transform.cpp
icpx -fsycl -g -O0 fylki-umbreyting.o -o fylki-umbreyting
- Valkostur 3. Þú getur notað AOT samantekt til að forðast lengri JIT samantektartíma á keyrslutíma. JIT samantekt getur tekið umtalsvert lengri tíma fyrir stóra kjarna undir kembiforritinu. Til að nota fyrirfram söfnunarham:
• Fyrir villuleit á GPU:
Tilgreindu tækið sem þú munt nota til að keyra forritið. Til dæmisample, -tæki dg2-g10 fyrir Intel® Data Center GPU Flex 140 grafík. Fyrir lista yfir studda valkosti og frekari upplýsingar um AOT samantekt, vísa til Intel® oneAPI DPC++ forritarahandbók og tilvísun.
Til dæmisample:
icpx -fsycl -g -O0 -fsycl-targets=spir64_gen -Xs “-device dg2-g10” array-transform.cpp -o arraytransform
Samantekt fyrirfram krefst OpenCLTM Offline Compiler (OC Compiler LOC). Fyrir frekari upplýsingar, sjá kaflann „Setja upp OpenCLTM Offline Compiler (OCLOC)“ í Uppsetningarleiðbeiningar.
• Fyrir villuleit á örgjörva:
icpx -fsycl -g -O0 -fsycl-targets=spir64_x86_64 array-transform.cpp -o array-transform
Byrjaðu villuleitarlotu
Byrjaðu villuleitarlotuna:
1. Ræstu Intel® dreifingu fyrir GDB* sem hér segir:
gdb-oneapi fylki-umbreyting
Þú ættir að sjá (gdb) hvetja.
2. Til að ganga úr skugga um að kjarnanum sé hlaðið niður í rétt tæki skaltu gera eftirfarandi skref. Þegar þú keyrir hlaupaskipunina frá (gdb) hvetjunni skaltu senda örgjörva, gpu or inngjöf rök:
- Fyrir villuleit á CPU:
keyra örgjörva
Example framleiðsla:
[SYCL] Notar tæki: [Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz] frá [Intel(R) OpenCL]- Fyrir villuleit á GPU:
keyra gpu
Example framleiðsla:
[SYCL] Notar tæki: [Intel(R) Data Center GPU Flex Series 140 [0x56c1]] frá [Intel(R) LevelZero]- Fyrir villuleit á FPGA-hermi:
keyra inngjöf
Example framleiðsla:
[SYCL] Notar tæki: [Intel(R) FPGA Emulation Device] frá [Intel(R) FPGA Emulation Platform fyrir OpenCL(TM) hugbúnað]ATH Örgjörva-, gpu- og eldsneytisbreytur eru sértækar fyrir Array Transform forritið.
3. Til að hætta við Intel® dreifingu fyrir GDB*:
hætta
Til þæginda eru algengar Intel® Distribution for GDB* skipanir í Tilvísunarblað.
Til að kemba Array Transform samplestu og lærðu meira um Intel® Distribution fyrir GDB*, farðu í gegnum grunn villuleitaraðstæður með því að nota Kennsla.
Lærðu meira
Skjal | Lýsing |
Kennsla: Villuleit með Intel® dreifingu fyrir GDB* | Þetta skjal lýsir grunnatburðarásinni sem þarf að fylgja þegar villuleit er SYCL* og OpenCL með Intel® Distribution for GDB*. |
Intel® Distribution for GDB* notendahandbók | Þetta skjal lýsir öllum algengum verkefnum sem þú getur klárað með Intel® Distribution for GDB* og veitir nauðsynlegar tæknilegar upplýsingar. |
Intel® Distribution for GDB* útgáfuskýrslur | Skýringarnar innihalda upplýsingar um lykilmöguleika, nýja eiginleika og þekkt vandamál af Intel® Distribution for GDB*. |
oneAPI vörusíða | Þessi síða inniheldur stutta kynningu á oneAPI verkfærasettum og tengla á gagnleg úrræði. |
Intel® Distribution for GDB* tilvísunarblað | Þetta skjal á einni síðu lýsir í stuttu máli Intel® Distribution for GDB* forsendum og gagnlegum skipunum. |
Jakobi Sample | Þetta litla SYCL* forrit hefur tvær útgáfur: gallað og lagað. Notaðu sample til að framkvæma villuleit forrita með Intel® Distribution for GDB*. |
Tilkynningar og fyrirvarar
Intel tækni kann að þurfa að virkja vélbúnað, hugbúnað eða þjónustu.
Engin vara eða íhlutur getur verið algerlega öruggur.
Kostnaður þinn og niðurstöður geta verið mismunandi.
© Intel Corporation. Intel, Intel lógóið og önnur Intel merki eru vörumerki Intel Corporation eða dótturfélaga þess. Önnur nöfn og vörumerki má gera tilkall til sem eign annarra.
Ekkert leyfi (beint eða óbeint, með estoppel eða á annan hátt) til neinna hugverkaréttinda er veitt með þessu skjali.
Vörurnar sem lýst er geta innihaldið hönnunargalla eða villur sem kallast errata sem geta valdið því að varan víki frá birtum forskriftum. Núverandi einkennandi errata eru fáanlegar ef óskað er.
Intel afsalar sér öllum óbeinum og óbeinum ábyrgðum, þar með talið, án takmarkana, óbeinum ábyrgðum um söluhæfni, hæfni í ákveðnum tilgangi og að ekki sé brotið, sem og hvers kyns ábyrgð sem stafar af frammistöðu, viðskiptum eða notkun í viðskiptum.
OpenCL og OpenCL lógóið eru vörumerki Apple Inc. notuð með leyfi Khronos.
Skjöl / auðlindir
![]() |
Intel Dreifing fyrir GDB á Linux OS Host [pdfNotendahandbók Dreifing fyrir GDB á Linux OS Host, GDB á Linux OS Host, Linux OS Host, OS Host, Host |