0Pricing
CUDA Academy · Pelajaran

cudaMalloc dan cudaFree

Cadangkan dan lepaskan memori global.

cudaMalloc dan cudaFree 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.

GPU Memiliki RAM Sendiri

GPU Anda tidak meminjam memori utama komputer. GPU memiliki kumpulan memori terpisah yang disebut memori global, yang dibaca dan ditulis oleh kernel. 🧠

Anda Harus Memintanya

Sebelum kernel dapat menggunakan memori perangkat, Anda sendiri harus mencadangkan sebagian ruang. Fungsi yang melakukan pencadangan ini adalah cudaMalloc.

Deklarasi cudaMalloc

cudaMalloc menerima alamat penunjuk dan jumlah bita. Fungsi ini mengisi penunjuk tersebut dengan alamat perangkat baru.

float* d_data;
cudaMalloc(&d_data, n * sizeof(float));

Mengapa Penunjuk ke Penunjuk

Anda meneruskan &d_data agar cudaMalloc dapat menulis alamat baru kembali ke variabel Anda. Nilai yang dikembalikan disediakan untuk kode kesalahan.

Selalu Hitung dalam Bita

cudaMalloc bekerja dengan bita mentah, bukan elemen. Kalikan jumlah elemen dengan sizeof(type) agar penyangga memiliki ukuran yang tepat.

cudaMalloc(&d_arr, count * sizeof(int));

Kembalikan dengan cudaFree

Setelah selesai menggunakan penyangga, kembalikan penyangga tersebut ke GPU menggunakan cudaFree. Ini membebaskan memori global untuk pekerjaan lain.

cudaFree(d_data);

Berpasangan, Seperti Kunci dan Gembok

Perlakukan cudaMalloc dan cudaFree sebagai pasangan. Setiap alokasi yang Anda buat harus memiliki tepat satu pembebasan yang sesuai.

Memori Belum Diinisialisasi

Memori baru dari cudaMalloc berisi nilai sampah. Membacanya sebelum Anda menulis atau menyalin data akan menghasilkan nilai yang tidak dapat diprediksi.

Alokasi Dapat Gagal

Jika GPU kehabisan memori, cudaMalloc mengembalikan kesalahan alih-alih mengalami kerusakan. Selalu periksa kode pengembalian tersebut dalam kode nyata.

Memori Global Melimpah tetapi Lambat

Penyangga dari cudaMalloc berada di memori global: ruang berukuran gigabita, tetapi merupakan tingkat paling lambat pada cip. Gunakan secukupnya, tetapi perhatikan pola aksesnya.

Ritme Setiap Program

Hampir setiap program CUDA mengikuti urutan yang sama: cudaMalloc, salin data masuk, luncurkan kernel, salin hasil keluar, lalu cudaFree.

Pemeriksaan Cepat

Mari kita pastikan cara cudaMalloc menerima penunjuk sasarannya.

Ringkasan

Anda telah mempelajari cara mencadangkan memori GPU dengan cudaMalloc yang ukurannya dinyatakan dalam bita, lalu membebaskannya dengan cudaFree sebagai pasangan yang sesuai. 🎉

Pertanyaan yang Sering Diajukan

Apakah pelajaran “cudaMalloc dan cudaFree” gratis?

Ya — teks lengkap “cudaMalloc dan cudaFree” 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 “cudaMalloc dan cudaFree”?

Cadangkan dan lepaskan memori global. 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 “cudaMalloc dan cudaFree” 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. cudaMalloc dan cudaFree
  2. Penunjuk ke Memori GPU
  3. cudaMemset untuk Inisialisasi
  4. Hindari Kebocoran dan Pembebasan Ganda
← Kembali ke CUDA Academy