LLM yang Dipercepat Perangkat Keras: Survei dan Perbandingan Komprehensif
- LLM telah muncul sebagai alat yang kuat dalam tugas pemrosesan bahasa alami, merevolusi bidang ini dengan kemampuannya memahami dan menghasilkan teks yang menyerupai manusia
- Makalah ini secara komprehensif meninjau berbagai upaya penelitian untuk mempercepat jaringan transformer bagi model bahasa besar dengan menggunakan akselerator perangkat keras
Kerangka kerja dan perbandingan
- Memperkenalkan kerangka kerja yang diusulkan dan melakukan perbandingan kualitatif serta kuantitatif terkait teknologi, platform pemrosesan (FPGA, ASIC, in-memory, GPU), peningkatan kecepatan, efisiensi energi, kinerja (GOPs), dan efisiensi energi (GOPs/W)
- Tantangan utamanya adalah setiap skema yang diusulkan diimplementasikan dengan teknologi proses yang berbeda, sehingga perbandingan yang adil menjadi sulit
- Kontribusi utama makalah ini adalah memperkirakan hasil kinerja dan efisiensi energi pada teknologi yang sama agar memungkinkan perbandingan yang adil
Eksperimen dan hasil
- Mengimplementasikan sebagian dari LLM pada beberapa chip FPGA untuk memperkirakan hasil pada teknologi proses yang sama dan membandingkan kinerjanya secara adil
Ringkasan GN⁺
- Makalah ini memberikan survei komprehensif tentang akselerasi perangkat keras untuk model bahasa besar (LLM)
- Membandingkan kinerja dan efisiensi energi di berbagai platform pemrosesan sehingga memungkinkan perbandingan yang adil
- Melalui eksperimen menggunakan chip FPGA, makalah ini memperkirakan hasil pada teknologi yang sama
- Dapat berguna bagi orang-orang yang tertarik pada peningkatan kinerja LLM di bidang pemrosesan bahasa alami
- Proyek lain dengan fungsi serupa antara lain akselerator GPU dari NVIDIA dan TPU dari Google
1 komentar
Komentar Hacker News
Makalah ini punya penjelasan latar belakang yang dangkal, jadi untuk menambahkan konteks: sejak awal 1990-an sudah ada pengamatan bahwa performa komputasi CPU (FLOPs) meningkat lebih cepat daripada bandwidth memori, dan pada 1995 William Wulf dan Sally Mckee memprediksi bahwa kesenjangan ini akan mengarah pada memory wall, yaitu kondisi ketika sebagian besar komputasi terhambat bukan oleh operasi aritmetika, melainkan oleh akses data
Selama 20 tahun terakhir, FLOPS maksimum perangkat keras server naik 3 kali lipat setiap 2 tahun, tetapi bandwidth DRAM dan interkoneksi masing-masing hanya meningkat sekitar 1,6 kali dan 1,4 kali
Karena itu, dalam pelatihan dan inferensi LLM, bottleneck performa makin bergeser ke bandwidth memori, dan khususnya pada model decoder Transformer autoregresif, ini bisa menjadi bottleneck yang dominan
Tren ini menciptakan kebutuhan akan teknologi seperti Compute-in-memory(CIM) dan processing-in-memory(PIM). Karena perangkat keras ini melakukan komputasi langsung pada data di dalam memori tanpa terlebih dulu memindahkan data ke register CPU, ia dapat mengurangi latensi dan konsumsi daya, serta berpotensi mengakali memory wall
Makalah tersebut mengekstrapolasi ASIC dan perangkat keras FPGA ke acuan 16nm dengan polynomial fitting untuk membandingkannya pada ukuran proses semikonduktor yang berbeda: “Berdasarkan ‘Scaling equations for the accurate prediction of CMOS device performance from 180 nm to 7nm’ karya Aaron Stillmaker dan B.Baas, kami mengekstrapolasi performa dan efisiensi energi pada teknologi 16nm demi perbandingan yang adil”
Namun untuk CIM/PIM, mereka tidak melakukan ekstrapolasi dengan alasan bahwa “karena performa akselerator in-memory tidak hanya didasarkan pada teknologi proses, ekstrapolasi hanya dilakukan untuk akselerator FPGA dan ASIC, yang performa sistemnya sangat dipengaruhi oleh teknologi proses.” Sekilas ini terasa seperti keputusan yang aneh, dan mungkin ada orang yang bisa menjelaskan keputusan ini lebih lanjut
Bacaan tambahan: https://arxiv.org/abs/2403.14123, https://en.m.wikipedia.org/wiki/In-memory_processing, http://vcl.ece.ucdavis.edu/pubs/2017.02.VLSIintegration.Tech...
Meski begitu, saya suka produk yang masuk dalam bentuk modul RAM dan harganya murah. Bisa dibayangkan banyak modul seperti itu ditancapkan ke board 1U lalu diikat dengan interkoneksi berkecepatan tinggi, atau bahkan memenuhi sebuah kartu PCI
PCI-e V4 berlalu begitu cepat sampai rasanya umurnya hanya sekitar 2 tahun, dan NVMeOF telah terskala dengan baik seiring performa fabric. H100 DGX saat ini memiliki interkoneksi 400GB/s
“Pertumbuhan pesat model AI dibatasi oleh kesenjangan yang makin melebar antara performa komputasi dan bandwidth memori. Model generasi berikutnya seperti GPT-5 diperkirakan akan mencapai skala 3 hingga 5 triliun parameter yang belum pernah terjadi sebelumnya, tetapi bottleneck teknis berupa bandwidth memori menjadi hambatan utama untuk sepenuhnya merealisasikan potensinya”
https://www.lycee.ai/blog/2024-09-04-samsung-memory-bottlene...
Saya sudah lama menyukai systolic array, dan setelah meninjau berbagai opsi selama beberapa dekade terakhir, saya melihat kisi Kartesius berisi sel sebagai solusi optimal
Setiap sel memiliki 4 bit input yang masing-masing datang dari tetangga, dan 4 bit output yang masing-masing keluar ke tetangga. Di tengahnya ada shift register 64-bit pada scan chain panjang, dan outputnya masuk ke 4 multiplexer 16:1 serta latch 4-bit
Dengan keajaiban graph coloring, jika semua sel diberi clock dalam pola papan catur, data bisa mengalir ke arah mana pun tanpa condong ke arah tertentu dan tanpa race condition. Input sel mana pun akan berada dalam keadaan stabil
Pendekatan ini memberi fleksibilitas FPGA tanpa harus mengkhawatirkan masalah timing, race condition, glitch, dan sebagainya. Semua jalur juga pendek, sehingga semuanya lokal, cepat, dan berdaya rendah
Sebagai gantinya, efisiensi gate-nya tidak bagus dan tidak menyediakan jalur terpendek untuk logika. Semua operasi tunggal pada dasarnya terjadi secara paralel, dan semua komputasi dipipeline
Ini ide yang sudah saya miliki sejak sekitar 1982, dan saya berharap ada yang mengambil alih lalu membuatnya dengan benar. Saya menyebutnya BitGrid
Materi terkait: https://arxiv.org/pdf/2406.08413
Memory Is All You Need: An Overview of Compute-in-Memory Architectures for Accelerating Large Language Model Inference
Saya ingin melihat LLM berjalan di WebGL, tempat segala sesuatu adalah tekstur. Sepertinya cukup menarik jika perbedaan arsitekturnya dilihat secara visual
Bottleneck saat ini adalah pemindahan memori, dan itulah sebabnya HBM mahal. Desain Nvidia juga dioptimalkan untuk memori, bottleneck yang sebenarnya, baik di level chip maupun level sistem
Kenyataannya, itu jarang terlihat
Apakah arsitektur hibrida FPGA + ASIC + in-memory bisa berperan dalam skalabilitas dan fleksibilitas? FPGA punya keunggulan fleksibilitas, ASIC punya performa, dan in-memory punya efisiensi energi, jadi saya penasaran apakah pendekatan hibrida yang mengintegrasikan semuanya dapat makin meningkatkan performa LLM
In-memory tampaknya tepat bukan hanya dari sisi performa, tetapi juga dari arah pendekatannya. Rasanya kurang masuk akal untuk membuat ASIC atau memprogram FPGA demi model yang, kalaupun beruntung, kemungkinan besar akan usang beberapa bulan kemudian
Ada makalah tentang menjalankan LLM dengan daya setara satu bola lampu
https://arxiv.org/abs/2406.02528
https://news.ucsc.edu/2024/06/matmul-free-llm.html
Intinya adalah memakai dua teknik untuk menghindari perkalian matriks. Pertama, semua angka di dalam matriks dipaksa menjadi nilai ternary yang hanya memiliki tiga nilai: -1, 0, +1, sehingga perkalian direduksi menjadi penjumlahan. Kedua, alih-alih mengalikan setiap elemen satu per satu, matriks ditumpuk lalu hanya operasi penting yang dijalankan
Para peneliti mengatakan mereka memperkenalkan komputasi berbasis waktu dalam pelatihan model untuk mempertahankan performa jaringan saraf, dan dengan demikian jaringan memiliki “memori” atas informasi penting yang diprosesnya, sehingga performanya meningkat
Pada GPU standar, penggunaan memori berkurang sekitar sepersepuluh dan kecepatannya sekitar 25% lebih tinggi, serta dapat menyediakan jalan untuk menjalankan algoritma pada kapasitas maksimum bahkan di perangkat dengan memori kecil seperti smartphone. Prototipe FPGA yang dibuat dalam 3 minggu melampaui throughput yang dapat dibaca manusia hanya dengan daya 13W, sedangkan GPU akan membutuhkan sekitar 700W, sehingga mereka mengatakan hardware kustom lebih dari 50 kali lebih efisien daripada GPU
Saya tidak yakin apakah in-memory yang dimaksud di sini berarti hardware khusus yang menggabungkan CPU dan RAM
Mengutip makalah akselerasi lama yang menunjukkan peningkatan 19 kali dibanding DRAM + GPU, “Karena operasi MAC mendominasi sebagian besar waktu eksekusi dalam beban kerja machine learning, kami mengusulkan perkalian di dalam subarray dan akumulasi di dalam bank. Perkalian ditangani dengan metode berbasis kolom yang melakukan operasi AND dan penjumlahan, dengan overhead area tambahan kurang dari 1%”
https://arxiv.org/pdf/2105.03736
Apakah ada cara untuk melihat konten Arxiv dengan lebih mudah dibaca?
Setiap kali masuk ke situs itu, saya bingung apakah sebenarnya ada antarmukanya atau tidak, lalu tersesat, sehingga biasanya keluar sebelum sampai ke isinya
Untuk makalah individual, ini cara terbaik, dan ada juga beberapa frontend Arxiv seperti https://arxiv-sanity-lite.com/