Linux* OS ஹோஸ்டில் GDB*க்கான Intel® Distribution உடன் தொடங்கவும்
பிழைத்திருத்த பயன்பாடுகளுக்கு GDB*க்கான Intel® Distribution ஐப் பயன்படுத்தத் தொடங்குங்கள். CPU மற்றும் GPU சாதனங்களில் ஆஃப்லோட் செய்யப்பட்ட கர்னல்களுடன் பயன்பாடுகளை பிழைத்திருத்தம் செய்ய பிழைத்திருத்தியை அமைக்க கீழே உள்ள வழிமுறைகளைப் பின்பற்றவும்.
GDBக்கான Intel® Distribution* Intel® oneAPI பேஸ் டூல்கிட்டின் ஒரு பகுதியாக கிடைக்கிறது. OneAPI கருவித்தொகுப்புகள் பற்றிய கூடுதல் தகவலுக்கு, ஐப் பார்வையிடவும் தயாரிப்பு பக்கம்.
பார்வையிடவும் வெளியீட்டு குறிப்புகள் முக்கிய திறன்கள், புதிய அம்சங்கள் மற்றும் அறியப்பட்ட சிக்கல்கள் பற்றிய தகவலுக்கான பக்கம்.
நீங்கள் SYCL*s ஐப் பயன்படுத்தலாம்ample code, Array Transform, GDBக்கான Intel® Distribution உடன் தொடங்குவதற்கு*. எஸ்ample பிழைகளை உருவாக்காது மற்றும் பிழைத்திருத்த அம்சங்களை எளிமையாக விளக்குகிறது. குறியீடானது உள்ளீட்டு வரிசையின் கூறுகளை அவை சமமானதா அல்லது ஒற்றைப்படையா என்பதைப் பொறுத்து செயலாக்குகிறது மற்றும் வெளியீட்டு வரிசையை உருவாக்குகிறது. நீங்கள் s ஐப் பயன்படுத்தலாம்ample CPU அல்லது GPU இரண்டிலும் பிழைத்திருத்தம் செய்ய, கட்டளை வரி வாதத்தின் மூலம் தேர்ந்தெடுக்கப்பட்ட சாதனத்தைக் குறிப்பிடுகிறது. GPU பிழைத்திருத்தத்திற்கு இரண்டு அமைப்புகள் மற்றும் தொலைநிலை பிழைத்திருத்தத்திற்கான கூடுதல் கட்டமைப்பு தேவைப்படலாம் என்பதை நினைவில் கொள்ளவும்.
முன்நிபந்தனைகள்
நீங்கள் GPU இல் பிழைத்திருத்தம் செய்ய விரும்பினால், சமீபத்திய GPU இயக்கிகளை நிறுவி, அவற்றைப் பயன்படுத்த உங்கள் கணினியை உள்ளமைக்கவும். பார்க்கவும் Linux* OSக்கான Intel® oneAPI கருவித்தொகுப்பு நிறுவல் வழிகாட்டி. வழிமுறைகளைப் பின்பற்றவும் Intel GPU இயக்கிகளை நிறுவவும் உங்கள் கணினியுடன் பொருந்தக்கூடிய GPU இயக்கிகளை நிறுவ.
கூடுதலாக, GDBக்கான Intel® Distribution உடன் GPU பிழைத்திருத்தத்திற்கு விஷுவல் ஸ்டுடியோ குறியீடு* நீட்டிப்பை நிறுவலாம். பார்க்கவும் Intel® oneAPI கருவித்தொகுப்பு வழிகாட்டியுடன் விஷுவல் ஸ்டுடியோ குறியீட்டைப் பயன்படுத்துதல்.
GPU பிழைத்திருத்தியை அமைக்கவும்
GPU பிழைத்திருத்தியை அமைக்க, உங்களிடம் ரூட் அணுகல் இருக்க வேண்டும்.
குறிப்பு கர்னல் பிழைத்திருத்தத்தின் போது, GPU நிறுத்தப்படும் மற்றும் உங்கள் இலக்கு கணினியில் வீடியோ வெளியீடு கிடைக்காது. இதன் காரணமாக, கணினியின் GPU அட்டை வரைகலை வெளியீட்டிற்கும் பயன்படுத்தப்பட்டால், இலக்கு அமைப்பிலிருந்து GPU ஐ பிழைத்திருத்த முடியாது. இந்த வழக்கில், ssh வழியாக இயந்திரத்துடன் இணைக்கவும்.
1. நீங்கள் GPU இல் பிழைத்திருத்தம் செய்ய விரும்பினால், GPU பிழைத்திருத்தத்தை ஆதரிக்கும் Linux Kernel தேவை.
a. இல் உள்ள வழிமுறைகளைப் பின்பற்றவும் பொது நோக்கத்திற்கான GPU திறன்களுக்கான Intel® மென்பொருள் தேவையான இயக்கிகளைப் பதிவிறக்கி நிறுவவும்.
b. கர்னலில் i915 பிழைத்திருத்த ஆதரவை இயக்கவும்:
a. ஒரு முனையத்தைத் திறக்கவும்.
b. க்ரப்பைத் திறக்கவும் file /etc/default இல்.
c. கிரப்பில் file, GRUB_CMDLINE_LINUX_DEFAULT=”” என்ற வரியைக் கண்டறியவும்.
d. மேற்கோள்களுக்கு இடையே பின்வரும் உரையை உள்ளிடவும் (""):
i915.debug_eu=1
குறிப்பு இயல்பாக, GPU இயக்கி ஒரு குறிப்பிட்ட நேரத்தை விட GPU இல் பணிச்சுமைகளை இயக்க அனுமதிக்காது. தொங்குவதைத் தடுக்க, ஜிபியுவை மீட்டமைப்பதன் மூலம் இயக்கி, நீண்டகாலமாக இயங்கும் பணிச்சுமைகளைக் கொன்றுவிடுகிறது. பிழைத்திருத்தத்தின் கீழ் பயன்பாடு இயங்கினால் இயக்கியின் ஹேங்செக் மெக்கானிசம் முடக்கப்படும். பிழைத்திருத்தி இணைக்கப்படாமல் நீண்ட கணக்கீட்டு பணிச்சுமைகளை இயக்க நீங்கள் திட்டமிட்டால், விண்ணப்பிக்கவும் GPU: ஹேங்செக்கை முடக்கு சேர்ப்பதன் மூலம்
i915.enable_hangcheck=0
அதே GRUB_CMDLINE_LINUX_DEFAULT வரி.
c. இந்த மாற்றங்கள் நடைமுறைக்கு வர GRUBஐப் புதுப்பிக்கவும்:
sudo update-grub
d. மறுதொடக்கம்.
2. உங்கள் டூல்கிட் நிறுவலின் மூலத்தில் அமைந்துள்ள setvars ஸ்கிரிப்டை ஆதாரமாகக் கொண்டு உங்கள் CLI சூழலை அமைக்கவும்.
லினக்ஸ் (சூடோ):
மூல /opt/intel/oneapi/setvars.sh
லினக்ஸ் (பயனர்):
ஆதாரம் ~/intel/oneapi/setvars.sh
3. சூழலை அமைக்கவும்
Intel® oneAPI நிலை பூஜ்ஜியத்திற்கான பிழைத்திருத்த ஆதரவை இயக்க பின்வரும் சூழல் மாறிகளைப் பயன்படுத்தவும்:
ஏற்றுமதி 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
பிழைத்திருத்தி கண்டறியப்பட்டது.
லிபிப்ட் கண்டுபிடிக்கப்பட்டது.
லிபிகா கண்டுபிடிக்கப்பட்டது.
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 project, Array Transform, பயன்பாட்டு பிழைத்திருத்தியுடன் விரைவாகத் தொடங்க.
1. கள் பெறample, பின்வரும் வழிகளில் ஏதேனும் ஒன்றைத் தேர்ந்தெடுக்கவும்:
- oneAPI CLI S ஐப் பயன்படுத்தவும்amples உலாவி தொடங்குதல் வகையிலிருந்து வரிசை மாற்றத்தைத் தேர்ந்தெடுக்க.
- இதிலிருந்து பதிவிறக்கவும் GitHub*.
2. s இன் src க்கு செல்லவும்ample திட்டம்:
cd array-transform/src
3. பிழைத்திருத்தத் தகவலை (-g கொடி) இயக்கி, மேம்படுத்தல்களை (-O0 கொடி) முடக்குவதன் மூலம் பயன்பாட்டைத் தொகுக்கவும்.
ஒரு நிலையான மற்றும் துல்லியமான பிழைத்திருத்த சூழலுக்கு தேர்வுமுறையை முடக்குவது பரிந்துரைக்கப்படுகிறது. கம்பைலர் மேம்படுத்தல்களுக்குப் பிறகு குறியீட்டில் ஏற்படும் மாற்றங்களால் ஏற்படும் குழப்பத்தைத் தவிர்க்க இது உதவுகிறது.
குறிப்பு உகப்பாக்கம் செயல்படுத்தப்பட்ட (-O2 கொடி) மூலம் நிரலை நீங்கள் தொகுக்கலாம், இது GPU அசெம்பிளி பிழைத்திருத்தத்தை நீங்கள் இலக்காகக் கொண்டால் உதவியாக இருக்கும்.
நீங்கள் நிரலை பல வழிகளில் தொகுக்கலாம். விருப்பத்தேர்வுகள் 1 மற்றும் 2 ஆனது ஜஸ்ட்-இன்-டைம் (JIT) தொகுப்பைப் பயன்படுத்துகிறது, இது s ஐ பிழைத்திருத்த பரிந்துரைக்கப்படுகிறது.ampலெ. விருப்பம் 3 முன்கூட்டிய (AOT) தொகுப்பைப் பயன்படுத்துகிறது.
- விருப்பம் 1. நீங்கள் CMake ஐப் பயன்படுத்தலாம் file பயன்பாட்டை உள்ளமைக்க மற்றும் உருவாக்க. பார்க்கவும் README களின்ampவழிமுறைகளுக்கு le.
குறிப்பு சி.எம்.கே file களுடன் வழங்கப்பட்டதுample ஏற்கனவே -g -O0 கொடிகளை கடந்து செல்கிறது.
- விருப்பம் 2. வரிசை-transform.cpp s ஐ தொகுக்கampCMake இல்லாமல் விண்ணப்பம் file, பின்வரும் கட்டளைகளை வழங்கவும்:
icpx -fsycl -g -O0 array-transform.cpp -o array-transform
தொகுத்தல் மற்றும் இணைப்பது தனித்தனியாகச் செய்யப்பட்டால், இணைப்புப் படியில் -g -O0 கொடிகளை வைத்திருங்கள். இந்த ஃபிளாக்களை இயக்க நேரத்தில் சாதன கம்பைலருக்கு அனுப்ப icpx மொழிபெயர்ப்பது இணைப்புப் படியாகும். Exampலெ:
icpx -fsycl -g -O0 -c array-transform.cpp
icpx -fsycl -g -O0 array-transform.o -o array-transform
- விருப்பம் 3. இயக்க நேரத்தில் நீண்ட JIT தொகுத்தல் நேரங்களைத் தவிர்க்க AOT தொகுப்பைப் பயன்படுத்தலாம். பிழைத்திருத்தியின் கீழ் உள்ள பெரிய கர்னல்களுக்கு JIT தொகுத்தல் அதிக நேரம் எடுக்கும். நேரத்திற்கு முன்பே தொகுத்தல் பயன்முறையைப் பயன்படுத்த:
• GPU இல் பிழைத்திருத்தத்திற்கு:
நிரல் செயல்படுத்துவதற்கு நீங்கள் பயன்படுத்தும் சாதனத்தைக் குறிப்பிடவும். உதாரணமாகample, -device dg2-g10 Intel® Data Center GPU Flex 140 கிராபிக்ஸ். ஆதரிக்கப்படும் விருப்பங்களின் பட்டியல் மற்றும் AOT தொகுப்பு பற்றிய கூடுதல் தகவலுக்கு, பார்க்கவும் Intel® oneAPI DPC++ Compiler Developer Guide மற்றும் Reference.
உதாரணமாகampலெ:
icpx -fsycl -g -O0 -fsycl-targets=spir64_gen -Xs “-device dg2-g10” array-transform.cpp -o arraytransform
நேரத்திற்கு முன்பே தொகுக்க OpenCLTM ஆஃப்லைன் கம்பைலர் (OC Compiler LOC) தேவைப்படுகிறது. மேலும் தகவலுக்கு, "OpenCLTM ஆஃப்லைன் கம்பைலரை நிறுவு (OCLOC)" என்ற பிரிவைப் பார்க்கவும் நிறுவல் வழிகாட்டி.
• CPU இல் பிழைத்திருத்தத்திற்கு:
icpx -fsycl -g -O0 -fsycl-targets=spir64_x86_64 array-transform.cpp -o array-transform
பிழைத்திருத்த அமர்வைத் தொடங்கவும்
பிழைத்திருத்த அமர்வைத் தொடங்கவும்:
1. GDB*க்கான Intel® விநியோகத்தை பின்வருமாறு தொடங்கவும்:
gdb-oneapi வரிசை-மாற்றம்
நீங்கள் (gdb) வரியில் பார்க்க வேண்டும்.
2. கர்னல் சரியான சாதனத்தில் ஏற்றப்பட்டுள்ளதா என்பதை உறுதிப்படுத்த, பின்வரும் படிகளைச் செய்யவும். நீங்கள் (gdb) வரியில் இருந்து ரன் கட்டளையை இயக்கும் போது, கடந்து செல்லவும் cpu, gpu or முடுக்கி வாதம்:
- CPU இல் பிழைத்திருத்தத்திற்கு:
cpu ஐ இயக்கவும்
Example வெளியீடு:
[SYCL] சாதனத்தைப் பயன்படுத்துதல்: [Intel(R) OpenCL இலிருந்து [Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz]- GPU இல் பிழைத்திருத்தத்திற்கு:
gpu ஐ இயக்கவும்
Example வெளியீடு:
[SYCL] சாதனத்தைப் பயன்படுத்துதல்: [Intel(R) LevelZero இலிருந்து [Intel(R) Data Center GPU Flex Series 140 [0x56c1]]- FPGA-முன்மாதிரியில் பிழைத்திருத்தத்திற்கு:
இயக்க முடுக்கி
Example வெளியீடு:
[SYCL] சாதனத்தைப் பயன்படுத்துதல்: [Intel(R) FPGA Emulation Device] [Intel(R) FPGA Emulation Platform for OpenCL(TM) மென்பொருளிலிருந்து]குறிப்பு cpu, gpu மற்றும் முடுக்கி அளவுருக்கள் வரிசை உருமாற்ற பயன்பாட்டிற்கு குறிப்பிட்டவை.
3. GDBக்கான Intel® விநியோகத்திலிருந்து வெளியேற*:
வெளியேறு
உங்கள் வசதிக்காக, GDB* கட்டளைகளுக்கான பொதுவான Intel® Distribution இல் வழங்கப்பட்டுள்ளது குறிப்பு தாள்.
வரிசை மாற்றத்தை பிழைத்திருத்த sampமேலும் GDBக்கான Intel® Distribution பற்றி மேலும் அறியவும்*, அடிப்படை பிழைத்திருத்தக் காட்சிகளைப் பயன்படுத்தி பயிற்சி.
மேலும் அறிக
ஆவணம் | விளக்கம் |
பயிற்சி: GDBக்கான Intel® விநியோகத்துடன் பிழைத்திருத்தம்* | இந்த ஆவணம் GDBக்கான Intel® Distribution உடன் SYCL* மற்றும் OpenCL ஐ பிழைத்திருத்தம் செய்யும் போது பின்பற்ற வேண்டிய அடிப்படை காட்சிகளை விவரிக்கிறது*. |
GDB* பயனர் வழிகாட்டிக்கான Intel® விநியோகம் | GDBக்கான Intel® Distribution மூலம் நீங்கள் முடிக்கக்கூடிய அனைத்து பொதுவான பணிகளையும் இந்த ஆவணம் விவரிக்கிறது மற்றும் தேவையான தொழில்நுட்ப விவரங்களை வழங்குகிறது. |
GDB* வெளியீட்டு குறிப்புகளுக்கான Intel® விநியோகம் | குறிப்புகளில் முக்கிய திறன்கள், புதிய அம்சங்கள் மற்றும் GDBக்கான Intel® Distribution பற்றிய அறியப்பட்ட சிக்கல்கள் பற்றிய தகவல்கள் உள்ளன*. |
oneAPI தயாரிப்பு பக்கம் | இந்தப் பக்கத்தில் OneAPI கருவித்தொகுப்புகள் மற்றும் பயனுள்ள ஆதாரங்களுக்கான இணைப்புகள் பற்றிய சுருக்கமான அறிமுகம் உள்ளது. |
GDB* குறிப்பு தாளுக்கான Intel® விநியோகம் | இந்த ஒரு பக்க ஆவணம் GDB* முன்நிபந்தனைகள் மற்றும் பயனுள்ள கட்டளைகளுக்கான Intel® விநியோகத்தை சுருக்கமாக விவரிக்கிறது. |
ஜேக்கபி எஸ்ample | இந்த சிறிய SYCL* பயன்பாட்டில் இரண்டு பதிப்புகள் உள்ளன: பிழை மற்றும் சரி செய்யப்பட்டது. களை பயன்படுத்தவும்ampGDBக்கான Intel® Distribution உடன் பயன்பாட்டு பிழைத்திருத்தத்தை மேற்கொள்ள le. |
அறிவிப்புகள் மற்றும் மறுப்புகள்
இன்டெல் தொழில்நுட்பங்களுக்கு இயக்கப்பட்ட வன்பொருள், மென்பொருள் அல்லது சேவை செயல்படுத்தல் தேவைப்படலாம்.
எந்தவொரு தயாரிப்பு அல்லது கூறு முற்றிலும் பாதுகாப்பாக இருக்க முடியாது.
உங்கள் செலவுகள் மற்றும் முடிவுகள் மாறுபடலாம்.
© இன்டெல் கார்ப்பரேஷன். இன்டெல், இன்டெல் லோகோ மற்றும் பிற இன்டெல் குறிகள் இன்டெல் கார்ப்பரேஷன் அல்லது அதன் துணை நிறுவனங்களின் வர்த்தக முத்திரைகள். பிற பெயர்கள் மற்றும் பிராண்டுகள் மற்றவர்களின் சொத்தாக உரிமை கோரப்படலாம்.
இந்த ஆவணத்தால் எந்தவொரு அறிவுசார் சொத்துரிமைக்கும் உரிமம் (வெளிப்படுத்துதல் அல்லது மறைமுகமாக, எஸ்டோப்பல் அல்லது வேறுவிதமாக) வழங்கப்படவில்லை.
விவரிக்கப்பட்ட தயாரிப்புகளில் வடிவமைப்பு குறைபாடுகள் அல்லது பிழைகள் எனப்படும் பிழைகள் இருக்கலாம், இது வெளியிடப்பட்ட விவரக்குறிப்புகளிலிருந்து தயாரிப்பு விலகுவதற்கு காரணமாக இருக்கலாம். தற்போதைய வகைப்படுத்தப்பட்ட பிழைகள் கோரிக்கையின் பேரில் கிடைக்கின்றன.
இன்டெல் அனைத்து எக்ஸ்பிரஸ் மற்றும் மறைமுகமான உத்தரவாதங்களையும், வரம்பு இல்லாமல், வணிகத்திறன் மறைமுகமான உத்தரவாதங்கள், ஒரு குறிப்பிட்ட நோக்கத்திற்கான தகுதி, மற்றும் மீறல் இல்லாதது, அத்துடன் செயல்திறன், கையாளுதல் அல்லது வர்த்தகத்தில் பயன்பாடு ஆகியவற்றிலிருந்து எழும் எந்த உத்தரவாதத்தையும் மறுக்கிறது.
OpenCL மற்றும் OpenCL லோகோ ஆகியவை க்ரோனோஸின் அனுமதியால் பயன்படுத்தப்படும் Apple Inc. இன் வர்த்தக முத்திரைகள்.
ஆவணங்கள் / ஆதாரங்கள்
![]() |
Linux OS ஹோஸ்டில் GDBக்கான intel விநியோகம் [pdf] பயனர் வழிகாட்டி லினக்ஸ் ஓஎஸ் ஹோஸ்டில் ஜிடிபி, லினக்ஸ் ஓஎஸ் ஹோஸ்டில் ஜிடிபி, லினக்ஸ் ஓஎஸ் ஹோஸ்ட், ஓஎஸ் ஹோஸ்ட், ஹோஸ்ட் ஆகியவற்றுக்கான விநியோகம் |