Linux* OS Хостунда GDB* үчүн Intel® Distribution менен баштаңыз
Мүчүлүштүктөрдү оңдоо колдонмолору үчүн Intel® Distribution for GDB* колдонуп баштаңыз. CPU жана GPU түзмөктөрүнө жүктөлгөн ядролору бар колдонмолорду мүчүлүштүктөрдү оңдоо үчүн мүчүлүштүктөрдү оңдоо үчүн төмөнкү нускамаларды аткарыңыз.
Intel® Distribution for GDB* Intel® oneAPI Base Toolkitтин бир бөлүгү катары жеткиликтүү. oneAPI инструменттери жөнүндө көбүрөөк маалымат алуу үчүн, баш багыңыз продукт бет.
зыярат кылыңыз Release Notes негизги мүмкүнчүлүктөр, жаңы мүмкүнчүлүктөр жана белгилүү маселелер жөнүндө маалымат алуу үчүн бет.
Сиз SYCL* с колдоно аласызampGDB* үчүн Intel® Distribution менен баштоо үчүн, Array Transform коду. сample каталарды жаратпайт жана жөн гана мүчүлүштүктөрдү оңдоонун өзгөчөлүктөрүн көрсөтөт. Код киргизүү массивинин элементтерин алардын жуп же так экенине жараша иштетет жана чыгаруу массивин чыгарат. s колдоно аласызampбуйрук сабынын аргументи аркылуу тандалган түзмөктү көрсөтүү менен CPU же GPU экөө тең мүчүлүштүктөрдү оңдоо үчүн. GPU мүчүлүштүктөрүн оңдоо эки системаны жана алыстан мүчүлүштүктөрдү оңдоо үчүн кошумча конфигурацияны талап кылышы мүмкүн экенин эске алыңыз.
Пререквизиттер
Эгер сиз GPUде мүчүлүштүктөрдү оңдоону максат кылсаңыз, эң акыркы GPU драйверлерин орнотуп, системаңызды аларды колдонууга конфигурациялаңыз. караңыз Linux* OS үчүн Intel® oneAPI Toolkits орнотуу колдонмосу. Көрсөтмөлөрдү аткарыңыз Intel GPU драйверлерин орнотуу системаңызга дал келген GPU драйверлерин орнотуу үчүн.
Кошумча, сиз GDB* үчүн Intel® Distribution менен GPU мүчүлүштүктөрүн оңдоо үчүн Visual Studio Code* кеңейтүүсүн орното аласыз. караңыз Intel® oneAPI Toolkits Guide менен Visual Studio Code колдонуу.
GPU мүчүлүштүктөрдү орнотуу
GPU мүчүлүштүктөрдү орнотуу үчүн, сизде тамыр мүмкүнчүлүгү болушу керек.
ЭСКЕРТҮҮ Ядро мүчүлүштүктөрүн оңдоо учурунда GPU токтойт жана видео чыгаруу максаттуу машинаңызда жеткиликсиз болот. Ушундан улам, эгер системанын GPU картасы графикалык чыгаруу үчүн да колдонулса, сиз максаттуу тутумдан GPUди оңдоого болбойт. Бул учурда, ssh аркылуу машинага туташуу.
1. Эгер сиз GPUде мүчүлүштүктөрдү оңдоону максат кылсаңыз, GPU мүчүлүштүктөрүн оңдоону колдогон Linux ядросу керек.
a. дарегиндеги нускамаларды аткарыңыз Жалпы максаттагы GPU мүмкүнчүлүктөрү үчүн Intel® программасы керектүү драйверлерди жүктөп алуу жана орнотуу.
b. Ядродо i915 мүчүлүштүктөрдү оңдоону иштетүү:
a. Терминалды ачыңыз.
b. Топту ач file /etc/default ичинде.
c. Топто file, GRUB_CMDLINE_LINUX_DEFAULT=” сызыгын табыңыз.
d. Тырмакчалардын арасына төмөнкү текстти киргизиңиз («»):
i915.debug_eu=1
ЭСКЕРТҮҮ Демейки боюнча, GPU драйвери жумуш жүктөмүнүн GPUде белгилүү бир убакыттан узак иштөөсүнө уруксат бербейт. Айдоочу илинип калбашы үчүн GPUну баштапкы абалга келтирүү менен мындай узакка созулган жүктөрдү өлтүрөт. Колдонмо мүчүлүштүктөрдү оңдоочу астында иштеп жатса, драйвердин hangcheck механизми өчүрүлгөн. Эгер сиз мүчүлүштүктөрдү оңдоочу тиркелбестен узак эсептөө жүктөмдөрүн иштетүүнү пландап жатсаңыз, колдонууну карап көрүңүз GPU: Hangcheckти өчүрүү кошуу менен
i915.enable_hangcheck=0
ошол эле GRUB_CMDLINE_LINUX_DEFAULT линиясы.
c. Бул өзгөртүүлөр күчүнө кириши үчүн GRUB жаңыртыңыз:
sudo update-grub
d. Кайра жүктөө.
2. Куралдар топтомун орнотуунун тамырында жайгашкан setvars скриптин булак аркылуу CLI чөйрөңүздү орнотуңуз.
Linux (sudo):
source /opt/intel/oneapi/setvars.sh
Linux (колдонуучу):
source ~/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 –filter debugger_sys_check -force
Жакшы конфигурацияланган системанын мүмкүн болуучу натыйжасы төмөнкүдөй:
…
Текшерүү натыйжалары:
================================================== ===============================
Текшерүү аты: debugger_sys_check
Сүрөттөмө: Бул текшерүү чөйрө gdb (GDB үчүн Intel(R) Distribution*) колдонууга даяр экендигин текшерет.
Натыйжа статусу: PASS
Мүчүлүштүктөрдү оңдоочу табылды.
libipt табылган.
либиги табылды.
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 …
Мүчүлүштүктөрдү аныктоо маалыматы менен программаны түзүңүз
s колдоно аласызampКолдонмонун мүчүлүштүктөрүн оңдоочу менен тез баштоо үчүн, Array Transform долбоору.
1. с алуу үчүнample, төмөнкү жолдордун бирин тандаңыз:
- oneAPI CLI S колдонуңузamples Browser Баштоо категориясынан Array Transform тандаңыз.
- тартып жүктөп алуу GitHub*.
2. s src ге өтүңүзampпроект:
cd array-transform/src
3. Мүчүлүштүктөрдү оңдоо маалыматын иштетүү (-g желек) жана оптималдаштырууларды өчүрүү (-O0 желек) менен колдонмону түзүңүз.
Туруктуу жана так мүчүлүштүктөрдү оңдоо чөйрөсү үчүн оптималдаштырууну өчүрүү сунушталат. Бул компиляторду оптималдаштыруудан кийин коддун өзгөрүшүнө байланыштуу башаламандыктан качууга жардам берет.
ЭСКЕРТҮҮ Сиз дагы эле программаны оптималдаштыруу иштетилген (-O2 желеги) менен компиляциялай аласыз, ал GPU монтажын мүчүлүштүктөрдү оңдоону максат кылсаңыз, пайдалуу болушу мүмкүн.
Программаны бир нече жол менен түзө аласыз. 1 жана 2-параметрлер өз убагында (JIT) компиляциясын колдонушат, аны оңдоо үчүн сунушталат.ample. 3-вариант мөөнөтүнөн мурда (AOT) компиляциясын колдонот.
- 1-вариант. Сиз CMake колдоно аласыз file конфигурациялоо жана колдонмону куруу үчүн. караңыз README сampкөрсөтмөлөр үчүн.
ЭСКЕРТҮҮ The CMake file с менен камсыз кылынатample мурунтан эле -g -O0 желектери өтүп жатат.
- Option 2. Array-transform.cpp s компиляциялоо үчүнampCMake жок колдонмо file, төмөнкү буйруктарды чыгарыңыз:
icpx -fsycl -g -O0 array-transform.cpp -o массив-трансформация
Эгерде компиляция жана байланыштыруу өзүнчө жасалса, шилтеме кадамында -g -O0 желектерин сактаңыз. Шилтеме кадамы icpx бул желектерди иштөө учурунда түзмөк компиляторуна өткөрүү үчүн которгондо болот. Мисampле:
icpx -fsycl -g -O0 -c array-transform.cpp
icpx -fsycl -g -O0 массив-transform.o -o массив-трансформация
- Вариант 3. Иштөө убагында JIT компиляциясынын узак убакыттарын болтурбоо үчүн AOT компиляциясын колдонсоңуз болот. JIT компиляциясы мүчүлүштүктөрдү оңдоочу астындагы чоң өзөктөр үчүн кыйла узакка созулушу мүмкүн. Алдын ала компиляция режимин колдонуу үчүн:
• GPUде мүчүлүштүктөрдү оңдоо үчүн:
Программаны аткаруу үчүн колдоно турган аппаратты көрсөтүңүз. Мисалы үчүн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 Offline Compiler (OC Compiler LOC) талап кылынат. Көбүрөөк маалымат алуу үчүн, "OpenCLTM Offline Compiler (OCLOC) орнотуу" бөлүмүн караңыз Орнотуу боюнча колдонмо.
• CPUда мүчүлүштүктөрдү оңдоо үчүн:
icpx -fsycl -g -O0 -fsycl-targets=spir64_x86_64 array-transform.cpp -o массив-трансформация
Мүчүлүштүктөрдү оңдоо сессиясын баштоо
Мүчүлүштүктөрдү оңдоо сеансын баштоо:
1. GDB* үчүн Intel® Distribution программасын төмөнкүдөй баштаңыз:
gdb-oneapi массив-трансформация
Сиз (gdb) чакырууну көрүшүңүз керек.
2. Ядро туура түзмөккө түшүрүлгөнүн текшерүү үчүн, төмөнкү кадамдарды жасаңыз. (gdb) чакыруудан иштетүү буйругун аткарганда, өтүңүз cpu, gpu or акселератор аргумент:
- CPUда мүчүлүштүктөрдү оңдоо үчүн:
cpu иштетүү
Exampчыгаруу:
[SYCL] Түзмөктү колдонуу: [Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz] тартып [Intel(R) OpenCL]- GPUде мүчүлүштүктөрдү оңдоо үчүн:
gpu иштетүү
Exampчыгаруу:
[SYCL] Түзмөктү колдонуу: [Intel(R) Data Center GPU Flex Series 140 [0x56c1]] тартып [Intel(R) LevelZero]- FPGA эмуляторунда мүчүлүштүктөрдү оңдоо үчүн:
тездеткичти иштетүү
Exampчыгаруу:
[SYCL] Түзмөктү колдонуу: [Intel(R) FPGA эмуляция түзмөгү] [OpenCL(TM) программасы үчүн Intel(R) FPGA эмуляция платформасынан]ЭСКЕРТҮҮ cpu, gpu жана акселератор параметрлери Array Transform тиркемесинин өзгөчөлүгү болуп саналат.
3. GDB* үчүн Intel® Distribution программасынан чыгуу үчүн:
таштоо
Сиздин ынгайлуулугуңуз үчүн, GDB* үчүн жалпы Intel® Distribution буйруктарында берилген Маалымат баракчасы.
Массив трансформациясын оңдоо үчүн sample жана GDB* үчүн Intel® Distribution жөнүндө көбүрөөк билип алыңыз, мүчүлүштүктөрдү оңдоонун негизги сценарийлери аркылуу Окуу куралы.
Көбүрөөк билүү
Документ | Description |
Окуу куралы: GDB үчүн Intel® Distribution менен мүчүлүштүктөрдү оңдоо* | Бул документ GDB* үчүн Intel® Distribution менен SYCL* жана OpenCL мүчүлүштүктөрүн оңдоодо аткарыла турган негизги сценарийлерди сүрөттөйт. |
GDB* үчүн Intel® Distribution Колдонуучунун колдонмосу | Бул документ Intel® Distribution for GDB* менен бүтүрө ала турган бардык жалпы тапшырмаларды сүрөттөйт жана керектүү техникалык маалыматтарды берет. |
GDB* үчүн Intel® Distribution Release Notes | Эскертүүлөрдө Intel® Distribution for GDB* программасынын негизги мүмкүнчүлүктөрү, жаңы мүмкүнчүлүктөрү жана белгилүү маселелери жөнүндө маалымат камтылган. |
oneAPI продукт бети | Бул баракча oneAPI инструменттери боюнча кыскача киришүүнү жана пайдалуу ресурстарга шилтемелерди камтыйт. |
GDB* үчүн Intel® Distribution Маалымат баракчасы | Бул бир барактан турган документ GDB* үчүн Intel® Distribution программасын жана пайдалуу буйруктарды кыскача сүрөттөйт. |
Якоби Сample | Бул кичинекей SYCL* тиркемесинин эки версиясы бар: катасы бар жана оңдолгон. с колдонуңузampGDB* үчүн Intel® Distribution менен колдонмонун мүчүлүштүктөрүн оңдоону ишке ашыруу. |
Эскертүүлөр жана баш тартуулар
Intel технологиялары иштетилген жабдыкты, программалык камсыздоону же кызматты жандантууну талап кылышы мүмкүн.
Эч бир продукт же компонент толугу менен коопсуз боло албайт.
Сиздин чыгымдарыңыз жана натыйжаларыңыз ар кандай болушу мүмкүн.
© Intel Corporation. Intel, Intel логотиби жана башка Intel белгилери Intel корпорациясынын же анын туунду компанияларынын соода белгилери болуп саналат. Башка аталыштар жана бренддер башкалардын менчиги катары талап кылынышы мүмкүн.
Бул документ тарабынан эч кандай интеллектуалдык менчик укуктарына эч кандай лицензия (экстоппел же башка жол менен ачык же кыйыр түрдө) берилбейт.
Сүрөттөлгөн өнүмдөр дизайн кемчиликтерин же ката деп аталган каталарды камтышы мүмкүн, алар продукттун жарыяланган спецификациялардан четтеп кетишине алып келиши мүмкүн. Учурдагы мүнөздөлгөн каталар суроо-талабы боюнча жеткиликтүү.
Intel бардык ачык жана кыйыр кепилдиктерден баш тартат, анын ичинде чектөөсүз, сатууга жарамдуулугун, белгилүү бир максатка ылайыктуулугун жана укук бузууга жол бербөө кепилдиктерин, ошондой эле аткаруунун жүрүшүнөн, сооданын жүрүшүнөн же соодада колдонуудан келип чыккан ар кандай кепилдиктер.
OpenCL жана OpenCL логотиби Apple Inc. компаниясынын Khronos уруксаты менен колдонулган соода белгилери.
Документтер / Ресурстар
![]() |
Linux OS Хостунда GDB үчүн intel Distribution [pdf] Колдонуучунун колдонмосу Linux OS Хостунда GDB үчүн бөлүштүрүү, Linux OS Хостунда GDB, Linux OS Хост, OS Хост, Хост |