Pemecahan masalahPanduan
LLM lokal kehabisan VRAM? Lihat bobot vs KV cache dengan gputaskman
Temukan apa yang memenuhi memori GPU Anda saat model Ollama atau llama.cpp gagal atau melambat, pengaturan mana yang harus diubah, dan kapan API lebih sederhana.

Di halaman ini
Model lokal Anda berjalan baik kemarin, hari ini gagal dimuat atau sangat lambat, dan satu-satunya yang Anda ubah adalah panjang konteks. Penyebab umumnya adalah KV cache, dan alat terminal gratis bernama gputaskman dapat menunjukkannya alih-alih membiarkan Anda menebak.
Monitor GPU biasa memberi tahu seberapa penuh VRAM. Itu "apa", bukan "mengapa". README gputaskman (diperiksa 5 November 2026) menyebut dirinya "htop untuk isi GPU Anda, bukan hanya seberapa penuhnya." Ini adalah proyek eksperimental awal berlisensi MIT, jadi anggap sebagai lensa yang berguna, bukan vonis.
Apa yang sebenarnya memenuhi VRAM Anda#
Bayangkan VRAM sebagai koper. Ada tiga hal yang masuk:
- Bobot: model itu sendiri. Ukurannya tetap untuk model dan kuantisasi tertentu.
- KV cache: memori jangka pendek model tentang percakapan Anda. Ia tumbuh seiring konteks bertambah.
- Buffer komputasi: ruang kerja sementara yang dibutuhkan runtime saat bekerja.
Ketika orang berkata "modelnya tidak muat", sering kali maksudnya bobotnya muat tetapi cache yang Anda minta di atasnya tidak. Perbedaan ini menentukan solusinya, dan justru inilah yang disembunyikan monitor biasa.
Pilih kasus Anda
Apa yang Anda lihat?
Pilih opsi untuk melihat jawabannya
Gagal tepat saat dimuat
Bobot saja, atau bobot plus cache untuk panjang konteks Anda, lebih besar dari VRAM bebas. Pilih kuantisasi lebih kecil atau model lebih kecil, atau perpendek konteks.
Dimuat, lalu melambat setelah Anda menaikkan konteks
Kemungkinan besar KV cache membesar dan sebagian pekerjaan tidak lagi muat di VRAM; tampilan per proses dan pembagiannya akan mengonfirmasi. Turunkan panjang konteks dulu; itu tombol termurah.
Dulu berhasil, sekarang gagal
Proses lain mengambil VRAM: game, browser dengan akselerasi perangkat keras, server model kedua. Lihat tampilan per proses sebelum menyentuh model.
Pasang gputaskman dan lihat per proses#
README mencantumkan tiga cara masuk: ZIP Windows portabel, klon yang dijalankan dengan uv run -, atau pip di dalam lingkungan virtual Python 3.11+. Platform, seperti dijelaskan README:
- Windows 10/11 64-bit dengan GPU NVIDIA atau AMD (ZIP x64 dan ARM64 di halaman Releases);
- Linux dan WSL dengan GPU NVIDIA (glibc 2.35+; WSL dapat membaca penghitung host Windows);
- macOS pada Apple Silicon hanya dari klon sumber, tanpa build portabel.
ZIP Windows tidak ditandatangani. Unduh hanya dari halaman Releases repositori resmi, github.com/shanselman/gputaskman. Salin perintah persis dari README: proyek ini masih muda dan opsi dapat berubah.
Setelah berjalan, dua tampilan penting untuk masalah ini:
- Tampilan perangkat: penggunaan VRAM, aktivitas GPU, PCIe, suhu, daya, clock, dan grafik riwayat. Bagus untuk "apakah ada yang melonjak?"
- Tampilan proses: memori GPU lokal per proses, RAM sistem yang dapat diakses GPU, aktivitas mesin, dan runtime yang terdeteksi (CUDA, HIP, Vulkan, Direct3D, ggml, ONNX Runtime).
Di tampilan proses, temukan server model Anda (untuk Ollama, runner bawaannya). Lalu periksa sisa daftar. Jika browser atau game memegang beberapa gigabyte, Anda sudah menemukan jawabannya tanpa menyentuh model.
Bobot, KV cache, buffer: dari mana angka-angka itu berasal#
Inspektur model menampilkan arsitektur, kuantisasi, dan ukuran buffer jika tersedia. Satu catatan penting: menurut README, bobot, KV cache, dan buffer komputasi berasal dari log pemuatan runtime ketika logging yang kompatibel diaktifkan. Untuk llama.cpp, jalankan llama-server Anda sendiri dengan logging (-; README menyebut level 4 diperlukan untuk ukuran buffer). Untuk Ollama, gputaskman menggunakan server.log Ollama jika tersedia. Jika tidak, nilainya adalah perkiraan dari metadata GGUF dan ukuran konteks, dengan asumsi penempatan gaya llama.cpp. Akuntansi KV per model dalam satu proses belum didukung.

