Cited attach; llama.cpp measured on the local desktop

Run a local coding assistant on a Radeon GPU

Start llama.cpp llama-server with an OpenAI-compatible /v1, then point Aider, Cline, or Continue at http://127.0.0.1:8080/v1. Ubuntu 24.04+ Vulkan is the measured path — /setup, /gpus/r9700. House file Qwen3.6-35B-A3B-UD-Q5_K_XL.gguf. LM Studio’s :1234 server is secondary — /setup/lm-studio. We do not invent harness tok/s or prices.

llama.cpp first

Try this

llama-server on Vulkan — the first /v1

llama.cpp’s llama-server README documents OpenAI-compatible GET /v1/models, POST /v1/chat/completions, and POST /v1/responses. House daily-driver flags from the 35B recipe: ./build-vk/bin/llama-server -m ~/models/Qwen3.6-35B-A3B-UD-Q5_K_XL.gguf -ngl 99 -c 262144 --cache-type-k f16 --cache-type-v f16 --host 127.0.0.1 --port 8080. Vulkan first; HIP / ROCm is the alternative compile on /rocm/vulkan-hip. Upstream default --port is 9931 in the current README — we pin --port 8080 so harnesses on this site keep http://127.0.0.1:8080/v1. Confirm with curl -s http://127.0.0.1:8080/v1/models. Those flags and the 35B decode table are measured on llama.cpp on the local desktop.

Do not start here

LM Studio or Ollama — secondary /v1 only

Aider, Cline, and Continue only need an OpenAI-shaped base URL. LM Studio’s documented server is http://127.0.0.1:1234/v1 — cited walk is /setup/lm-studio. Ollama is another wrapper; it is not the house stack and has no dedicated first-run page here yet. Do not let a harness download a CUDA llama.cpp on a Radeon. House Hermes on this site talks to :8080, not :1234. Attach is cited, not measured on the local desktop.

Zero to first edit

  1. 1 · Cited attach; llama.cpp measured on the local desktop

    Start llama-server — Vulkan first

    Build llama.cpp Vulkan on Ubuntu 24.04+ from /setup, then serve the house file: ./build-vk/bin/llama-server -m ~/models/Qwen3.6-35B-A3B-UD-Q5_K_XL.gguf -ngl 99 -c 262144 --cache-type-k f16 --cache-type-v f16 --host 127.0.0.1 --port 8080. Those are the same flags as the 35B recipe / tuning guide. HIP swap is the ROCm compile on Vulkan vs HIP — not the first token. llama-server README: OpenAI-shaped /v1, --host default 127.0.0.1, --alias for the API id. We pin --port 8080 (upstream README default is 9931). Confirm curl -s http://127.0.0.1:8080/v1/models before you open Aider.

  2. 2 · Cited attach; llama.cpp measured on the local desktop

    Pick Q6, Q5, or Q4 by VRAM — Q3 is a labeled estimate

    32 GB R9700: house Qwen3.6-35B-A3B UD-Q5_K_XL. 24 GB: size that same 35B on the calculator. 16 GB and below: use a /models file the calculator says fits (Qwen3.6-27B, Qwen3.8-27B, Gemma 3 27B, gpt-oss-20B) or offload 35B with both RAM lines labeled estimate. Every tier shows Q6 / Q5 / Q4 plus a cited Q3. Q1/Q2 stay off. OpenHands docs name Qwen3.6-35B-A3B as a local agent starting point — that is their cite, not a speed we invent. Flash on Strata is the fast-agent path, not this first /v1.

  3. 3 · Cited attach; llama.cpp measured on the local desktop

    Size context for agentic coding — 32K to 128K+

    Agents send files plus the chat. 32K is a short repo slice; 128K+ is the window that keeps a real edit loop. KV cache grows with -c, so decode slows and RAM rises. House daily driver is -c 262144. Hermes docs require at least 64K or they reject the model. Tables on this site publish 4K / 32K / 128K / 256K because speed moves: official UD-Q5 1-GPU llama.cpp is 102.39 / 90.52 / 66.43 / 44.4 tok/s at those lengths. The calculator prints Minimum system RAM needed (the load at the context you picked) and RAM needed at full context (262144 for the house 35B). Overnight UD-Q5 peaks are 37.32 GB at 4K and 42.9 GB at 256K — measured on llama.cpp, not inside Aider. Aider’s max_input_tokens cannot exceed server -c.

  4. 4 · Cited attach; llama.cpp measured on the local desktop

    Point Aider, Cline, and Continue at :8080/v1

    Copy the blocks below. Base URL is http://127.0.0.1:8080/v1. Model id must match GET /v1/models (house placeholder qwen; llama-server --alias sets it). API key is the non-empty placeholder local-not-a-secret — Aider requires it even locally. LM Studio is :1234 if you already followed /setup/lm-studio. House Hermes on the local desktop uses this same :8080. Attach is cited, not measured on the local desktop. For reliable tool-arg JSON, cite llama.cpp --json-schema / GBNF on /constrained-decoding — grammar decode is not a harness tok/s.

  5. 5 · Cited attach; llama.cpp measured on the local desktop

    LM Studio and Ollama stay secondary

    If the desktop app is already serving /v1, Aider/Cline/Continue can use that base URL instead. LM Studio: http://127.0.0.1:1234/v1 — /setup/lm-studio. Lemonade: http://127.0.0.1:13305/api/v1 — /setup/lemonade (note /api/v1). Ollama is a wrapper, not the measured path; prefer llama-server when you want this site’s flags and cards. Do not present llama.cpp tok/s as an Ollama, LM Studio, or Lemonade result.

  6. 6 · Cited attach; llama.cpp measured on the local desktop

    When the assistant sees no model

    curl /v1/models first. Empty list: server not up, wrong port, or --host not 127.0.0.1. Aider “unknown model”: add openai/ prefix and model settings. Cline connection error: do not append /chat/completions to the base URL. Continue leftover context: server --context-shift / reset, not a Continue bug we invent. GPU idle: you are on CPU — check Vulkan llama-server, not the IDE. Start from /troubleshoot. Cited ROCm rows live on /rocm-problems.

