<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: arczhi</title>
    <description>The latest articles on DEV Community by arczhi (@arczhi).</description>
    <link>https://dev.to/arczhi</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4107121%2Fa6868f93-95dd-4210-8a29-a139db149365.jpg</url>
      <title>DEV Community: arczhi</title>
      <link>https://dev.to/arczhi</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/arczhi"/>
    <language>en</language>
    <item>
      <title>Can a 27B Coding Model Be Useful on a 16GB GPU?</title>
      <dc:creator>arczhi</dc:creator>
      <pubDate>Thu, 03 Sep 2026 02:49:53 +0000</pubDate>
      <link>https://dev.to/arczhi/can-a-27b-coding-model-be-useful-on-a-16gb-gpu-jc8</link>
      <guid>https://dev.to/arczhi/can-a-27b-coding-model-be-useful-on-a-16gb-gpu-jc8</guid>
      <description>&lt;p&gt;Repository with scripts and benchmark notes:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/arczhi/5060ti-qwen3.8-27b" rel="noopener noreferrer"&gt;https://github.com/arczhi/5060ti-qwen3.8-27b&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I wanted to answer a practical question:&lt;/p&gt;

&lt;p&gt;Can a local coding agent actually finish work on a 16GB GPU, or will it spend most of its time reading code and never produce a reliable patch?&lt;/p&gt;

&lt;p&gt;The test machine was:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AMD Ryzen 9 9950X, 16 cores / 32 threads&lt;/li&gt;
&lt;li&gt;NVIDIA RTX 5060 Ti with 16,311 MiB VRAM&lt;/li&gt;
&lt;li&gt;32GB DDR5-6000 system RAM&lt;/li&gt;
&lt;li&gt;NVIDIA driver 595.71.05&lt;/li&gt;
&lt;li&gt;CUDA 13.2&lt;/li&gt;
&lt;li&gt;Linux x86_64&lt;/li&gt;
&lt;li&gt;Docker and llama.cpp CUDA server&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The model was Qwen3.8-27B GGUF using UD-IQ4_XS quantization.&lt;/p&gt;

&lt;p&gt;The tested configuration used an 80K context window, MTP-1, Q4_0 KV cache, Flash Attention, one parallel slot, disabled reasoning, and four FFN layers offloaded to the CPU.&lt;/p&gt;

&lt;p&gt;The agent test was more important than the short benchmark. I gave the agent a design document and asked it to implement a feature in a medium-sized Go repository.&lt;/p&gt;

&lt;p&gt;It took about 14m20s to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Read the design document&lt;/li&gt;
&lt;li&gt;Modify seven files&lt;/li&gt;
&lt;li&gt;Add five tests&lt;/li&gt;
&lt;li&gt;Complete scoped build, vet, formatting, and diff checks&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Two failing checks were confirmed to be pre-existing baseline failures.&lt;/p&gt;

&lt;p&gt;Across 14 server requests, the measured results were:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Prefill: 22.18-326.36 tok/s&lt;/li&gt;
&lt;li&gt;Decode: 11.06-12.95 tok/s&lt;/li&gt;
&lt;li&gt;Generation time: 7.89-184.60 seconds per request&lt;/li&gt;
&lt;li&gt;MTP acceptance: 84.9%-100%&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The short smoke test was much faster, reaching 86.54 tok/s prefill and 17.77 tok/s decode. However, the longest request still took 184.6 seconds.&lt;/p&gt;

&lt;p&gt;I also compared CPU FFN offload:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;No CPU FFN offload: 14m20s, 11.06-12.95 tok/s decode&lt;/li&gt;
&lt;li&gt;Four CPU FFN layers: 14m04s, 19.40 tok/s weighted decode&lt;/li&gt;
&lt;li&gt;Eight CPU FFN layers: stopped after 25m30s, 18.36 tok/s weighted decode&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In this real coding-agent run, FFN4 was the best balance. It reduced GPU pressure without adding as much CPU/GPU transfer overhead as the larger offload configuration.&lt;/p&gt;

&lt;p&gt;The main lesson is that tokens per second are only part of the story. For coding agents, I care more about:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Whether the task was completed&lt;/li&gt;
&lt;li&gt;Tests passed&lt;/li&gt;
&lt;li&gt;Total wall-clock time&lt;/li&gt;
&lt;li&gt;Number of agent turns&lt;/li&gt;
&lt;li&gt;Context compactions&lt;/li&gt;
&lt;li&gt;Final repository state&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This benchmark comes from one machine and one runtime configuration. The goal is reproducibility and useful comparison, not a universal performance claim.&lt;/p&gt;

</description>
      <category>agents</category>
      <category>ai</category>
      <category>llm</category>
      <category>softwaredevelopment</category>
    </item>
  </channel>
</rss>
