GPU: Tensor Cores
Pengenalan Tensor Cores
Tensor Cores adalah unit pemrosesan khusus yang dikembangkan oleh NVIDIA untuk mempercepat operasi matriks dan komputasi berbasis tensor, terutama dalam bidang kecerdasan buatan (AI), pembelajaran mendalam (deep learning), dan komputasi berkinerja tinggi (HPC). Berbeda dengan CUDA Cores yang lebih umum untuk operasi floating-point sederhana, Tensor Cores dirancang untuk menangani operasi fused multiply-add (FMA) pada matriks dengan throughput tinggi, menggunakan presisi campuran (mixed-precision) untuk mengoptimalkan kecepatan tanpa mengorbankan akurasi secara signifikan. Mereka pertama kali diperkenalkan pada arsitektur Volta tahun 2017 dan telah berevolusi melalui beberapa generasi, menjadi komponen kunci dalam GPU NVIDIA modern untuk tugas-tugas seperti pelatihan model AI skala besar dan inferensi real-time.
Sejarah dan Evolusi Generasi Tensor Cores
Evolusi Tensor Cores mencerminkan kemajuan NVIDIA dalam mengadaptasi GPU untuk kebutuhan AI yang semakin kompleks. Berikut adalah perkembangan per generasi:
- Generasi Pertama (Volta, 2017): Diperkenalkan pada GPU Tesla V100, Tensor Cores ini mendukung operasi FP16 dengan akumulasi FP32. Setiap Streaming Multiprocessor (SM) memiliki 8 Tensor Cores, yang mampu menghitung matriks 4x4x4 per siklus, menghasilkan hingga 1024 FLOPs per siklus per SM. Ini memberikan speedup hingga 5x dibandingkan arsitektur Pascal sebelumnya, dengan fokus pada pelatihan mixed-precision untuk mengurangi penggunaan memori dan meningkatkan kecepatan.
- Generasi Kedua (Turing, 2018): Ditingkatkan untuk mendukung presisi INT8 dan INT4, selain FP16. Arsitektur ini memperkenalkan instruksi MMA sinkron tingkat warp, dan mendukung Deep Learning Super Sampling (DLSS) untuk grafis gaming. Performa ditingkatkan hingga 32x dibandingkan Pascal, dengan penambahan dukungan untuk presisi lebih rendah yang berguna untuk inferensi.
- Generasi Ketiga (Ampere, 2020): Digunakan pada GPU seperti A100, dengan 4 Tensor Cores per SM (total 432 pada A100). Menambahkan dukungan untuk BF16, TF32, FP64, INT4, dan Binary, serta fitur sparsity struktural 2:4 yang menggandakan throughput dengan melewati komputasi nol. Instruksi MMA tetap sinkron tingkat warp, tetapi ditambahkan salinan data asinkron (cp.async) untuk mengurangi tekanan register. Performa puncak mencapai 312 TFLOPS untuk FP16/BF16 (624 TFLOPS dengan sparsity), dan hingga 20x lebih cepat dibandingkan V100 untuk operasi FP32.
- Generasi Keempat (Hopper, 2022): Pada GPU H100, memperkenalkan Transformer Engine dengan presisi FP8 (E4M3 dan E5M2), yang menggandakan throughput dibandingkan FP16 sambil mengurangi kebutuhan penyimpanan data. Setiap SM memiliki Tensor Cores yang mendukung MMA asinkron tingkat warpgroup (128 thread), dengan Tensor Memory Accelerator (TMA) untuk transfer data bulk. Fitur sparsity tetap didukung, dan performa mencapai 2000 TFLOPS untuk FP8 (4000 TFLOPS dengan sparsity), memberikan speedup hingga 6x dibandingkan A100 untuk pelatihan AI.
- Generasi Kelima (Blackwell, 2024-2025): Arsitektur terbaru ini menambahkan presisi microscaling seperti MXFP8, MXFP6, MXFP4, dan NVFP4. Setiap SM memiliki Tensor Memory (TMEM) 256 KB khusus untuk operasi Tensor Core, dengan instruksi MMA yang mendukung operasi lintas dua SM (MMA.2SM) untuk menggandakan dimensi matriks. Ini memberikan speedup hingga 30x dibandingkan Hopper untuk model AI besar seperti GPT-MoE-1.8T, dengan fokus pada efisiensi daya dan operand sharing.
Evolusi ini menunjukkan tren dari operasi sinkron tingkat warp ke asinkron tingkat warpgroup, dengan penambahan memori khusus dan dukungan presisi lebih rendah untuk meningkatkan efisiensi.
Cara Kerja Tensor Cores
Tensor Cores bekerja dengan menjalankan operasi matriks multiply-accumulate (MMA) secara paralel, di mana dua matriks input dikalikan dan hasilnya ditambahkan ke matriks akumulator dalam satu langkah fused. Ini mengurangi latensi akses memori dan jumlah operasi dibandingkan CUDA Cores biasa. Operasi ini warp-scoped atau warpgroup-scoped, memerlukan koordinasi antar thread (misalnya, 32 thread untuk warp atau 128 untuk warpgroup).
Presisi campuran adalah kunci: Misalnya, input FP16 dengan akumulasi FP32 memungkinkan throughput tinggi sambil menjaga akurasi. Pada generasi lanjutan, fitur seperti Transformer Engine secara dinamis menyesuaikan presisi (FP8 ke FP16) untuk model bahasa besar, menggunakan instruksi seperti PTX `mma` atau `wgmma` untuk eksekusi. Sparsity struktural melewati elemen nol, menggandakan performa tanpa kehilangan akurasi signifikan.
Integrasi dalam GPU: Tensor Cores berada di dalam SM, bekerja paralel dengan CUDA Cores dan memanfaatkan memori bersama (shared memory) atau TMEM untuk transfer data cepat. Fitur asinkron seperti TMA memungkinkan overlap antara komputasi dan transfer data, meningkatkan utilisasi GPU.
Performa dan Metrik
Performa Tensor Cores diukur dalam TFLOPS/TOPS (tera floating-point operations per second / tera operations per second). Contoh:
- Volta: Hingga 12x speedup dibandingkan Pascal untuk FP16.
- Ampere (A100): 312 TFLOPS FP16 (624 dengan sparsity), 156 TFLOPS TF32.
- Hopper (H100): 2000 TFLOPS FP8 (4000 dengan sparsity), 3-6x lebih cepat dari A100.
- Blackwell: 30x speedup untuk model AI besar dibandingkan Hopper.
Secara keseluruhan, Tensor Cores telah meningkatkan performa hingga 60x sejak debutnya, berkat peningkatan clock, jumlah SM, dan presisi baru.
Aplikasi Tensor Cores
Tensor Cores banyak digunakan dalam:
- Pelatihan AI: Mempercepat pelatihan model multi-triliun parameter, seperti LLM, dengan waktu konvergensi yang lebih singkat menggunakan FP8.
- Inferensi: Memberikan latensi rendah dan throughput tinggi untuk deployment AI real-time, termasuk DLSS untuk grafis.
- HPC: Mendukung simulasi fisika, penemuan obat, dan prediksi cuaca dengan presisi FP64.
- Lainnya: Genomik, robotika, dan pemrosesan data besar melalui instruksi DPX.
Untuk menggunakannya, developer perlu library seperti CUDA-X, TensorRT, atau framework seperti PyTorch/TensorFlow dengan mode mixed-precision aktif.
Kesimpulan
Tensor Cores telah merevolusi GPU NVIDIA menjadi platform AI utama, dengan evolusi yang terus meningkatkan efisiensi dan performa. Pada 2025, generasi Blackwell mewakili puncak saat ini, memungkinkan pemrosesan model AI skala masif dengan efisiensi tinggi.