Cited llama-server line

House daily-driver flags. Vulkan binary. Loopback /v1. Measured on the local desktop as llama.cpp, not as a harness.

./build-vk/bin/llama-server -m ~/models/Qwen3.6-35B-A3B-UD-Q5_K_XL.gguf -ngl 99 -c 262144 --cache-type-k f16 --cache-type-v f16 --host 127.0.0.1 --port 8080

Copy-paste clients

Each block is cited from that tool’s OpenAI-compatible docs. Replace qwen with the id from GET /v1/models.

Aider

Prefix the model with openai/. Unknown models warn until you add .aider.model.settings.yml (max_input_tokens). Server -c still wins. Aider never talks to the GPU.

# Cited from Aider OpenAI-compatible docs. Key must be non-empty even locally.
export OPENAI_API_BASE=http://127.0.0.1:8080/v1
export OPENAI_API_KEY=local-not-a-secret
aider --model openai/qwen

# Same flags on the CLI:
# aider --openai-api-base http://127.0.0.1:8080/v1 \
#   --openai-api-key local-not-a-secret \
#   --model openai/qwen

Official Aider docs

Cline

Cline settings panel: API Provider = OpenAI Compatible. Model ID must match GET /v1/models. Tool quality is the model’s, not a Cline protocol we invent.

Provider: OpenAI Compatible
Base URL: http://127.0.0.1:8080/v1
API Key: local-not-a-secret
Model ID: qwen
# Do not append /chat/completions to the base URL.

Official Cline docs

Continue

Continue openai provider wants apiBase including /v1. The native llama.cpp provider uses the host without /v1. Attach is cited, not measured on the local desktop.

name: Local llama-server
version: 0.0.1
schema: v1
models:
  - name: Local Qwen
    provider: openai
    model: qwen
    apiBase: http://127.0.0.1:8080/v1
    apiKey: local-not-a-secret
# capabilities: [tool_use]   # only if the server actually implements tools

# Native llama.cpp provider (docs: apiBase *without* /v1):
# provider: llama.cpp
# apiBase: http://127.0.0.1:8080

Official Continue docs · config.yaml

Models by VRAM

Only files already on /models. Q6 / Q5 / Q4 plus a cited Q3 estimate. Nothing below Q3.

32 GB

R9700 — measured house 35B

First pick: Qwen3.6-35B-A3B Unsloth UD-Q5_K_XL at 262144 on one R9700. Same file as /models/qwen36. Q6_K, UD-Q5_K_XL, and Q4_K_M are overnight llama.cpp siblings. UD-Q3_K_XL (Hugging Face listing for Qwen3.6-35B-A3B-UD-Q3_K_XL.gguf (16.8 GB)) is a labeled estimate. Speeds above are llama.cpp, not Aider.

/gpus/r9700

24 GB

RX 7900 XTX — size 35B on the calculator

