<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[求助：双 7900XTX 一装载模型就两卡 100% / ~100W 空转（与 TheRock#9484 同型）——请教现在能用的解法]]></title><description><![CDATA[<h1>双 7900XTX 一装载模型就两卡 100% / ~100W 空转（与 TheRock#9484 同型）——请教现在能用的解法</h1>
<blockquote>
<p dir="auto"><img src="https://lcz.me/assets/plugins/nodebb-plugin-emoji/emoji/android/26a0.png?v=5be5614064c" class="not-responsive emoji emoji-android emoji--warning" style="height:1.4em;width:auto;vertical-align:middle" title="⚠" alt="⚠" />️ 本文全部数字都是我自己机器上的实测。</p>
</blockquote>
<h2>先说结论</h2>
<p dir="auto">不是配置错，也不是显存满。是<strong>引擎在 GPU 上挂了一个"未满足的等待"</strong>，命令处理器就把卡钉在满速——这和 <a href="https://github.com/ROCm/TheRock/issues/9484" rel="nofollow ugc">ROCm/TheRock#9484</a>（2026-10-26）描述的是同一件事；而 <a href="https://github.com/ROCm/TheRock/issues/9141" rel="nofollow ugc">#9141</a> 里 AMD 的回复是<strong>修复在内核驱动，进 mainline 7.4</strong>。我们内核是 7.0.0-38，拿不到。</p>
<p dir="auto"><strong>想请教的是：在修复下来之前，有没有能用的办法。</strong></p>
<hr />
<h2>一、机器与软件</h2>
<pre><code class="language-text">主板/CPU: ASRock X570 ACE · Ryzen 5 3500X（6C/6T，无 SMT）
内存: 94 GB
GPU: RX 7900 XTX × 2（gfx1100）· CPU 的 16 lane 拆 8+8，实测各 14.2 GB/s
BIOS/内核: IOMMU 开 + GRUB iommu=pt（这台 X570 的 P2P 因此可用，hipDeviceCanAccessPeer = YES）
系统: Ubuntu · kernel 7.0.0-38-generic
ROCm: 7.2.3 · hipBLASLt 1.2.2（调优表 100200）
引擎: Strata-rdna3（0.1.43 + PR#1）· IQ3_S · 层切分 24/24 · --expert-cache auto · P2P 传输
</code></pre>
<hr />
<h2>二、现象</h2>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>状态</th>
<th>GPU0</th>
<th>GPU1</th>
</tr>
</thead>
<tbody>
<tr>
<td>引擎装载完、<strong>没有任何请求</strong></td>
<td>100% / 92–107W</td>
<td>100% / 108–113W</td>
</tr>
<tr>
<td><code>systemctl stop</code> 之后</td>
<td>0% / 4W</td>
<td>0% / 7W</td>
</tr>
<tr>
<td>加 <code>--batch 2</code>，刚启动时</td>
<td><strong>0% / 6W</strong></td>
<td>100% / 113W</td>
</tr>
<tr>
<td>加 <code>--batch 2</code>，<strong>发过一条请求之后</strong></td>
<td><strong>100% / 104W</strong></td>
<td>100% / 113W</td>
</tr>
</tbody>
</table>
<p dir="auto">最后一行才是稳定状态：<strong>两卡各 ~100W，合计 ~210W ≈ 5 度电/天。</strong></p>
<p dir="auto">关键的一条：<strong>两张卡 VRAM 都是 99%，但其中一张能到 6W</strong>——所以不是"显存装满"造成的。</p>
<hr />
<h2>三、诊断</h2>
<pre><code class="language-text">rocm-smi --showclocks:   sclk 钉在 level 1 = 3044 / 3078 MHz
                         mclk 在低位 = 96 / 456 MHz
sysfs:                   gpu_busy_percent = 100，mem_busy_percent = 0
top -H（引擎 34 个线程）:  全部 sleeping，CPU 0%
引擎日志:                自启动以来没有任何请求
</code></pre>
<p dir="auto"><strong>着色器满速、显存零活动、主机零活动</strong>——不是有个核在算，是<strong>挂起的等待把 CP 钉住了</strong>。这和 #9484 的结论一致：一个未满足的 AQL <code>BARRIER_AND</code> 就能造成 100% GFX / ~95W。</p>
<hr />
<h2>四、我试过的（都无效）</h2>
<ul>
<li><code>STRATA_DP_PREFILL=0</code>、<code>STRATA_POOL_SPIN_US=0</code>、<code>STRATA_ADAPT_NOWAIT=1</code> —— 三个都不改变（仍是 100% / ~100W）</li>
<li>上游已经排除过、我没再重复试的：换 ROCm（7.2.4 / 7.14 / 10.1）、队列优先级、<code>sched_policy=2</code>、<code>GPU_MAX_HW_QUEUES=1</code>、<code>HSA_ENABLE_SDMA=0</code>，以及 8 月那批 gfx11 MES timer 补丁（#9484 的作者特意 backport 到测试内核，也没修好他的情况）</li>
</ul>
<hr />
<h2>五、想请教的三件事</h2>
<ol>
<li><strong>Strata 这边</strong>：有没有开关能让引擎在空闲时<strong>把自己的 GPU 等待排空</strong>——用下一次请求的几毫秒，换回正常的空闲功耗？我在引擎里看到 <code>doorbell_wait</code> 这类东西，但没找到对应的开关。</li>
<li><strong>内核这边</strong>：有没有人在 Ubuntu 上装到过带这批 amdgpu / MES 空闲修复的内核（7.4 的 backport、HWE、或 PPA）？装上之后用什么指标确认它生效——是不是应该变成"两卡都 ~9–11W / use 0%"？</li>
<li><strong>有没有安全的压法</strong>：<code>power_dpm_force_performance_level</code> 已经是 auto。手动 <code>--setperflevel low</code> 或给 sclk 设上限，会不会伤推理（尤其 prefill）？有没有人实测过代价？</li>
</ol>
<hr />
<h2>六、怎么在你机器上复现（一分钟）</h2>
<pre><code class="language-bash"># 装载模型、不发任何请求，然后：
rocm-smi --showpower --showuse
cat /sys/class/drm/card1/device/gpu_busy_percent     # 100
cat /sys/class/drm/card1/device/mem_busy_percent     # 0
rocm-smi --showclocks | grep sclk                   # 满速

# 停掉那个进程 → 两卡应回到 4–7W。若如此，就是同一个问题。
</code></pre>
<hr />
<h2>七、参考</h2>
<ul>
<li><a href="https://github.com/ROCm/TheRock/issues/9484" rel="nofollow ugc">ROCm/TheRock#9484 — [gfx1100][MES] Pending AQL BARRIER_AND forces 100% GFX / ~95W idle power on RX 7900 XTX</a></li>
<li><a href="https://github.com/ROCm/TheRock/issues/9141" rel="nofollow ugc">ROCm/TheRock#9141 — 同型问题；AMD 2026-09-12：修复在内核驱动，进 mainline 7.4</a></li>
</ul>
<p dir="auto">任何一条有答案都先谢过。</p>
]]></description><link>https://lcz.me/topic/2680</link><generator>RSS for Node</generator><lastBuildDate>Mon, 09 Nov 2026 13:57:11 GMT</lastBuildDate><atom:link href="https://lcz.me/topic/2680.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 29 Oct 2026 04:57:09 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to 求助：双 7900XTX 一装载模型就两卡 100% / ~100W 空转（与 TheRock#9484 同型）——请教现在能用的解法 on Thu, 29 Oct 2026 16:04:59 GMT]]></title><description><![CDATA[<blockquote>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/eric-seto" aria-label="Profile: Eric-Seto">@<bdi>Eric-Seto</bdi></a> <a href="/post/29158">说</a>:</p>
<p dir="auto">我也是雙7900xtx, 亦曾經發生空轉, 兩個gpu長期100% load, 我將HIP queue limits (GPU_MAX_HW_QUEUES=6 ) 由8轉為6便沒有空轉</p>
</blockquote>
<p dir="auto">试过了，效果很好，谢谢兄弟</p>
]]></description><link>https://lcz.me/post/29243</link><guid isPermaLink="true">https://lcz.me/post/29243</guid><dc:creator><![CDATA[Enigma]]></dc:creator><pubDate>Thu, 29 Oct 2026 16:04:59 GMT</pubDate></item><item><title><![CDATA[Reply to 求助：双 7900XTX 一装载模型就两卡 100% / ~100W 空转（与 TheRock#9484 同型）——请教现在能用的解法 on Thu, 29 Oct 2026 11:51:17 GMT]]></title><description><![CDATA[<p dir="auto">我也是雙7900xtx, 亦曾經發生空轉, 兩個gpu長期100% load, 我將HIP queue limits (GPU_MAX_HW_QUEUES=6 ) 由8轉為6便沒有空轉</p>
]]></description><link>https://lcz.me/post/29158</link><guid isPermaLink="true">https://lcz.me/post/29158</guid><dc:creator><![CDATA[Eric Seto]]></dc:creator><pubDate>Thu, 29 Oct 2026 11:51:17 GMT</pubDate></item></channel></rss>