Project: GPU Memory Bandwidth & FLOPS Profiler
I0 — Fondasi Hardware & Komputasi GPU untuk LLM
Bangun skrip benchmarking menggunakan PyTorch dan CUDA Event untuk mengukur secara langsung kapasitas peak compute (TFLOPS) dan memory bandwidth nyata (GB/s) pada GPU.
Yang Dibangun
- Profiler Python yang menguji operasi Compute-Bound (GEMM matriks besar) vs Memory-Bound (element-wise add / Softmax / LayerNorm).
- Visualisasi kurva Roofline Model yang menunjukkan titik transisi memory vs compute bottleneck.
Langkah pengerjaan
- Tulis skrip PyTorch pengukur waktu eksekusi presisi tinggi menggunakan torch.cuda.Event
- Benchmark perkalian matriks GEMM (N=8192) FP16/BF16 dan hitung TFLOPS aktual
- Benchmark operasi streaming memori murni (copy/add tensor 4GB) dan hitung bandwidth nyata (GB/s)
- Plot grafik perbandingan efisiensi FLOP/s vs Ukuran Matriks
- Buat kesimpulan analisis karakteristik GPU lokal/Colab ke dalam README
I0