CUDA (singkatan dari Compute Unified Device Architecture) adalah platform komputasi paralel dan antarmuka pemrograman aplikasi (API) yang dikembangkan oleh Nvidia. Platform ini memungkinkan pemrogram peranti lunak menggunakan unit pemroses grafis (GPU) Nvidia untuk tujuan komputasi umum (GPGPU), alih-alih terbatas pada pemrosesan grafika dan perenderan piksel semata.[1]
Melalui lapisan peranti lunak CUDA, pengembang dapat berinteraksi langsung dengan instruksi peranti keras dan unit komputasi paralel GPU menggunakan bahasa tingkat tinggi seperti C, C++, dan Fortran. Pendekatan ini mempercepat komputasi matematika rumit secara masif pada bidang pembelajaran mesin, kecerdasan buatan, simulasi fisika, dinamika fluida, serta bioinformatika.
Prinsip kerja dan arsitektur
GPU memiliki arsitektur yang sangat berbeda dibanding unit pemroses sentral (CPU). Jika CPU dioptimalkan untuk mengeksekusi instruksi tunggal yang rumit secara berurutan dengan latensi rendah, GPU dirancang untuk menangani ribuan instruksi sederhana secara paralel (throughput-oriented):
- Model Eksekusi SIMT: CUDA menerapkan model eksekusi Single Instruction, Multiple Threads (SIMT). Instruksi komputasi yang sama dijalankan secara serentak oleh sekelompok benang kerja (threads).
- Pengelompokan Benang Kerja (Threads):
- Benang kerja individual dikelompokkan ke dalam blok (thread blocks).
- Kumpulan blok tersebut membentuk kisi (grid).
- Setiap 32 benang kerja di dalam blok dieksekusi secara sinkron di peranti keras dalam satu kesatuan yang disebut warp.
- Hirarki Memori CUDA:
- Memori Global: Ruang memori VRAM berkapasitas besar di luar keping inti prosesor yang dapat diakses oleh semua blok, namun memiliki latensi akses lebih tinggi.
- Memori Bersama (Shared Memory): Ruang memori sangat cepat di dalam multiprosesor aliran (SM) yang dibagi bersama di antara benang kerja dalam satu blok untuk pertukaran data lokal.
- Register: Lokasi penyimpanan instruksi tercepat yang dialokasikan khusus untuk tiap-tiap benang kerja individual.
Peranti pendukung dan pustaka
Nvidia menyediakan ekosistem terpadu berupa perkakas pengembangan perangkat lunak (CUDA Toolkit) yang mencakup:
- Kompilator NVCC: Mengompilasi kode program C/C++ yang memisahkan instruksi untuk CPU (host) dan fungsi khusus GPU (kernel).
- cuBLAS: Implementasi teroptimasi untuk pustaka aljabar linier dasar (Basic Linear Algebra Subprograms).
- cuDNN (CUDA Deep Neural Network): Pustaka primitif khusus untuk mempercepat jaringan saraf tiruan, menjadi fondasi utama kerangka kerja pembelajaran mendalam populer seperti PyTorch dan TensorFlow.
- cuFFT: Akselerasi transformasi Fourier diskret.
- OptiX: Mesin pelacakan sinar berbasis algoritme pohon volume batas yang terintegrasi dengan inti komputasi CUDA.
Versi Kemampuan Komputasi (Compute Capability)
Setiap generasi arsitektur GPU Nvidia dikategorikan ke dalam versi kemampuan komputasi (Compute Capability) yang menentukan fitur instruksi perangkat keras:
| Arsitektur Mikro | Versi Kemampuan Komputasi | Generasi Produk Utama |
| Tesla | 1.0 – 1.3 | Seri GeForce 8, Seri 9, Seri 200 |
| Fermi | 2.0 – 2.1 | Seri GeForce 400, Seri 500 |
| Kepler | 3.0 – 3.7 | Seri GeForce 600, Seri 700 |
| Maxwell | 5.0 – 5.3 | Seri GeForce 900 |
| Pascal | 6.0 – 6.2 | Seri GeForce 10, Nvidia Tesla P100 |
| Volta | 7.0 – 7.2 | Nvidia Titan V, Nvidia Tesla V100 |
| Turing | 7.5 | Seri GeForce 20, Seri GeForce 16 |
| Ampere | 8.0 – 8.6 | Seri GeForce 30, Nvidia A100 |
| Ada Lovelace | 8.9 | Seri GeForce 40, Nvidia L40 |
| Hopper | 9.0 | Nvidia H100, H200 |
| Blackwell | 10.0 | Seri GeForce 50, Nvidia B200 |
Lihat pula
Referensi
- ↑ "What is CUDA?" (dalam bahasa Inggris). Nvidia. Diakses tanggal 15 Januari 2026.
Pranala luar
|
|---|
|
|---|
| Pipa piksel tetap | |
|---|
| Shader verteks dan piksel | |
|---|
| Shader terpadu | |
|---|
| Shader terpadu & NUMA | |
|---|
| Pelacakan sinar & Tensor Core | |
|---|
|
|
Perangkat lunak dan teknologi |
|---|
| Akselerasi multimedia | |
|---|
| Perangkat lunak | |
|---|
| Teknologi | |
|---|
| Arsitektur mikro GPU | |
|---|
|
|
|
|
|
|---|
| Internasional | |
|---|
| Nasional | |
|---|
| Lain-lain | |
|---|