په لینکس * 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د لاندې لارو څخه کومه یوه غوره کړئ:

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 کوربه، کوربه

حوالې

یو نظر پریږدئ

ستاسو بریښنالیک پته به خپره نشي. اړین ساحې په نښه شوي *