Menelusuri Kernel Langkah demi Langkah di cuda-gdb
Titik henti dan pemeriksaan per utas
Menelusuri Kernel Langkah demi Langkah di cuda-gdb adalah pelajaran CUDA Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar CUDA Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus CUDA Academy mencakup 4 pelajaran total.
Berkenalan dengan cuda-gdb
Saat kernel mengalami masalah, cuda-gdb memungkinkan Anda menjedanya dan melihat bagian dalamnya, sama seperti gdb pada program CPU biasa. 🔍
Bangun dengan Informasi Debug
cuda-gdb memerlukan simbol, jadi kompilasikan kernel Anda dengan -G untuk menambahkan informasi debug perangkat lengkap sebelum melakukan debug.
nvcc -g -G vecadd.cu -o vecaddMengapa -G Penting
Flag -G menonaktifkan banyak optimasi agar nomor baris dan variabel tetap akurat, sehingga penelusuran kode perangkat langkah demi langkah dapat dipercaya.
Jalankan Debugger
Mulai sesi dengan memberikan berkas biner Anda kepada cuda-gdb, lalu ketik run untuk menjalankannya di bawah kendali debugger.
cuda-gdb ./vecaddTetapkan Titik Henti dalam Kernel
Letakkan titik henti tepat di dalam kernel dengan menyebutkan nama fungsinya, sehingga eksekusi berhenti saat sebuah thread mencapainya.
(cuda-gdb) break vecAddKernelBanyak Thread, Satu Pemberhentian
Ribuan thread mungkin mencapai titik henti tersebut, jadi cuda-gdb berhenti dan berfokus pada satu thread setiap kali untuk diperiksa.
Telusuri Baris demi Baris
Gunakan next untuk menjalankan baris saat ini dan berhenti pada baris berikutnya, sehingga logika kernel Anda dapat ditelusuri langkah demi langkah.
(cuda-gdb) nextPeriksa Variabel
Periksa hasil perhitungan sebenarnya dari sebuah thread dengan meminta cuda-gdb print variabel lokal saat Anda sedang berhenti di dalam kernel.
(cuda-gdb) print iGanti Fokus Thread
Alihkan perhatian ke thread tertentu dengan cuda thread, lalu pilih blok dan lajur tepat yang ingin Anda periksa.
(cuda-gdb) cuda block 0 thread 5Baca Indeks Bawaan
Anda dapat mencetak threadIdx dan blockIdx seperti variabel biasa untuk memastikan elemen data yang ditangani thread ini.
(cuda-gdb) print threadIdx.xLanjutkan Eksekusi
Setelah selesai memeriksa, ketik continue untuk melanjutkan program hingga titik henti berikutnya atau hingga program selesai.
(cuda-gdb) continuePemeriksaan Singkat
Flag compiler apa yang menambahkan informasi debug perangkat untuk cuda-gdb?
Rangkuman
Anda mengompilasi dengan -G, menetapkan titik henti kernel, menelusuri baris, berganti thread, dan mencetak indeks. Itulah alur inti cuda-gdb. 🎉
Belajar C++ dengan tutor AI — gratis
Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.
- Kursus
- 30
- Pelajaran
- 120
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Menelusuri Kernel Langkah demi Langkah di cuda-gdb” gratis?
Ya — teks lengkap “Menelusuri Kernel Langkah demi Langkah di cuda-gdb” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus CUDA Academy, upgrade ke CoddyKit PRO. Kursus CUDA Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Menelusuri Kernel Langkah demi Langkah di cuda-gdb”?
Titik henti dan pemeriksaan per utas Kamu berlatih CUDA Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai CUDA Academy?
Tidak diperlukan pengalaman sebelumnya. CUDA Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.
Berapa lama pelajaran “Menelusuri Kernel Langkah demi Langkah di cuda-gdb” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran CUDA Academy ini?
Ya. Setiap pelajaran CUDA Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Menelusuri Kernel Langkah demi Langkah di cuda-gdb
- Menemukan Kebocoran dengan memcheck
- Memburu Perlombaan dengan racecheck
- Menangkap Kesalahan Sinkronisasi dengan synccheck