0Pricing
CUDA Academy · Pelajaran

Membuat Profil, Mengoptimalkan, Mengirimkan

Menutup siklus dengan metrik Nsight

Membuat Profil, Mengoptimalkan, Mengirimkan adalah pelajaran CUDA Academy gratis di CoddyKit. Ini adalah pelajaran 4 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.

Ukur, Jangan Menebak

Pengoptimalan dimulai dari data, bukan dugaan. Selalu lakukan pembuatan profil terlebih dahulu untuk mengetahui ke mana waktu sebenarnya digunakan sebelum mengubah satu baris pun. 🔍

Mulai dari Linimasa

Buka Nsight Systems untuk melihat seluruh proses: kernel, penyalinan, dan jeda. Linimasa menunjukkan apakah transfer dan perhitungan benar-benar saling menindih.

Temukan Kernel Terpanas

Biasanya satu tahapan paling mendominasi. Linimasa menampilkan kernel yang berjalan paling lama, dan di situlah upaya penyetelan Anda harus dimulai.

Perbesar dengan Nsight Compute

Untuk kernel terpanas, beralihlah ke Nsight Compute. Alat ini melaporkan metrik per kernel seperti laju pemrosesan memori, penghentian, dan okupansi yang tercapai.

Baca Grafik Atap

Grafik atap memberi tahu apakah sebuah kernel terbatas memori atau terbatas perhitungan. Jawaban tunggal tersebut menentukan pengoptimalan mana yang layak dicoba.

Perbaiki Kernel yang Terbatas Memori

Jika Anda terbatas oleh memori, upayakan penggabungan akses, penggunaan ubin memori bersama, dan pemuatan terv vektorisasi. Menyuplai data lebih cepat adalah satu-satunya jalan menuju kecepatan yang lebih tinggi.

Perbaiki Kernel yang Terbatas Perhitungan

Jika Anda terbatas oleh perhitungan, tingkatkan ILP dengan membuka gulungan perulangan, kurangi operasi matematika yang berlebihan, atau gunakan presisi yang lebih rendah. Di sini, unit aritmetika menjadi batasnya.

Beri Label pada Kode dengan NVTX

Bungkus tahapan alur pemrosesan dalam rentang NVTX agar linimasa menampilkan batang bernama, bukan kernel tanpa nama. Profil yang mudah dibaca lebih cepat untuk diperbaiki.

nvtxRangePush("blur");
blurKernel<<<grid, block>>>(d_in, d_out);
nvtxRangePop();

Ubah Satu Hal pada Satu Waktu

Terapkan satu pengoptimalan, lalu buat profil ulang. Perulangan singkat ini membuktikan bahwa setiap perubahan memberikan manfaat dan mencegah Anda mengejar dua dampak sekaligus.

Ketahui Kapan Harus Berhenti

Saat sebuah kernel mendekati batas grafik atapnya, penyetelan lebih lanjut hanya memberikan sedikit hasil. Kenali hasil yang semakin berkurang dan gunakan waktu Anda untuk hambatan berikutnya.

Validasi, Lalu Rilis

Sebelum dirilis, pastikan kebenarannya terhadap acuan dan periksa apakah peningkatan kecepatannya stabil. Alur pemrosesan yang cepat tetapi salah tidak layak dirilis. 🚢

Pemeriksaan Cepat

Nsight Compute menyatakan bahwa kernel terpanas Anda terbatas oleh memori. Perbaikan mana yang harus Anda coba terlebih dahulu?

Rangkuman

Anda telah mempelajari cara membuat profil dengan Nsight, membaca grafik atap untuk mengklasifikasikan kernel, menerapkan perbaikan yang terarah satu per satu, serta melakukan validasi sebelum merilis alur pemrosesan yang cepat dan benar. 🏁

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Membuat Profil, Mengoptimalkan, Mengirimkan” gratis?

Ya — teks lengkap “Membuat Profil, Mengoptimalkan, Mengirimkan” 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 “Membuat Profil, Mengoptimalkan, Mengirimkan”?

Menutup siklus dengan metrik Nsight 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 4 dari 4.

Berapa lama pelajaran “Membuat Profil, Mengoptimalkan, Mengirimkan” 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

  1. Merancang Alur Pemrosesan
  2. Menggabungkan Filter ke dalam Satu Kernel
  3. Mengalirkan Tile untuk Gambar Besar
  4. Membuat Profil, Mengoptimalkan, Mengirimkan
← Kembali ke CUDA Academy