په لینکس * OS کوربه کې د GDB * لپاره د Intel® توزیع سره پیل وکړئ
د ډیبګ کولو غوښتنلیکونو لپاره د GDB * لپاره د Intel® توزیع کارول پیل کړئ. د CPU او GPU وسیلو ته د افلوډ شوي کرنلونو سره غوښتنلیکونو ډیبګ کولو لپاره د ډیبګر تنظیم کولو لپاره لاندې لارښوونې تعقیب کړئ.
د GDB لپاره Intel® توزیع د Intel® oneAPI بیس Toolkit د یوې برخې په توګه شتون لري. د OneAPI toolkits په اړه د نورو معلوماتو لپاره، لیدنه وکړئ د محصول پاڼه.
لیدنه وکړئ د خوشې یادښتونه د مهمو وړتیاوو، نویو ځانګړتیاوو، او پیژندل شویو مسلو په اړه د معلوماتو لپاره پاڼه.
تاسو کولی شئ د SYCL*s څخه کار واخلئample code، Array Transform، د GDB* لپاره د Intel® ویش سره پیل کولو لپاره. د سample غلطۍ نه رامینځته کوي او په ساده ډول د ډیبګر ځانګړتیاوې روښانه کوي. کوډ د ان پټ سرې عناصر پروسس کوي پدې پورې اړه لري چې ایا دوی مساوي یا عجیب دي او د محصول سري تولیدوي. تاسو کولی شئ د s څخه کار واخلئampد CPU یا GPU دواړو ډیبګ کولو لپاره ، د کمانډ لاین دلیل له لارې غوره شوي وسیله مشخص کول. په یاد ولرئ که څه هم د GPU ډیبګ کول ممکن دوه سیسټمونو او د ریموټ ډیبګ کولو لپاره اضافي تشکیلاتو ته اړتیا ولري.
شرطونه
که تاسو په GPU کې د ډیبګ کولو هدف لرئ ، وروستي GPU ډرایورونه نصب کړئ او خپل سیسټم یې د کارولو لپاره تنظیم کړئ. ته مراجعه وکړئ Intel® oneAPI Toolkits نصبولو لارښود د لینکس* OS لپاره. لارښوونې تعقیب کړئ د Intel GPU ډرایورونه نصب کړئ د GPU ډرایورانو نصبولو لپاره چې ستاسو سیسټم سره سمون لري.
سربیره پردې ، تاسو کولی شئ د GDB لپاره د Intel® توزیع سره د GPU ډیبګ کولو لپاره د بصری سټوډیو کوډ * لپاره توسیع نصب کړئ *. ته مراجعه وکړئ د Intel® oneAPI Toolkits لارښود سره د بصری سټوډیو کوډ کارول.
د GPU ډیبګر تنظیم کړئ
د GPU ډیبګر تنظیم کولو لپاره ، تاسو باید روټ لاسرسی ولرئ.
نوټ د کرنل ډیبګ کولو پرمهال ، GPU ودرول شوی او د ویډیو محصول ستاسو په نښه شوي ماشین کې شتون نلري. د دې له امله، تاسو نشئ کولی د هدف سیسټم څخه GPU ډیبګ کړئ که چیرې د سیسټم GPU کارت د ګرافیکي محصول لپاره هم کارول کیږي. په دې حالت کې، د ssh له لارې ماشین سره وصل کړئ.
1. که تاسو په GPU کې د ډیبګ کولو هدف یاست ، د لینکس کرنل چې د GPU ډیبګ کولو ملاتړ کوي اړتیا لري.
a. په لارښوونو کې تعقیب کړئ Intel® سافټویر د عمومي هدف GPU وړتیاو لپاره د اړین ډرایورونو ډاونلوډ او نصبولو لپاره.
b. په کرنل کې د i915 ډیبګ ملاتړ فعال کړئ:
a. یو ټرمینل خلاص کړئ.
b. ګروب خلاص کړئ file په /etc/default کې.
c. په ګروب کې file، د GRUB_CMDLINE_LINUX_DEFAULT=”” کرښه ومومئ.
d. د نرخونو په مینځ کې لاندې متن دننه کړئ (""):
i915.debug_eu=1
نوټ په ډیفالټ ډول، د GPU ډرایور د کار بارونو ته اجازه نه ورکوي چې په GPU کې د یو ټاکلي وخت څخه ډیر وخت تیر شي. ډرایور د ځړولو مخنیوي لپاره د GPU بیا تنظیمولو سره دا ډول اوږدمهاله کاري بارونه وژني. د ډرایور د هینګ چیک میکانیزم غیر فعال دی که چیرې غوښتنلیک د ډیبګر لاندې روان وي. که تاسو پلان لرئ چې اوږد کمپیوټري کاري بارونه هم پرمخ بوځي پرته لدې چې ډیبګر ضمیمه شي ، غوښتنلیک ته پام وکړئ GPU: هینګ چیک غیر فعال کړئ په اضافه کولو سره
i915.enable_hangcheck=0
ورته ته GRUB_CMDLINE_LINUX_DEFAULT کرښه.
c. د دې بدلونونو د پلي کیدو لپاره GRUB تازه کړئ:
sudo update-grub
d. ریبوټ.
2. خپل د CLI چاپیریال تنظیم کړئ د سیټوار سکریپټ سورس کولو سره چې ستاسو د وسیلې کټ نصب کولو ریښې کې موقعیت لري.
لینکس (sudo):
سرچینه /opt/intel/oneapi/setvars.sh
لینکس (کاروونکی):
سرچینه ~/intel/oneapi/setvars.sh
3. د چاپیریال تنظیم کول
د Intel® oneAPI لیول صفر لپاره د ډیبګر ملاتړ فعالولو لپاره لاندې چاپیریال تغیرات وکاروئ:
صادرات ZET_ENABLE_PROGRAM_DEBUGGING=1
صادرول IGC_EnableGTLocationDebgging=1
4. د سیسټم چک
کله چې هرڅه چمتو وي، مهرباني وکړئ لاندې کمانډ چل کړئ ترڅو تایید کړئ چې د سیسټم ترتیب د اعتبار وړ دی:
python3 /path/to/intel/oneapi/diagnostics/latest/diagnostics.py –filter debugger_sys_check -force
د ښه ترتیب شوي سیسټم احتمالي محصول په لاندې ډول دی:
…
پایلې چک کوي:
========================================= ===========================
نوم چک کړئ: debugger_sys_check
توضیحات: دا چک تاییدوي که چیرې چاپیریال د GDB لپاره د GDB (Intel (R) توزیع کارولو لپاره چمتو وي *).
د پایلې حالت: PASS
Debugger وموندل شو.
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…
برنامه د ډیبګ معلوماتو سره تالیف کړئ
تاسو کولی شئ د s څخه کار واخلئample پروژه، Array Transform، د غوښتنلیک ډیبګر سره ژر تر ژره پیل کولو لپاره.
1. د ترلاسه کولو لپارهampد لاندې لارو څخه کومه یوه غوره کړئ:
- د OneAPI CLI S وکاروئamples براوزر د پیل کولو کټګورۍ څخه د اری ټرانسفارم غوره کولو لپاره.
- څخه ډاونلوډ کړئ GitHub*.
2. د src ته لاړ شئampد پروژې:
cd array-transform/src
3. د ډیبګ معلوماتو (-g پرچم) فعالولو او د اصلاح کولو (-O0 پرچم) په فعالولو سره غوښتنلیک تالیف کړئ.
د باثباته او دقیق ډیبګ چاپیریال لپاره د اصلاح کولو غیر فعال کول وړاندیز کیږي. دا د کمپیلر اصلاح کولو وروسته په کوډ کې د بدلونونو له امله رامینځته شوي ګډوډي مخنیوي کې مرسته کوي.
نوټ تاسو لاهم کولی شئ برنامه د اصلاح فعال شوي (-O2 پرچم) سره تالیف کړئ ، کوم چې ګټور کیدی شي که تاسو د GPU مجلس ډیبګ کولو هدف لرئ.
تاسو کولی شئ برنامه په څو لارو تالیف کړئ. 1 او 2 اختیارونه یوازې په وخت کې (JIT) تالیف کاروي، کوم چې د s ډیبګ کولو لپاره وړاندیز کیږيample. اختیار 3 د وخت څخه مخکې (AOT) تالیف کاروي.
- اختیار 1. تاسو کولی شئ د CMake څخه کار واخلئ file د اپلیکیشن تنظیم او جوړولو لپاره. ته مراجعه وکړئ README د sampد لارښوونو لپاره.
نوټ CMake file د s سره چمتو شویample دمخه د -g -O0 بیرغونه تیریږي.
- اختیار 2. د array-transform.cpp s تالیف کولو لپارهampد CMake پرته غوښتنلیک file، لاندې حکمونه صادر کړئ:
icpx -fsycl -g -O0 array-transform.cpp -o array-transform
که تالیف او لینک کول په جلا توګه ترسره شي، د لینک په مرحله کې -g -O0 بیرغونه وساتئ. د لینک ګام هغه وخت دی کله چې icpx دا بیرغونه وژباړي ترڅو د چلولو په وخت کې د وسیلې کمپیلر ته انتقال شي. ExampLe:
icpx -fsycl -g -O0 -c array-transform.cpp
icpx -fsycl -g -O0 array-transform.o -o array-transform
- اختیار 3. تاسو کولی شئ د AOT تالیف وکاروئ ترڅو د چلولو په وخت کې د اوږدې JIT تالیف وخت څخه مخنیوی وکړئ. د JIT تالیف کولی شي د ډیبګر لاندې لوی دانا لپاره د پام وړ ډیر وخت ونیسي. د وخت څخه مخکې د تالیف حالت کارولو لپاره:
• په GPU کې د ډیبګ کولو لپاره:
هغه وسیله مشخص کړئ چې تاسو به یې د پروګرام اجرا کولو لپاره کاروئ. د مثال لپارهample، -device dg2-g10 د Intel® ډیټا سنټر GPU فلیکس 140 ګرافیک لپاره. د ملاتړ شوي اختیارونو لیست او د AOT تالیف په اړه د نورو معلوماتو لپاره ، مراجعه وکړئ Intel® oneAPI DPC++ کمپیلر جوړونکي لارښود او حواله.
د مثال لپارهampLe:
icpx -fsycl -g -O0 -fsycl-targets=spir64_gen -Xs "-device dg2-g10" array-transform.cpp -o arraytransform
د وخت څخه دمخه تالیف د OpenCLTM آفلاین کمپیلر (OC کمپیلر LOC) ته اړتیا لري. د نورو معلوماتو لپاره، د "Install OpenCLTM Offline Compiler (OCLOC)" برخې ته مراجعه وکړئ د نصبولو لارښود.
• په CPU کې د ډیبګ کولو لپاره:
icpx -fsycl -g -O0 -fsycl-targets=spir64_x86_64 array-transform.cpp -o array-transform
د ډیبګ سیشن پیل کړئ
د ډیبګ سیشن پیل کړئ:
1. د GDB * لپاره Intel® توزیع په لاندې ډول پیل کړئ:
gdb-oneapi array-transform
تاسو باید د (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® توزیع پریښودو لپاره:
پریږده
ستاسو د اسانتیا لپاره، د GDB * کمانډونو لپاره عام Intel® توزیع په کې چمتو شوي د حوالې پاڼه.
د Array Transform s debug کولو لپارهampد GDB * لپاره د Intel® توزیع په اړه نور معلومات زده کړئ ، د دې په کارولو سره د لومړني ډیبګ کولو سناریوګانو له لارې لاړشئ ټیوټوریل.
نور زده کړئ
سند | تفصیل |
ټیوټوریل: د GDB لپاره د Intel® توزیع سره ډیبګ کول * | دا سند د GDB لپاره د Intel® توزیع سره د SYCL* او OpenCL ډیبګ کولو پرمهال د تعقیب لومړني سناریوګانې بیانوي. |
د GDB * کارن لارښود لپاره Intel® توزیع | دا سند ټول عام کارونه بیانوي چې تاسو یې د GDB لپاره د Intel® ویش سره بشپړ کولی شئ او اړین تخنیکي توضیحات وړاندې کوي. |
د GDB لپاره Intel® توزیع* د خوشې یادښتونه | یادښتونه د کلیدي وړتیاوو، نوي ځانګړتیاوو، او د GDB لپاره د Intel® توزیع پیژندل شوي مسلو په اړه معلومات لري. |
oneAPI محصول پاڼه | دا پاڼه د OneAPI وسیلې په اړه لنډه پیژندنه او د ګټورو سرچینو لینکونه لري. |
د GDB لپاره Intel® توزیع* د حوالې شیټ | دا د یو مخ سند په لنډه توګه د GDB * شرطونو او ګټورو امرونو لپاره د Intel® توزیع تشریح کوي. |
جیکوبي ایسample | دا کوچنی SYCL* غوښتنلیک دوه نسخې لري: بګ شوی او فکس شوی. د سampد GDB* لپاره د Intel® توزیع سره د غوښتنلیک ډیبګ کولو تمرین کولو لپاره. |
خبرتیاوې او اعلانونه
انٹیل ټیکنالوژي ممکن وړ هارډویر ، سافټویر یا خدمت فعالولو ته اړتیا ولري.
هیڅ محصول یا برخه نشي کولی په بشپړ ډول خوندي وي.
ستاسو لګښتونه او پایلې ممکن توپیر ولري.
© Intel Corporation. Intel، د Intel لوگو، او د Intel نورې نښې د Intel Corporation یا د هغې د فرعي شرکتونو سوداګریزې نښې دي. نور نومونه او نښې ممکن د نورو ملکیت په توګه ادعا شي.
د دې سند لخوا د فکري ملکیت حقونو ته هیڅ جواز (ظاهري یا ضمیمه ، د ایسټوپیل یا بل ډول) نه ورکول کیږي.
تشریح شوي محصولات ممکن د ډیزاین نیمګړتیاوې یا غلطۍ ولري چې د خطا په نوم پیژندل کیږي کوم چې ممکن محصول د خپاره شوي مشخصاتو څخه انحراف لامل شي. اوسني مشخصات شوي خطا په غوښتنه کې شتون لري.
Intel ټول څرګند او ضمیمه تضمینونه ردوي، پشمول د محدودیت پرته، د سوداګریزې وړتیا تضمین شوي تضمین، د یو ځانګړي هدف لپاره فټنس، او غیر سرغړونې، او همدارنګه د فعالیت، معاملې کورس، یا په سوداګرۍ کې د کارونې له لارې هر ډول تضمین.
OpenCL او OpenCL لوگو د Apple Inc. سوداګریزې نښې دي چې د Khronos لخوا په اجازې کارول کیږي.
اسناد / سرچینې
![]() |
په لینکس OS کوربه کې د GDB لپاره د انټل توزیع [pdf] د کارونکي لارښود د لینکس OS کوربه کې د GDB لپاره توزیع، د لینکس OS کوربه کې GDB، د لینکس OS کوربه، OS کوربه، کوربه |