Linux* İşletim Sistemi Ana Bilgisayarında GDB* için Intel® Dağıtımına Başlayın
Uygulamalarda hata ayıklamak için GDB* için Intel® Dağıtımını kullanmaya başlayın. Çekirdeklerin CPU ve GPU aygıtlarına yüklendiği uygulamalarda hata ayıklamak amacıyla hata ayıklayıcıyı ayarlamak için aşağıdaki talimatları izleyin.
GDB* için Intel® Dağıtımı, Intel® oneAPI Temel Araç Takımının bir parçası olarak mevcuttur. oneAPI araç kitleri hakkında daha fazla bilgi için şu adresi ziyaret edin: ürün sayfası.
Ziyaret edin Sürüm Notları Önemli yetenekler, yeni özellikler ve bilinen sorunlar hakkında bilgi için sayfa.
Bir SYCL* kullanabilirsinizampGDB* için Intel® Dağıtımını kullanmaya başlamak için dosya kodu Array Transform'u kullanın. Sampdosya hata üretmez ve yalnızca hata ayıklayıcı özelliklerini gösterir. Kod, giriş dizisinin öğelerini çift veya tek olmalarına bağlı olarak işler ve bir çıktı dizisi üretir. s'yi kullanabilirsinizampSeçilen cihazı bir komut satırı argümanı aracılığıyla belirterek hem CPU hem de GPU'da hata ayıklamak için dosya. GPU hata ayıklamasının, uzaktan hata ayıklama için iki sistem ve ek yapılandırma gerektirebileceğini unutmayın.
Ön koşullar
GPU'da hata ayıklamayı hedefliyorsanız en son GPU sürücülerini yükleyin ve sisteminizi bunları kullanacak şekilde yapılandırın. Bakın Linux* İşletim Sistemi için Intel® oneAPI Araç Takımları Kurulum Kılavuzu. Talimatları takip et Intel GPU Sürücülerini Yükleyin Sisteminizle eşleşen GPU sürücülerini yüklemek için.
Ek olarak, GDB* için Intel® Dağıtımı ile GPU'da hata ayıklamak amacıyla Visual Studio Code* için bir uzantı yükleyebilirsiniz. Bakın Visual Studio Code'u Intel® oneAPI Araç Setleri Kılavuzuyla Kullanma.
GPU Hata Ayıklayıcısını Ayarlama
GPU hata ayıklayıcısını ayarlamak için root erişiminizin olması gerekir.
NOT Çekirdek hata ayıklaması sırasında GPU durdurulur ve hedef makinenizde video çıkışı kullanılamaz. Bu nedenle, sistemin GPU kartı grafik çıktı için de kullanılıyorsa, hedef sistemdeki GPU'nun hatalarını ayıklayamazsınız. Bu durumda makineye ssh ile bağlanın.
1. GPU'da hata ayıklamayı hedefliyorsanız GPU hata ayıklamayı destekleyen bir Linux Çekirdeğine ihtiyaç vardır.
a. adresindeki talimatları izleyin Genel amaçlı GPU yetenekleri için Intel® yazılımı Gerekli sürücüleri indirip yüklemek için.
b. Çekirdekte i915 hata ayıklama desteğini etkinleştirin:
a. Bir terminal açın.
b. grubu aç file /etc/default.conf içinde
c. grupta fileGRUB_CMDLINE_LINUX_DEFAULT=”” satırını bulun.
d. Tırnak işaretleri arasına aşağıdaki metni girin (“”):
i915.debug_eu=1
NOT Varsayılan olarak GPU sürücüsü, iş yüklerinin GPU üzerinde belirli bir süreden daha uzun süre çalıştırılmasına izin vermez. Sürücü, takılmaları önlemek için GPU'yu sıfırlayarak bu tür uzun süreli iş yüklerini ortadan kaldırır. Uygulama hata ayıklayıcı altında çalışıyorsa sürücünün hangcheck mekanizması devre dışı bırakılır. Uzun bilgi işlem iş yüklerini bir hata ayıklayıcı eklenmeden de çalıştırmayı planlıyorsanız, başvurmayı düşünün. GPU: Hangcheck'i devre dışı bırak ekleyerek
i915.enable_hangcheck=0
aynısı GRUB_CMDLINE_LINUX_DEFAULT satırı.
c. Bu değişikliklerin etkili olması için GRUB'u güncelleyin:
sudo güncelleme-grub
d. Yeniden başlat.
2. Araç seti kurulumunuzun kökünde bulunan setvars betiğini kullanarak CLI ortamınızı kurun.
Linux (sudo):
kaynak /opt/intel/oneapi/setvars.sh
Linux (kullanıcı):
kaynak ~/intel/oneapi/setvars.sh
3. Kurulum ortamı
Intel® oneAPI Düzey Sıfır için hata ayıklayıcı desteğini etkinleştirmek üzere aşağıdaki ortam değişkenlerini kullanın:
dışa aktarma ZET_ENABLE_PROGRAM_DEBUGGING=1
dışa aktarma IGC_EnableGTLocationDebugging=1
4. Sistem kontrolü
Her şey hazır olduğunda sistem yapılandırmasının güvenilir olduğunu doğrulamak için lütfen aşağıdaki komutu çalıştırın:
python3 /path/to/intel/oneapi/diagnostics/latest/diagnostics.py –filter debugger_sys_check -force
İyi yapılandırılmış bir sistemin olası çıktısı aşağıdaki gibidir:
…
Sonuçları kontrol eder:
=================================================== ================================
Kontrol adı: debugger_sys_check
Açıklama: Bu kontrol, ortamın gdb (GDB için Intel(R) Dağıtımı*) kullanımına hazır olup olmadığını doğrular.
Sonuç durumu: GEÇTİ
Hata ayıklayıcı bulundu.
libipt bulundu.
libiga bulundu.
i915 hata ayıklama etkin.
Çevresel değişkenler doğru. =================================================== ================================
1 KONTROL: 1 BAŞARILI, 0 BAŞARISIZ, 0 UYARI, 0 HATA
Konsol çıkışı file: /path/to/logs/diagnostics_filter_debugger_sys_check_force.txt JSON çıkışı file: /path/to/diagnostics/logs/diagnostics_filter_debugger_sys_check_force.json …
Programı Hata Ayıklama Bilgileriyle Derleyin
s'yi kullanabilirsinizampUygulama hata ayıklayıcısını hızlı bir şekilde kullanmaya başlamak için Array Transform projesini kullanın.
1. S'yi almak içinample, aşağıdaki yollardan herhangi birini seçin:
- oneAPI CLI S'yi kullanınamples Tarayıcı Başlarken kategorisinden Dizi Dönüşümü'nü seçmek için.
- İndir GitHub*.
2. s'nin kaynağına gidinampproje:
cd dizisi dönüşümü/src
3. Hata ayıklama bilgisini etkinleştirerek (-g bayrağı) ve optimizasyonları kapatarak (-O0 bayrağı) uygulamayı derleyin.
Kararlı ve doğru bir hata ayıklama ortamı için optimizasyonun devre dışı bırakılması önerilir. Bu, derleyici optimizasyonlarından sonra kodda yapılan değişikliklerin neden olduğu karışıklığın önlenmesine yardımcı olur.
NOT Programı optimizasyon etkinken (-O2 bayrağı) hala derleyebilirsiniz; bu, GPU derleme hata ayıklamasını hedefliyorsanız yararlı olabilir.
Programı çeşitli şekillerde derleyebilirsiniz. Seçenek 1 ve 2, s'de hata ayıklamak için önerilen tam zamanında (JIT) derlemeyi kullanır.ample. Seçenek 3, önceden hazırlanmış (AOT) derlemeyi kullanır.
- Seçenek 1. CMake'i kullanabilirsiniz file uygulamayı yapılandırmak ve oluşturmak için. Bakın BENİOKU s'ninampTalimatlar için bkz.
NOT CMake file s ile sağlananample zaten -g -O0 işaretlerini geçiyor.
- Seçenek 2. array-transform.cpp dosyasını derlemek içinampCMake olmadan dosya uygulaması file, aşağıdaki komutları verin:
icpx -fsycl -g -O0 dizi dönüşümü.cpp -o dizi dönüşümü
Derleme ve bağlama ayrı ayrı yapılıyorsa bağlantı adımında -g -O0 işaretlerini koruyun. Bağlantı adımı, icpx'in bu bayrakları çalışma zamanında aygıt derleyicisine iletilmek üzere çevirmesidir. Eskiamptarih:
icpx -fsycl -g -O0 -c dizi-transform.cpp
icpx -fsycl -g -O0 dizi dönüşümü.o -o dizi dönüşümü
- Seçenek 3. Çalışma zamanında daha uzun JIT derleme sürelerinden kaçınmak için AOT derlemesini kullanabilirsiniz. Hata ayıklayıcının altındaki büyük çekirdekler için JIT derlemesi önemli ölçüde daha uzun sürebilir. Vaktinden Önce derleme modunu kullanmak için:
• GPU'da hata ayıklamak için:
Programın yürütülmesi için kullanacağınız cihazı belirtin. Eski içinample, -device dg2-g10, Intel® Veri Merkezi GPU Flex 140 Grafik Kartı için. Desteklenen seçeneklerin listesi ve AOT derlemesi hakkında daha fazla bilgi için bkz. Intel® oneAPI DPC++ Derleyici Geliştirici Kılavuzu ve Referansı.
Örneğinamptarih:
icpx -fsycl -g -O0 -fsycl-targets=spir64_gen -Xs “-device dg2-g10” array-transform.cpp -o arraytransform
Vaktinden Önce derleme, OpenCLTM Çevrimdışı Derleyiciyi (OC Compiler LOC) gerektirir. Daha fazla bilgi için, "OpenCLTM Çevrimdışı Derleyiciyi (OCLOC) Kurma" bölümüne bakın. Kurulum Kılavuzu.
• CPU'da hata ayıklamak için:
icpx -fsycl -g -O0 -fsycl-targets=spir64_x86_64 array-transform.cpp -o array-transform
Hata Ayıklama Oturumu Başlatın
Hata ayıklama oturumunu başlatın:
1. GDB* için Intel® Dağıtımını şu şekilde başlatın:
gdb-oneapi dizi dönüşümü
(gdb) istemini görmelisiniz.
2. Çekirdeğin doğru cihaza aktarıldığından emin olmak için aşağıdaki adımları izleyin. (gdb) komut isteminden run komutunu çalıştırdığınızda, İşlemci, grafik işlemcisi or hızlandırıcı argüman:
- CPU'da hata ayıklamak için:
CPU'yu çalıştır
Exampçıktı:
[SYCL] Cihaz kullanılıyor: [Intel(R) OpenCL]'den [Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz]- GPU'da hata ayıklamak için:
GPU'yu çalıştır
Exampçıktı:
[SYCL] Cihazı kullanma: [Intel(R) LevelZero]'dan [Intel(R) Data Center GPU Flex Series 140 [0x56c1]]- FPGA öykünücüsünde hata ayıklamak için:
hızlandırıcıyı çalıştır
Exampçıktı:
[SYCL] Cihazı kullanma: [OpenCL(TM) yazılımı için Intel(R) FPGA Emulation Platform]'dan [Intel(R) FPGA Emulation Device]NOT CPU, GPU ve hızlandırıcı parametreleri Array Transform uygulamasına özeldir.
3. GDB için Intel® Dağıtımından çıkmak için*:
çıkış yapmak
Size kolaylık sağlamak amacıyla, GDB* için ortak Intel® Dağıtımı komutları şu sayfada verilmiştir: Referans Sayfası.
Dizi Dönüşümünde hata ayıklamak içinampdosyasını kullanın ve GDB* için Intel® Dağıtımı hakkında daha fazla bilgi edinin, aşağıdakileri kullanarak temel hata ayıklama senaryolarını inceleyin: Eğitim.
Daha fazla bilgi edin
Belge | Tanım |
Öğretici: GDB* için Intel® Dağıtımıyla Hata Ayıklama | Bu belge, GDB* için Intel® Dağıtımı ile SYCL* ve OpenCL'de hata ayıklarken izlenecek temel senaryoları açıklamaktadır. |
GDB* Kullanıcı Kılavuzu için Intel® Dağıtımı | Bu belge, GDB* için Intel® Dağıtımı ile tamamlayabileceğiniz tüm genel görevleri açıklar ve gerekli teknik ayrıntıları sağlar. |
GDB* Sürüm Notları için Intel® Dağıtımı | Notlar, GDB* için Intel® Dağıtımının önemli yetenekleri, yeni özellikleri ve bilinen sorunları hakkında bilgiler içerir. |
oneAPI Ürün Sayfası | Bu sayfada oneAPI araç kitleri hakkında kısa bir tanıtım ve faydalı kaynaklara bağlantılar yer almaktadır. |
GDB* Referans Sayfası için Intel® Dağıtımı | Bu tek sayfalık belgede GDB* için Intel® Dağıtımının önkoşulları ve faydalı komutlar kısaca açıklanmaktadır. |
Jacobi Sample | Bu küçük SYCL* uygulamasının iki sürümü vardır: hata düzeltmeli ve düzeltilmiş. s'yi kullanampGDB* için Intel® Dağıtımı ile uygulama hata ayıklama işlemini gerçekleştirin. |
Bildirimler ve Sorumluluk Reddi Beyanları
Intel teknolojileri, etkin donanım, yazılım veya hizmet etkinleştirmesi gerektirebilir.
Hiçbir ürün veya bileşen kesinlikle güvenli olamaz.
Maliyetleriniz ve sonuçlarınız değişebilir.
© Intel Corporation. Intel, Intel logosu ve diğer Intel markaları, Intel Corporation'ın veya yan kuruluşlarının ticari markalarıdır. Diğer adlar ve markalar, başkalarının mülkü olarak talep edilebilir.
Bu belge ile herhangi bir fikri mülkiyet hakkına ilişkin hiçbir lisans (açık veya zımni, hak düşürücü veya başka türlü) verilmemektedir.
Açıklanan ürünler, ürünün yayınlanmış özelliklerden sapmasına neden olabilecek errata olarak bilinen tasarım kusurları veya hataları içerebilir. Güncel karakterize edilmiş erratalar talep üzerine mevcuttur.
Intel, satılabilirlik, belirli bir amaca uygunluk ve ihlal etmeme gibi zımni garantiler dahil ancak bunlarla sınırlı olmamak üzere açık ve zımni tüm garantilerin yanı sıra performansın gidişatı, iş yapma biçimi veya ticari kullanımdan kaynaklanan her türlü garantiyi reddeder.
OpenCL ve OpenCL logosu, Apple Inc.'in ticari markalarıdır ve Khronos'un izniyle kullanılmaktadır.
Belgeler / Kaynaklar
![]() |
Linux İşletim Sistemi Ana Bilgisayarında GDB için Intel Dağıtımı [pdf] Kullanıcı Kılavuzu Linux İşletim Sistemi Ana Bilgisayarı üzerindeki GDB, Linux İşletim Sistemi Ana Bilgisayarı üzerindeki GDB, Linux İşletim Sistemi Ana Bilgisayarı, İşletim Sistemi Ana Bilgisayarı, Ana Bilgisayar için dağıtım |