Пачніце з Intel® Distribution for GDB* на хосты Linux* OS
Пачніце выкарыстоўваць Intel® Distribution for GDB* для адладкі прыкладанняў. Выконвайце інструкцыі ніжэй, каб наладзіць адладчык для адладкі прыкладанняў з ядрамі, выгружанымі на прылады CPU і GPU.
Intel® Distribution for GDB* даступны як частка Intel® oneAPI Base Toolkit. Для атрымання дадатковай інфармацыі аб наборах інструментаў oneAPI наведайце старонка прадукту.
Наведайце ст Заўвагі да выпуску старонка для інфармацыі аб ключавых магчымасцях, новых функцыях і вядомых праблемах.
Вы можаце выкарыстоўваць SYCL* sampкод, пераўтварэнне масіва, каб пачаць працу з дыстрыбутывам Intel® для GDB*. Сample не стварае памылак і проста ілюструе функцыі адладчыка. Код апрацоўвае элементы ўваходнага масіва ў залежнасці ад таго, цотныя яны ці няцотныя, і стварае выхадны масіў. Вы можаце выкарыстоўваць sample для адладкі як на працэсары, так і на графічным працэсары, указаўшы абраную прыладу праз аргумент каманднага радка. Аднак звярніце ўвагу, што для адладкі GPU могуць спатрэбіцца дзве сістэмы і дадатковая канфігурацыя для аддаленай адладкі.
Перадумовы
Калі вы хочаце адладжваць на GPU, усталюйце апошнія драйверы GPU і наладзьце сістэму на іх выкарыстанне. Звярніцеся да Кіраўніцтва па ўстаноўцы набораў інструментаў Intel® oneAPI для АС Linux*. Выконвайце інструкцыі Ўстаноўка драйвераў для графічнага працэсара intel каб усталяваць драйверы GPU, якія адпавядаюць вашай сістэме.
Акрамя таго, вы можаце ўсталяваць пашырэнне для Visual Studio Code* для адладкі GPU з Intel® Distribution for GDB*. Звярніцеся да Выкарыстанне кода Visual Studio з кіраўніцтвам па набору інструментаў Intel® oneAPI.
Наладзьце адладчык GPU
Каб наладзіць адладчык GPU, вы павінны мець каранёвы доступ.
УВАГА Падчас адладкі ядра графічны працэсар спыняецца, і відэавыхад недаступны на вашай мэтавай машыне. З-за гэтага вы не можаце адладжваць графічны працэсар з мэтавай сістэмы, калі графічны працэсар сістэмы таксама выкарыстоўваецца для графічнага вываду. У гэтым выпадку падключыцеся да машыны праз ssh.
1. Калі вы хочаце адладжваць на GPU, неабходна ядро Linux, якое падтрымлівае адладку GPU.
a. Выконвайце інструкцыі на Праграмнае забеспячэнне Intel® для графічных працэсараў агульнага прызначэння спампаваць і ўсталяваць неабходныя драйвера.
b. Уключыце падтрымку адладкі i915 у ядры:
a. Адкрыйце тэрмінал.
b. Адкрыйце grub file у /etc/default.
c. У жэрці file, знайдзіце радок GRUB_CMDLINE_LINUX_DEFAULT=””.
d. Увядзіце наступны тэкст паміж двукоссямі (“”):
i915.debug_eu=1
УВАГА Па змаўчанні драйвер GPU не дазваляе працоўным нагрузкам працаваць на GPU больш за пэўны час. Драйвер ліквідуе такія працяглыя працоўныя нагрузкі шляхам скіду графічнага працэсара, каб прадухіліць завісанні. Механізм hangcheck драйвера адключаны, калі праграма працуе ў адладчыку. Калі вы плануеце выконваць працяглыя вылічальныя нагрузкі без падключэння адладчыка, падумайце аб падачы заяўкі GPU: адключыць Hangcheck шляхам дадання
i915.enable_hangcheck=0
да таго ж Радок GRUB_CMDLINE_LINUX_DEFAULT.
c. Абнавіце GRUB, каб гэтыя змены ўступілі ў сілу:
sudo update-grub
d. Перазагрузка.
2. Наладзьце асяроддзе CLI, знайшоўшы скрыпт setvars, размешчаны ў корані ўстаноўкі набору інструментаў.
Linux (sudo):
крыніца /opt/intel/oneapi/setvars.sh
Linux (карыстальнік):
крыніца ~/intel/oneapi/setvars.sh
3. Асяроддзе ўстаноўкі
Выкарыстоўвайце наступныя зменныя асяроддзя, каб уключыць падтрымку адладчыка для Intel® oneAPI Level Zero:
экспарт ZET_ENABLE_PROGRAM_DEBUGGING=1
экспарт IGC_EnableGTLocationDebugging=1
4. Праверка сістэмы
Калі ўсё будзе гатова, запусціце наступную каманду, каб пацвердзіць, што канфігурацыя сістэмы надзейная:
python3 /path/to/intel/oneapi/diagnostics/latest/diagnostics.py –фільтр debugger_sys_check -force
Магчымы вынік добра наладжанай сістэмы наступны:
…
Вынікі праверкі:
===================================================== ================================
Назва праверкі: debugger_sys_check
Апісанне: гэтая праверка правярае, ці гатовае асяроддзе да выкарыстання gdb (Intel(R) Distribution for GDB*).
Статус выніку: ПРАХОДЗЕН
Адладчык знойдзены.
libipt знойдзены.
libiga знойдзены.
Адладка i915 уключана.
Зменныя асяроддзя правільныя. ===================================================== =================================
1 ПРАВЕРКА: 1 ПРАХОДЗЕНА, 0 ПАМОЛА, 0 ПАПЯРЭДЖАННЯЎ, 0 ПАМЫЛКАЎ
Кансольны выхад file: /path/to/logs/diagnostics_filter_debugger_sys_check_force.txt Вывад JSON file: /path/to/diagnostics/logs/diagnostics_filter_debugger_sys_check_force.json …
Скампілюйце праграму з інфармацыяй аб адладцы
Вы можаце выкарыстоўваць sampLe Project, Array Transform, каб хутка пачаць працу з адладчыкам прыкладанняў.
1. Каб атрымаць сample, абярыце любы з наступных спосабаў:
- Выкарыстоўвайце oneAPI CLI SampБраўзэр каб выбраць Пераўтварэнне масіва з катэгорыі Пачатак працы.
- Спампаваць з GitHub*.
2. Перайдзіце да src sampпраект:
cd array-transform/src
3. Скампілюйце прыкладанне, уключыўшы інфармацыю аб адладцы (сцяг -g) і адключыўшы аптымізацыю (сцяг -O0).
Рэкамендуецца адключыць аптымізацыю для стабільнага і дакладнага асяроддзя адладкі. Гэта дапамагае пазбегнуць блытаніны, выкліканай зменамі кода пасля аптымізацыі кампілятара.
УВАГА Вы ўсё яшчэ можаце скампіляваць праграму з уключанай аптымізацыяй (сцяг -O2), што можа быць карысна, калі вы нацэлены на адладку зборкі GPU.
Скампіляваць праграму можна некалькімі спосабамі. У варыянтах 1 і 2 выкарыстоўваецца своечасовая кампіляцыя (JIT), якая рэкамендуецца для адладкі сampле. Варыянт 3 выкарыстоўвае кампіляцыю з апярэджаннем (AOT).
- Варыянт 1. Вы можаце выкарыстоўваць CMake file каб наладзіць і стварыць прыкладанне. Звярніцеся да README з сample для інструкцый.
УВАГА CMake file пры ўмове сample ўжо перадае сцягі -g -O0.
- Варыянт 2. Скампіляваць array-transform.cpp sampПрыкладанне без CMake file, выканайце наступныя каманды:
icpx -fsycl -g -O0 пераўтварэнне масіва.cpp -o пераўтварэнне масіва
Калі кампіляцыя і спасылка выконваюцца асобна, захавайце сцягі -g -O0 на этапе спасылкі. Этап спасылкі - гэта калі icpx перакладае гэтыя сцягі для перадачы ў кампілятар прылады падчас выканання. напрыкладampль:
icpx -fsycl -g -O0 -c array-transform.cpp
icpx -fsycl -g -O0 пераўтварэнне масіва.o -o пераўтварэнне масіва
- Варыянт 3. Вы можаце выкарыстоўваць кампіляцыю AOT, каб пазбегнуць большага часу кампіляцыі JIT падчас выканання. JIT-кампіляцыя можа заняць значна больш часу для вялікіх ядраў пад адладчыкам. Каб выкарыстоўваць рэжым апярэджання кампіляцыі:
• Для адладкі на графічным працэсары:
Пакажыце прыладу, якую вы будзеце выкарыстоўваць для выканання праграмы. Напрыкладample, -device dg2-g10 для Intel® Data Center GPU Flex 140 Graphics. Для атрымання спісу падтрымоўваных опцый і дадатковай інфармацыі аб кампіляцыі AOT звярніцеся да Кіраўніцтва і даведнік распрацоўшчыка кампілятара Intel® oneAPI DPC++.
Напрыкладampль:
icpx -fsycl -g -O0 -fsycl-targets=spir64_gen -Xs “-device dg2-g10” array-transform.cpp -o arraytransform
Для папярэдняй кампіляцыі патрабуецца афлайн-кампілятар OpenCLTM (OC Compiler LOC). Для атрымання дадатковай інфармацыі звярніцеся да раздзела «Устаноўка аўтаномнага кампілятара OpenCLTM (OCLOC)». Кіраўніцтва па ўстаноўцы.
• Для адладкі на працэсары:
icpx -fsycl -g -O0 -fsycl-targets=spir64_x86_64 array-transform.cpp -o array-transform
Пачніце сеанс адладкі
Пачніце сеанс адладкі:
1. Запусціце Intel® Distribution для GDB* наступным чынам:
пераўтварэнне масіва gdb-oneapi
Вы павінны ўбачыць падказку (gdb).
2. Каб пераканацца, што ядро выгружана на патрэбную прыладу, выканайце наступныя дзеянні. Калі вы выконваеце каманду запуску з падказкі (gdb), перадайце працэсар, графічны працэсар or паскаральнік аргумент:
- Для адладкі на працэсары:
запусціць працэсар
Exampвывад:
[SYCL] Выкарыстанне прылады: [ЦЭСАР Intel(R) Core(TM) i7-9750H @ 2.60 Ггц] ад [Intel(R) OpenCL]- Для адладкі на графічным працэсары:
запусціць GPU
Exampвывад:
[SYCL] Выкарыстанне прылады: [Intel(R) Data Center GPU Flex Series 140 [0x56c1]] ад [Intel(R) LevelZero]- Для адладкі на FPGA-эмулятары:
паскаральнік запуску
Exampвывад:
[SYCL] Выкарыстанне прылады: [Intel(R) FPGA Emulation Device] ад [Intel(R) FPGA Emulation Platform for OpenCL(TM) software]УВАГА Параметры працэсара, графічнага працэсара і паскаральніка спецыфічныя для прыкладання Array Transform.
3. Каб выйсці з дыстрыбутыва Intel® для GDB*:
кінуць паліць
Для вашай зручнасці агульныя каманды Intel® Distribution for GDB* прадстаўлены ў Даведачны ліст.
Каб адладзіць пераўтварэнне масіва sample і даведайцеся больш пра Intel® Distribution for GDB*, азнаёмцеся з асноўнымі сцэнарыямі адладкі з дапамогай Падручнік.
Даведайцеся больш
Дакумент | Апісанне |
Падручнік: адладка з дапамогай дыстрыбутыва Intel® для GDB* | У гэтым дакуменце апісваюцца асноўныя сцэнарыі, якім трэба прытрымлівацца пры адладцы SYCL* і OpenCL з дапамогай Intel® Distribution for GDB*. |
Intel® Distribution for GDB* Кіраўніцтва карыстальніка | У гэтым дакуменце апісваюцца ўсе звычайныя задачы, якія вы можаце выканаць з дапамогай Intel® Distribution for GDB*, і даюцца неабходныя тэхнічныя дэталі. |
Заўвагі да выпуску дыстрыбутыва Intel® для GDB* | Нататкі ўтрымліваюць інфармацыю аб ключавых магчымасцях, новых функцыях і вядомых праблемах Intel® Distribution for GDB*. |
старонка прадукту oneAPI | На гэтай старонцы змяшчаецца кароткае ўвядзенне ў наборы інструментаў oneAPI і спасылкі на карысныя рэсурсы. |
Даведачны ліст Дыстрыбутыва Intel® для GDB* | Гэты аднастаронкавы дакумент коратка апісвае перадумовы і карысныя каманды Intel® Distribution for GDB*. |
Якабі Сample | Гэта маленькае прыкладанне SYCL* мае дзве версіі: з памылкамі і з выпраўленнем. Выкарыстоўвайце sample для выканання адладкі прыкладанняў з Intel® Distribution for GDB*. |
Заўвагі і адмова ад адказнасці
Тэхналогіі Intel могуць запатрабаваць актываванага абсталявання, праграмнага забеспячэння або актывацыі службы.
Ні адзін прадукт ці кампанент не можа быць абсалютна бяспечным.
Вашы выдаткі і вынікі могуць адрознівацца.
© Карпарацыя Intel. Intel, лагатып Intel і іншыя знакі Intel з'яўляюцца гандлёвымі маркамі карпарацыі Intel або яе даччыных кампаній. Іншыя назвы і брэнды могуць быць заяўлены як уласнасць іншых.
Гэты дакумент не дае ніякіх ліцэнзій (яўных або пэўных, па законе або іншым чынам) на правы інтэлектуальнай уласнасці.
Апісаныя прадукты могуць утрымліваць канструктыўныя дэфекты або памылкі, вядомыя як памылкі, якія могуць прывесці да адхілення прадукту ад апублікаваных спецыфікацый. Бягучыя характарыстыкі памылак даступныя па запыце.
Intel адмаўляецца ад усіх відавочных і пэўных гарантый, уключаючы, без абмежавання, падразумныя гарантыі таварнасці, прыдатнасці для пэўнай мэты і адсутнасці парушэнняў, а таксама любыя гарантыі, якія вынікаюць з ходу працы, ходу здзелак або выкарыстання ў гандлі.
OpenCL і лагатып OpenCL з'яўляюцца гандлёвымі маркамі Apple Inc., якія выкарыстоўваюцца з дазволу Khronos.
Дакументы / Рэсурсы
![]() |
Дыстрыбутыў Intel для GDB на хасце АС Linux [pdfКіраўніцтва карыстальніка Дыстрыбутыў для GDB на АС Linux Host, GDB на Linux OS Host, Linux OS Host, OS Host, Host |