- Gemma 4 26B-A4B dijalankan hingga kecepatan setara membaca pada server tanpa GPU dengan satu Intel Xeon E5-2620 v4 keluaran 2016, DDR3 128GB, menggunakan optimisasi
ik_llama.cpp
- Jalur decoder LLM terhambat terutama oleh bandwidth memori, bukan komputasi; CPU menghabiskan banyak waktu menunggu bobot berikutnya dipindahkan dari RAM ke cache
--spec-type mtp, --cpu-moe, --merge-up-gate-experts, --run-time-repack, dan lainnya mengurangi bottleneck lingkungan DDR3 melalui decoding spekulatif MTP, routing MoE, dan tata letak memori yang ramah cache
- Berdasarkan log, total kebutuhan memori adalah 82,355MiB; pada keseluruhan konteks 262K, cache KV sekitar 56GB lebih besar daripada bobot sekitar 25GB
- Alat black-box seperti
ollama kurang memiliki dukungan model yang dibutuhkan dan knob penyesuaian rinci; pada perangkat keras lama, performa hanya bisa dimaksimalkan dengan pemahaman mendalam tentang mesin inferensi dan struktur memori
Lingkungan eksekusi dan bottleneck utama
- Server uji adalah perangkat daur ulang, dengan spesifikasi Intel Xeon E5-2620 v4 @ 2.10GHz, 8 core 16 thread, AVX2, cache L3 20MiB, L2 2MiB, DDR3 128GB, tanpa GPU
- CPU ini tidak mendukung AVX-512, AVX-VNNI, BF16, dan juga tidak memiliki GPU terintegrasi
- Dalam inferensi LLM, jalur decoder yang menghasilkan token satu per satu terutama dibatasi oleh bandwidth memori, bukan jumlah komputasi
- Untuk menghitung token berikutnya, bobot yang berisi pengetahuan hasil pelatihan model harus terus dipindahkan dari RAM ke cache dan core CPU, sehingga prosesor lebih sering menunggu perpindahan bobot berikutnya daripada menghitung matriks
- “Memory wall” seperti ini menjadi penghalang performa penting bukan hanya pada Xeon, tetapi juga pada perangkat berkinerja tinggi seperti H100
Knob eksekusi yang dibutuhkan, bukan alat black-box
- Jika hanya menjalankan
llama-cli di lingkungan DDR3 tanpa GPU, hasilnya akan sangat lambat, dan masih ada banyak ruang peningkatan karena optimisasinya disesuaikan untuk kasus umum berbasis GPU
ollama mungkin tidak memiliki dukungan model yang dibutuhkan, dan tidak mengekspos pengaturan rinci yang cukup untuk benar-benar memaksimalkan performa eksekusi
- Eksekusi nyata baru mungkin dilakukan dengan menggabungkan banyak flag yang diekspos oleh
ik_llama.cpp
- Kumpulan flag utamanya adalah sebagai berikut
--spec-type mtp --draft-max 3 --draft-p-min 0.0 --spec-autotune
-sm graph -smgs -sas -mea 256 --split-mode-f32
-t 8 --parallel 8
--cpu-moe --merge-up-gate-experts
--flash-attn on --mla-use 3
--mlock --run-time-repack --no-kv-offload
Decoding spekulatif dan optimisasi MoE
--spec-type mtp --draft-max 3 --draft-p-min 0.0 --spec-autotune menggunakan verifier 26B bersama drafter MTP kecil yang dibuat sebelumnya
--draft-max 3 berarti maksimal 3 token per draft, --draft-p-min 0.0 menerima semua probabilitas, dan --spec-autotune menyesuaikan panjang rantai sesuai beban kerja
- Saat menghasilkan rantai inferensi yang panjang, meskipun pengguna hanya melihat jawaban akhir yang pendek, setiap token pemikiran tersembunyi tetap memerlukan seluruh jalur decoder
- Di CPU, biaya streaming bobot verifier ke cache tinggi, sementara layer aktif dari drafter kecil cukup pas di cache L3, sehingga manfaat decoding spekulatif menjadi lebih besar
- Gemma 4 26B-A4B memiliki struktur MoE dengan 8 ahli aktif per token dari total 128 ahli; dari total sekitar 25.2B parameter, parameter aktifnya sekitar 3.8B
--cpu-moe menyesuaikan routing agar sesuai dengan hierarki cache CPU, dan bekerja untuk mengurangi cache thrashing akibat terus berpindah di antara 128 ahli, mengosongkan cache, lalu mengambil ulang dari DDR3
--merge-up-gate-experts menggabungkan up projection dan gate projection di dalam ahli menjadi satu perkalian matriks, dan pada log hal ini terlihat sebagai fused_up_gate = 1
-t 8 disetel agar sesuai dengan 8 core fisik; pada beban kerja yang bottleneck-nya memori, memakai seluruh 16 thread SMT dapat menambah biaya penjadwalan alih-alih throughput
Penguncian memori, penataan ulang, dan pembagian graf
--run-time-repack menyusun ulang matriks bobot agar sesuai dengan tata letak cache CPU tepat sebelum inferensi, dan pada log muncul sebagai Repacked 265 tensors
- Pengaturan ini menambah biaya beberapa detik saat startup untuk menata ulang tabel angka di RAM menjadi bentuk yang lebih mudah dibaca CPU, lalu memungkinkan bandwidth memori dimanfaatkan semaksimal mungkin saat menghasilkan teks
--mlock adalah pengaturan untuk mengunci model di RAM agar sistem operasi tidak bisa men-swap-nya ke disk
- Jika batas memlock kernel tidak cukup, akan muncul peringatan
failed to mlock 27628376064-byte buffer dan Try increasing RLIMIT_MEMLOCK; ini bukan masalah LLM itu sendiri, melainkan masalah pengaturan default ulimit
--no-kv-offload melewati upaya memindahkan cache KV ke GPU pada lingkungan tanpa GPU, dan mempertahankannya di RAM sistem
-sm graph mencoba pembagian graf dengan membagi graf komputasi secara vertikal agar beberapa perangkat pemrosesan atau wilayah memori dapat menghitung bagian berbeda dari layer yang sama secara bersamaan
- Pada eksekusi kali ini, ia diturunkan dengan aman menjadi pembagian layer, disertai log
Split mode 'graph' is not supported for Gemma4 external MTP
-sas menginstruksikan pembagian beban kerja antar-socket CPU fisik atau antar-node NUMA, dan --split-mode-f32 membuat titik-titik perantara yang digabungkan kembali setelah pembagian menggunakan presisi floating point 32-bit
Attention, penggunaan memori, dan kesimpulan
- ikawrakow menulis kernel kustom untuk menangani Flash Attention di CPU, sehingga pemrosesan konteks berat dapat berjalan tanpa GPU
--flash-attn on menggabungkan softmax attention dan perkalian matriks sehingga seluruh matriks attention N×N tidak ditulis secara fisik ke RAM, melainkan dihitung dan dikonsumsi di dalam cache per chunk kecil
--mla-use 3 mengaktifkan Multi-Head Latent Attention untuk mengompresi Key dan Value pada cache KV menjadi representasi laten yang lebih kecil
- Log menampilkan
flash_attn = 1, fused_moe = 1, fused_up_gate = 1, yang menunjukkan optimisasi tersebut benar-benar diterapkan
- Berdasarkan log memori, total seluruh layer adalah 81,607.46MiB, dan memori yang dibutuhkan untuk tensor model serta cache adalah 82,355MiB
- Pada keseluruhan konteks 262K, bobot sekitar 25GB dan cache KV sekitar 56GB, sehingga cache KV lebih besar daripada model
- Konfigurasi ini memuat MoE 25B parameter dan melakukan decoding spekulatif dengan drafter MTP, sehingga dapat menghasilkan teks pada kecepatan membaca di server tanpa GPU dengan Xeon keluaran 2016 dan DDR3
- Kesimpulannya, bottleneck utama saat menjalankan AI open-weight modern secara lokal bukan hanya silikonnya, tetapi juga pemahaman tentang cara kerja mesin inferensi dan struktur memori; dengan fork yang tepat, kuantisasi yang dituning, dan pemahaman arsitektur memori, server lama pun masih bisa menjalankannya
2 komentar
Komentar Hacker News
Saya menulis ini karena frustrasi dengan minimnya cara untuk menjalankan model Gemma 4 Drafter baru, dan karena alat-alat arus utama menyembunyikan titik pengaturan performa
Pada akhirnya saya berhasil menjalankan model MoE 26B terbaru pada kecepatan baca di server daur ulang lama tanpa GPU, hanya dengan satu Xeon E5-2620 v4 dan RAM DDR3 128GB
Saya juga menautkan model terkuantisasi di akhir tulisan, tetapi itu tidak akan berjalan kecuali Anda memakai fork ik_llama-cpp yang disebutkan, dan untuk detailnya Anda perlu melihat tulisan lain
Saya bukan insinyur machine learning, dan servernya juga sibuk berperan sebagai cache Nix, tetapi kalau ada pertanyaan saya akan coba jawab sebisa mungkin
Karena saat satu thread menunggu DDR3, thread lain bisa dijalankan
Saya juga kurang paham penjelasan
--cpu-moe. Satu expert memiliki sekitar 4.0GiB parameter, sedangkan cache L3 hanya 20MiB, jadi bahkan jika urutan expert dioptimalkan, rasanya parameter itu tetap tidak bisa di-cache secara berartiSeperti yang dikatakan orang lain, hanya sebagian Intel Xeon E5-2xxx v4 yang mendukung DDR3, dan menurut materi Intel, E5-2620 v4 bukan salah satunya
Konfigurasinya dual Xeon dan DDR3 128GB, dengan CPU 2 × Xeon E5-2697 v2 total 24 core/48 thread, jadi jumlah core lebih baik, tetapi selisih nyatanya mungkin tidak besar
Perangkat ini cuma berdebu, jadi Gemma pada kecepatan baca terdengar cukup menjanjikan
Cari “chia farming” di Amazon, tapi abaikan chia seeds
Sekarang perangkat yang sama kira-kira 2,5 kali lebih mahal, tetapi masih jauh lebih murah daripada mesin DDR5 generasi sekarang
https://www.amazon.com/dp/B095TRGCSX
Intel(R) Xeon(R) CPU E5-2680 0 @ 2.70GHz, CPU online 0-31, RAM 128GBSaya penasaran apakah kalau slot DIMM ada 8, bandwidth memori benar-benar jadi lebih baik. Saat ini perangkat malang ini cuma dipakai untuk menonton YouTube
Belum sampai ke sana, tetapi titik akhir yang jelas ketika gelembung saat ini berakhir adalah model terbuka yang berjalan di perangkat dan hardware lokal menjadi “cukup bagus” untuk sebagian besar penggunaan
Jika itu terjadi, apa yang sedang berlangsung di industri teknologi saat ini bisa runtuh total
Kalau benar-benar mentok saya akan memanggil API Claude, tetapi sepertinya 80% kebutuhan saya bisa ditangani model lokal yang lebih bodoh
Bahasa pemrograman dan teknik tidak banyak berubah, jadi saya berharap ini bisa dipakai setidaknya 5 tahun, dan nanti cukup upgrade ketika ada optimasi yang memungkinkan model lebih pintar masuk ke VRAM yang sama
Saya suka arah ini
Dugaan saya mengapa mereka tidak melakukannya adalah karena lab AI saat ini menjual model dengan kerugian besar, jadi bagi Amazon penggunaan komputasi bermargin rendah kurang menarik dibanding produk lain yang marginnya lebih tinggi
Untuk membuat keadaan sekarang runtuh, mungkin tidak perlu sampai ke eksekusi lokal. Begitu landasan uang gratis lab AI habis dan mereka harus menjual di atas biaya eksekusi nyata, siapa pun yang punya komputasi akan punya insentif untuk menawarkan layanan model terbuka lebih murah pada harga komoditas
Semua orang pada akhirnya akan punya model dan kemampuan untuk menjalankannya, dan karena itu kelangkaan GPU justru menguntungkan mereka
Harapan mereka bergantung pada perusahaan besar dan UKM memindahkan semua alur kerja ke cloud, sementara para karyawan berlomba memakai token sebanyak mungkin
Model yang “cukup bagus” ditambah privasi dan penghematan biaya jangka panjang itu menarik
Ironisnya, semakin bagus lingkungan eksekusi umum untuk coding agent, semakin kecil moat layanan seperti Claude. Sulit dipercaya seberapa cepat beberapa model terbuka menyusul model terdepan hanya dalam beberapa bulan
Tulisannya bagus dan secara teknis juga mengesankan. Saya setuju bahwa kita perlu memahami pipeline build dan bisa menjalankannya secara lokal
Hanya saja, tergantung tarif listrik, ini mungkin tidak ekonomis. Server lama kurang efisien secara energi, dan saya tadinya mengira server Xeon lama seperti ini akan mengonsumsi sekitar 200W saat beban, padahal model yang sama tersedia di OpenRouter seharga 0,1/0,3 dolar per 1 juta token, 76 token/detik, konteks 262k
Selain itu, server seperti ini berisik. Meski begitu, sepertinya perkiraan 200W tadi terlalu tinggi; server Xeon lama yang pernah saya pakai memang boros listrik, tetapi saya tidak ingat model pastinya
Server memang cenderung berisik, tetapi itu juga tergantung konfigurasinya. Banyak hosting murah berbasis chip seperti ini, dan efisiensi dayanya lebih baik dari perkiraan
Jika konfigurasi serupa dijalankan di casing 4U dengan kipas 120mm yang lambat, hasilnya baik-baik saja
Senang melihat orang lain juga menyadari hal ini. Saya menjalankan Gemma 26B-A4B Q4 di kontainer Xeon keluaran 2012 dengan RAM 16~24GB, dan hasilnya sekitar 8~12 token/detik
Tentu tidak bisa dibandingkan dengan konteks besar atau eksekusi GPU, dan decoder gambar di llama.cpp juga jauh lebih lambat daripada GPU, tetapi untuk tugas otomatisasi kecil atau pertanyaan pengetahuan umum, ini cukup memadai. Cukup cepat untuk diikuti sambil membaca, jadi rasanya tidak terlalu menunggu
Konfigurasinya adalah build
llama.cppdengan OpenBLAS dan OpenMP aktif,OPENBLAS_NUM_THREADS=4,OMP_NUM_THREADS=4,unsloth/gemma-4-26B-A4B-it-GGUF:UD-Q4_K_XL, cacheq8_0, dan konteks 8192Perlu mencari optimasi khusus CPU seperti AVX2, dan saya sempat mencoba MTP tetapi tidak ada peningkatan performa. Cache, konteks, dan ukuran batch bisa diutak-atik, atau bahkan diturunkan sampai Q2, dan sebaiknya hindari alokasi thread berlebihan. Saya sarankan mulai dari default atau
llama-benchSaat pengujian, saya menjalankan
gemma4:e4b-it-q4_K_Myang sepenuhnya muat di VRAM 11GB, dan tembus lebih dari 50 token/detik. Model sekecil itu tidak terlalu berguna untuk coding, tetapi mungkin ada kegunaan lainSaya ingin membuat Wake-on-Use dan memakainya seperti ChatGPT pribadi. Mungkin bisa dengan menaruh Pi sebagai proxy lalu memanggil skrip Wake-on-LAN, dan suatu hari nanti ini sepertinya bisa jadi proyek akhir pekan yang seru
LLM yang selalu aktif adalah dense
Gemma4:31b, yang bahkan tidak muat setengahnya di 2060 12GB; sangat lambat, tetapi kualitasnya bagus, dan karena dipakai untuk pemrosesan antrean otomatis, saya tidak terus menunggu outputnya. Saya juga punya satu 2060 lagi, tetapi kalau keduanya dipasang PC-nya gagal POSTSaya sempat mempertimbangkan Mac Studio Pro cukup lama, tetapi akhirnya memilih jalur ini. Saya menyiapkan mesin headless HP Z620 dengan 192GB ECC RAM, dual Xeon E5-2680 v2, Optane AIC, dua P102-100 10GB VRAM, SSD boot minimal berisi Debian 12.6, dan CUDA versi lama yang dipatok agar tetap mendukung kartu Pascal
Saya menggunakannya dari jarak jauh di ruang bawah tanah lewat AMT/meshcommander, menjalankan
llama.cppdan frontend, lalu mengaksesnya lewat jaringan lokal. Saya sedang mencoba Talkie, Qwen 3.6 27b, dan medgemma, dan selama memilih kuantisasi yang tepat, performa GGUF secara umum cukup baikTotal biayanya kurang dari $500, tetapi karena server ini dibeli dari eBay tahun lalu, situasinya sekarang mungkin berbeda
Ke depannya, jika LLM ternary benar-benar berkembang, saya berharap perangkat keras tua ini ternyata bisa menampung model berdensitas tinggi yang sarat pengetahuan. Tidak masalah kalau ukurannya melebihi RAM GPU lalu meluap ke Optane, karena yang penting adalah pengetahuan fakta umum, bukan kecepatan
Rencana akhirnya adalah setelah semuanya siap, mesin ini akan disimpan di tong sampah Faraday di ruang bawah tanah sebagai oracle untuk “membangun kembali peradaban” saat dunia runtuh. Tentu dalam situasi seperti itu listrik akan jadi masalah, tetapi jika perangkat keras seperti ini semurah ini dan AI modern cukup sering praktis dipakai, rasanya layak dicoba
Hal paling menarik dalam perkembangan AI bukan AGI atau model terbaru dari unicorn AI tertentu, tetapi apa yang bisa dijalankan secara lokal
Enam tahun lalu, kita bisa menjalankan model yang seru tetapi nyaris tidak berguna di PC gaming kelas atas, sedangkan sekarang laptop M5 bisa menjalankan sesuatu yang 100 kali lebih baik
Jika pasar benar-benar merespons keterbatasan memori dan perkembangan Apple silicon terus melaju dengan kecepatan yang sama, maka apa yang bisa dijalankan secara lokal enam tahun lagi akan sangat menarik, atau mungkin menakutkan
Saya juga tidak tahu apa arti semua ini bagi valuasi perusahaan AI. Dulu saya pernah menanyakan hal serupa kepada pegawai perusahaan itu di sebuah acara, tetapi dia tidak menjawab dan malah pergi mengambil koktail
Bisnis AI itu padat modal seperti pabrik tua. Data center mahal, model menghabiskan banyak listrik, dan perangkat keras internal harus diganti tiap 3~4 tahun
Model yang lebih kecil dan lebih terspesialisasi akan menggerus margin dari bawah. Untuk transkripsi, suara, atau deteksi gambar, tidak perlu model raksasa
Tidak ada alasan untuk mengharapkan margin tinggi seperti bisnis perangkat lunak tradisional; sebagian besar keuntungan AI akan mengalir ke konsumen. Namun beberapa raksasa seperti Microsoft, Google, Amazon, dan Meta mungkin masih bisa mengejar keunggulan biaya lewat skala ekonomi
Tidak harus GPU gaming kelas atas seperti 5080; dengan GPU gaming yang lumayan pun Anda sudah bisa menjalankan model lokal yang lebih baik daripada state of the art awal 2025
Tergantung tugas yang diinginkan, mungkin perlu mengganti model, dan model superbesar yang bisa melakukan semuanya masih tetap wilayah data center
Tetapi kebanyakan orang yang punya pekerjaan penuh waktu dan dua anak tidak punya waktu maupun energi untuk memasang patch dan melakukan pemeliharaan. Sistem terus makin rumit dan bug juga makin banyak. Ini kompromi lama antara kebebasan dan kemudahan
Sebagian besar pengguna bahkan tidak tahu apa itu LLM atau bagaimana cara menjalankannya. Banyak pengguna LLM memakai apa yang disediakan tempat kerja mereka sebagai default, dan pengguna yang sedikit lebih paham pun tampaknya tidak keberatan membayar langganan OpenAI atau Anthropic
Memang akan muncul basis pengguna model berbobot terbuka yang kecil tetapi berdedikasi dan lebih suka LLM lokal, tetapi sisanya kemungkinan besar tetap akan mengonsumsi dari penyedia besar. Mungkin jadinya mirip pilihan sistem operasi saat ini: sedikit pengguna Linux, dan mayoritas memakai Windows, macOS, atau Chrome
Game berumur 5~6 tahun bisa dibeli jauh lebih murah dan tetap bisa dijalankan di perangkat keras biasa. Tetapi industrinya tidak diam selama 5 tahun, jadi perangkat lunak baru yang membutuhkan perangkat keras lebih baik akan terus bermunculan
Hasil yang diungkap penulis asli di komentar adalah sekitar 12 token/detik
Ini adalah upaya yang jauh lebih mengesankan daripada yang saya kira mungkin dilakukan pada hardware ini, tetapi masih cukup jauh dari tingkat yang dibutuhkan untuk sesi interaktif yang memuaskan
Sering kali 100~500 kali lebih murah daripada model mutakhir, dan dalam beberapa kasus 2~5 kali lebih cepat dalam token/detik
Untuk penggunaan latar belakang, ini akan cukup baik
Itu memang bekerja, tetapi throughput-nya bukan untuk pekerjaan serius
E5-2620 v4 sangat bagus. Saya sudah memakainya selama 10 tahun, dan sempat ingin upgrade tetapi berhenti setelah melihat harga saat ini
Saya memasangkannya dengan 64GB DDR4 dan RX 9060 XT 16GB, dan game masih berjalan cepat. Di DOOM The Dark Ages, CPU mungkin sedikit menjadi bottleneck, tetapi pada 60fps itu bukan masalah
Menjalankan LLM ringan di GPU jelas pilihan yang masuk akal, dan keren bahwa di CPU pun ini bisa berjalan lumayan baik jika dituning
Sebulan lalu saya membeli 2667 v4 seharga 30 dolar dan tampaknya peningkatan performanya akan cukup terasa, tetapi saya belum membutuhkannya. Jika didorong ke arah LLM seperti di tulisan ini, saya mungkin akan upgrade karena 2667 bisa menangani RAM yang sedikit lebih cepat
Saya masih cukup terkejut dengan apa saja yang bisa ditemukan di pasar barang bekas
Saya tidak menyangka harga RAM dan GPU akan melonjak setinggi ini, jadi kebetulan timing saya bagus. Saya juga sempat berpikir untuk mendapatkan 3080 sekitar 300 dolar di eBay dan menjual 1080 Ti, tetapi selain itu ini upgrade yang luar biasa
Listriknya dihabiskan seperti Coca Cola ditenggak, tetapi sebagai workstation ini bekerja dengan sangat baik, jadi saya berencana memaksainya sampai rusak
Dulu saya mengira kerusakan akibat panas akan membunuh CPU setelah sekitar 5~7 tahun, tetapi saya jadi penasaran apakah anggapan itu salah. Mungkin CPU modern jauh lebih kuat dan tangguh daripada dulu
Baru-baru ini ada tulisan serupa tentang optimasi Xeon lawas
“High-Performance AI on a Budget: Optimizing llama.cpp for Qwen3.5 Inference on a Dual-GPU HP Z440”
https://news.ycombinator.com/item?id=47320244
Mengejutkannya, Itanium juga tampaknya cukup cocok untuk LLM: https://medium.com/@tglozar/running-llama-inference-on-intel...
Kalau dipikir-pikir, memang masuk akal
Isinya menarik. Saya punya sistem Xeon lama, jadi sepertinya saya harus mencobanya.