Same Qwen3.6-35B-A3B family from /models/qwen36. Q6 / Q5 / Q4 first; UD-Q3_K_XL stays a labeled estimate. House 35B at long context may spill — print Minimum system RAM needed and RAM needed at full context before you download. Not measured on the local desktop.

/gpus/rx-7900-xtx

16 GB

16 GB cards — denser /models files, not house 35B in VRAM

House 35B Q6 / Q5 / Q4 do not fit 16 GB on the calculator (RX 7800 XT, RX 9070 XT, RX 9060 XT, RX 7600 XT, RX 6800 XT). Point the assistant at a file already on /models that does: Qwen3.6-27B, Qwen3.8-27B, Gemma 3 27B, or gpt-oss-20B. Each catalog page lists Q6 / Q5 / Q4 plus a cited Q3 estimate. 35B still works with RAM offload — both RAM lines stay labeled estimate. Not measured on the local desktop.

/models

12 GB / 8 GB

Smaller VRAM — gpt-oss-20B or offload

RX 7700 XT (12 GB), RX 9070 GRE (12 GB), RX 6700 XT (12 GB), RX 7600 (8 GB): house 35B Q4–Q6 need offload. Prefer gpt-oss-20B or another /models file the calculator says fits. Q6 / Q5 / Q4 plus a cited Q3 estimate. Nothing below Q3. Not measured on the local desktop.

/models/gpt-oss-20b

35B quant picker

Speeds are measured on llama.cpp directly, not inside Aider, Cline, or Continue.

35B GGUF quants for a local coding assistant, with llama.cpp measurements labeled as not from Aider
Quant Role llama.cpp on the local desktop (not the harness)
Q6_K Higher-quality 35B sibling Measured on llama.cpp Vulkan on the local desktop, not inside Aider/Cline/Continue: Q6_K 1-GPU 4K decode 103.23 tok/s (23:55 card). 32K+ is partly on DDR5. Size VRAM on the calculator.
UD-Q5_K_XL House default on one R9700 Measured on llama.cpp Vulkan on the local desktop: 102.39 tok/s decode at 4K, 90.52 at 32K, 66.43 at 128K, 44.4 at 256K. Peak VRAM 25.97 GB / 29.34 GB; peak system RAM 37.32 GB / 42.9 GB. File Qwen3.6-35B-A3B-UD-Q5_K_XL.gguf. Not an Aider tok/s.
Q4_K_M Smaller measured 35B sibling Measured on llama.cpp Vulkan on the local desktop: Q4_K_M 32K decode 117.69 tok/s; prefill 1902.1 tok/s. One R9700, f16 KV. Still check both RAM lines.
UD-Q3_K_XL Estimate Cited Q3 option — labeled estimate Hugging Face listing for Qwen3.6-35B-A3B-UD-Q3_K_XL.gguf (16.8 GB). No 35B overnight tok/s. We do not invent a coding-assistant Q3 speed. Q1/Q2 stay off.

RAM lines (llama.cpp-measured)

Wherever a file spills off the GPU, the two labels stay Minimum system RAM needed and RAM needed at full context. House 35B peaks below are Ubuntu llama.cpp, not Aider.

Daily driver · 35B llama.cpp · 262K

Minimum system RAM needed

42.9 GB

Measured · 42.9 GiB raw · 256K context

local-desktop-20261012-2314-35b-udq5kxl-1gpu-256k-llamacpp-f16

RAM needed at full context

42.9 GB

Measured · 42.9 GiB raw · 256K full context

local-desktop-20261012-2314-35b-udq5kxl-1gpu-256k-llamacpp-f16

Measured peak system RAM on the local desktop: 42.9 GB (Linux GiB labeled GB). Measured, pending re-verify after RAM fix.

Breakdown
Offloaded weights ·
0 GiB
Separable embed in RAM ·
0 GiB
KV in RAM at selected ·
0 GiB
KV in RAM at full context ·
0 GiB
Runtime / backend ·
0.85 GiB
OS / desktop baseline ·
8.00 GiB
Headroom ·
16.0 GiB

Open in Stack Lab

Stack Lab remains Ubuntu llama.cpp-first. There is no Aider package and no public download.

Open in Stack Lab

If the app is not installed, packages are not published yet. There is no public download URL. Read the Stack Lab install notes . If Stack Lab is already running on this machine, open the local app .

Sources

How we test — Measured cells cite official amdai-bench/run@1 cards. Estimates stay labeled. Q3 is estimate-only. Q1/Q2 stay off.

Next steps

Real pages on this site. We do not invent a next click.

Last updated

esc

Type to filter. Enter opens the first match. Full-text search lives on /search.