Jadi baca pembagian hasil perkiraan sebagai "kira-kira", dan pembagian berbasis log sebagai "apa yang dilaporkan runtime". Untuk Ollama, README menyebut runner bawaan terdeteksi, blob GGUF dinamai dari manifes Ollama, dan server.log digunakan jika tersedia. Dukungan LM Studio parsial: model dinamai dari foldernya dan diuji melalui API lokalnya, tetapi ini diuji dengan respons fixture, bukan end to end.
Anda juga dapat menyimpan dua snapshot sebagai JSON dan membandingkannya dengan perintah diff. Itu cara bersih untuk menjawab "apa yang berubah saat saya beralih dari konteks 4K ke 16K?": ambil satu snapshot, ubah pengaturan, muat ulang, ambil snapshot lain.
Cek cepat
Model Anda dimuat tetapi melambat setelah Anda menaikkan panjang konteks. Apa yang harus diperiksa pertama?
Tampilkan jawaban
Jawaban: KV cache
Bobot tidak berubah dengan panjang konteks; KV cache berubah. Menurunkan panjang konteks langsung mengecilkannya.
Tombol mana yang harus diputar#
Membaca pembagiannya memberi Anda keputusan, bukan sekadar gambaran.
Bobot adalah bagian besar. Beralih ke kuantisasi lebih kecil atau model lebih kecil. Ini satu-satunya tuas yang mengecilkan bobot. Jika Anda ingin perhitungan memori di baliknya, lihat Bisakah model 125B berjalan di GPU 16 GB?
KV cache adalah bagian besar. Perpendek konteks. Di Ollama Anda dapat mencobanya langsung di sesi:
ollama run <your-model>
>>> /set parameter num_ctx 81928192 hanyalah nilai contoh; pilih yang benar-benar dibutuhkan tugas Anda (perintah sesuai dokumentasi Ollama, diperiksa 5 November 2026).
Jika nanti Anda melihat kelambatan aneh pada pemrosesan prompt dengan cache terkuantisasi di llama.cpp, perbaikan untuk KV cache q5_1 ini adalah tujuan berikutnya. Untuk mengetahui apa yang sebenarnya ditampung jendela konteks, baca Apa itu jendela konteks?
Proses lain adalah bagian besar. Tutup, atau jalankan di GPU terintegrasi. Tidak ada yang perlu diubah pada model.
Daftar periksa
Sebelum menyalahkan model
Jika tidak berhasil#
- Pembagiannya tampak aneh. Periksa apakah itu perkiraan (tidak ada log pemuatan yang kompatibel). Dengan llama.cpp, jalankan llama-server Anda dengan
-dan muat ulang model. Dengan Ollama, gputaskman menggunakan- log- file server. log - lv 4 server.logjika ada; label perkiraan normal di sana. - LM Studio menampilkan lebih sedikit detail. Dukungannya parsial, seperti di atas.
- Tidak ada GPU NVIDIA atau AMD. Alat ini hanya mencakup beban kerja GPU lokal; beban kerja CPU-only, NPU-only, dan cloud di luar cakupan.
- macOS. Jalankan dari klon sumber; tidak ada build portabel.
Ketika model hosted adalah solusi yang lebih sederhana#
Katakanlah Anda membutuhkan konteks panjang untuk satu tugas, seperti merangkum dokumen besar, dan GPU Anda hanya muat model dengan konteks pendek. Anda bisa terus menyetel, atau mengeluarkan VRAM dari persamaan. Untuk tugas seperti itu CheapTokens menawarkan DeepSeek-V4-Flash: konteks 380K, hingga 32.768 token keluaran per jawaban, satu harga kapan pun, melalui API yang kompatibel dengan OpenAI. GLM-5.3-Flash memiliki konteks 390K dan hingga 8.192 token keluaran.
Panggilannya adalah format OpenAI biasa (letakkan kunci Anda di variabel lingkungan):
curl https://api.cheaptokens.dev/v1/chat/completions \
-H "Authorization: Bearer $CHEAPTOKENS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "deepseek-ai/DeepSeek-V4-Flash-0731", "messages": [{"role": "user", "content": "Summarize this document: ..."}]}'Detail penyiapan ada di dokumentasi. Aturan praktis untuk memutuskan: jika suatu tugas terus membutuhkan lebih banyak konteks atau model lebih besar daripada yang ditampung kartu Anda, dan tampilan proses menunjukkan VRAM Anda sudah banyak terpakai, kirim tugas itu ke API dan pertahankan tugas kecil yang cepat secara lokal. Jalankan DeepSeek secara lokal atau gunakan API? membahas trade-off lebih dalam.
Katakanlah Anda merangkum 100 dokumen besar, masing-masing 60.000 token masukan dan 1.000 token keluaran (jauh di dalam jendela 380K). Berikut biayanya hari ini:
| Model | Input $/1Jt | Output $/1Jt | Per permintaan | 100 permintaan | OpenRouter, 100 permintaan |
|---|---|---|---|---|---|
| GLM-5.3-Flash | $0.02 | $0.04 | $0.0012 | $0.124 | $0.209 |
| DeepSeek-V4-Flash | $0.015 | $0.10 | $0.001 | $0.10 | $0.434 |
| MiniMax-M2.7 | $0.05 | $0.15 | $0.0032 | $0.315 | $3.78 |
60.000 token input dan 1.000 token output per permintaan. Harga per 1 juta token adalah harga saat ini dan berubah seiring tarif kami; kolom OpenRouter menunjukkan harga referensi untuk beban kerja yang sama.
Dari angka tersebut, $0.001 per dokumen adalah harga langsung untuk satu panggilan semacam itu, dan secara total, dengan masukan dan keluaran dihitung bersama, hasilnya di bawah OpenRouter.
Kalkulator biaya
Batch Anda sendiri: ubah token dan permintaan
Token input per permintaan: 60.000 · Token output per permintaan: 1.000 · Permintaan per hari: 100
| Model | Per hari | Per bulan |
|---|---|---|
| GLM-5.3-Flash$0.02$0.04 | $0.124 | $3.72 |
| DeepSeek-V4-Flash$0.015$0.10 | $0.10 | $3.00 |
| MiniMax-M2.7$0.05$0.15 | $0.315 | $9.45 |



