<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Bus on Tarragon</title><link>https://tarrragon.github.io/blog/tags/bus/</link><description>Recent content in Bus on Tarragon</description><generator>Hugo -- gohugo.io</generator><language>zh-TW</language><copyright>Tarragon (CC BY 4.0)</copyright><lastBuildDate>Tue, 12 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://tarrragon.github.io/blog/tags/bus/index.xml" rel="self" type="application/rss+xml"/><item><title>PCIe</title><link>https://tarrragon.github.io/blog/llm/knowledge-cards/pcie/</link><pubDate>Tue, 12 May 2026 00:00:00 +0000</pubDate><guid>https://tarrragon.github.io/blog/llm/knowledge-cards/pcie/</guid><description>&lt;p>PCIe（PCI Express）的核心概念是「PC 上 GPU 跟主機板（CPU + 系統 RAM）之間的高速序列匯流排」。獨立 GPU 場景下、模型權重從 SSD / 系統 RAM 走 PCIe 進 VRAM、之後推論主要在 GPU 內部完成；但 &lt;a href="https://tarrragon.github.io/blog/llm/knowledge-cards/moe-cpu-offload/" data-link-title="MoE CPU 卸載" data-link-desc="把 Mixture-of-Experts 模型不活躍的專家層權重放在系統 RAM、用到再走 PCIe 拉回 GPU、讓有限 VRAM 跑得了更大模型">MoE CPU 卸載&lt;/a> 啟用時、每 token 都需要從系統 RAM 走 PCIe 拉部分權重、PCIe 頻寬開始影響推論吞吐。&lt;/p>
&lt;h2 id="概念位置">概念位置&lt;/h2>
&lt;p>PCIe 在本地 LLM 推論的兩個階段角色不同：&lt;/p>
&lt;ol>
&lt;li>&lt;strong>模型載入階段&lt;/strong>：模型權重從 SSD → 系統 RAM → 走 PCIe → &lt;a href="https://tarrragon.github.io/blog/llm/knowledge-cards/vram/" data-link-title="VRAM" data-link-desc="顯卡上的記憶體、跟系統 RAM 是兩塊獨立預算、決定能載入多大模型權重跟 KV cache">VRAM&lt;/a>。PCIe 是常見瓶頸、影響「啟動時間」、不影響推論。&lt;/li>
&lt;li>&lt;strong>推論階段&lt;/strong>：
&lt;ul>
&lt;li>全載 VRAM 場景：權重已在 VRAM、推論時 PCIe 流量很少。&lt;/li>
&lt;li>MoE 卸載場景：每 token 從系統 RAM 拉專家權重經 PCIe、PCIe 頻寬成為次要瓶頸。&lt;/li>
&lt;/ul>
&lt;/li>
&lt;/ol>
&lt;p>PCIe 版本跟頻寬（廠商標稱、單向）：&lt;/p>
&lt;table>
 &lt;thead>
 &lt;tr>
 &lt;th>版本&lt;/th>
 &lt;th>x16 單向標稱頻寬&lt;/th>
 &lt;/tr>
 &lt;/thead>
 &lt;tbody>
 &lt;tr>
 &lt;td>PCIe 4.0 x16&lt;/td>
 &lt;td>約 32 GB/s&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>PCIe 5.0 x16&lt;/td>
 &lt;td>約 64 GB/s&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>PCIe 6.0 x16&lt;/td>
 &lt;td>約 128 GB/s&lt;/td>
 &lt;/tr>
 &lt;/tbody>
&lt;/table>
&lt;p>實際傳輸吞吐受驅動、檔案系統、量化格式影響、通常低於規格上限。&lt;/p>
&lt;blockquote>
&lt;p>&lt;strong>事實查核註&lt;/strong>：PCIe 各版本的標稱頻寬數字以 &lt;a href="https://pcisig.com/">PCI-SIG&lt;/a> 官方規格為主、實際可達吞吐依硬體配置變化、引用前以對應版本的官方規格文件為準。&lt;/p>&lt;/blockquote>
&lt;p>消費級主機板的 PCIe lane 分配常見「一條 x16 + 一條 x4」、加第二張 GPU 時、第二張的有效頻寬可能只有 x4、影響多卡縮放效益。詳見 &lt;a href="https://tarrragon.github.io/blog/llm/05-discrete-gpu/llama-cpp-on-pc/" data-link-title="5.3 llama.cpp 在 PC 上" data-link-desc="CUDA / ROCm build 取得、核心旗標地圖、llama-bench 校準、多卡 tensor split 的入門設定">5.3 llama.cpp 在 PC 上&lt;/a> 的多卡 tensor split 段落。&lt;/p>
&lt;h2 id="設計責任">設計責任&lt;/h2>
&lt;p>理解 PCIe 後可以解釋三個現象：為什麼模型載入要等幾秒到十幾秒（PCIe 是橋）、為什麼單卡 + MoE 卸載通常不卡 PCIe（每 token 拉的權重量小於 PCIe 頻寬）、為什麼雙卡縮放比沒有直接翻倍（PCIe lane 跟主機板配置）。&lt;/p>
&lt;p>選 PC 配置時、PCIe 版本影響模型載入體感、但對單人推論的生字速度通常影響小。多卡升級前要看主機板的 PCIe lane 分配。&lt;/p></description><content:encoded><![CDATA[<p>PCIe（PCI Express）的核心概念是「PC 上 GPU 跟主機板（CPU + 系統 RAM）之間的高速序列匯流排」。獨立 GPU 場景下、模型權重從 SSD / 系統 RAM 走 PCIe 進 VRAM、之後推論主要在 GPU 內部完成；但 <a href="/blog/llm/knowledge-cards/moe-cpu-offload/" data-link-title="MoE CPU 卸載" data-link-desc="把 Mixture-of-Experts 模型不活躍的專家層權重放在系統 RAM、用到再走 PCIe 拉回 GPU、讓有限 VRAM 跑得了更大模型">MoE CPU 卸載</a> 啟用時、每 token 都需要從系統 RAM 走 PCIe 拉部分權重、PCIe 頻寬開始影響推論吞吐。</p>
<h2 id="概念位置">概念位置</h2>
<p>PCIe 在本地 LLM 推論的兩個階段角色不同：</p>
<ol>
<li><strong>模型載入階段</strong>：模型權重從 SSD → 系統 RAM → 走 PCIe → <a href="/blog/llm/knowledge-cards/vram/" data-link-title="VRAM" data-link-desc="顯卡上的記憶體、跟系統 RAM 是兩塊獨立預算、決定能載入多大模型權重跟 KV cache">VRAM</a>。PCIe 是常見瓶頸、影響「啟動時間」、不影響推論。</li>
<li><strong>推論階段</strong>：
<ul>
<li>全載 VRAM 場景：權重已在 VRAM、推論時 PCIe 流量很少。</li>
<li>MoE 卸載場景：每 token 從系統 RAM 拉專家權重經 PCIe、PCIe 頻寬成為次要瓶頸。</li>
</ul>
</li>
</ol>
<p>PCIe 版本跟頻寬（廠商標稱、單向）：</p>
<table>
  <thead>
      <tr>
          <th>版本</th>
          <th>x16 單向標稱頻寬</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>PCIe 4.0 x16</td>
          <td>約 32 GB/s</td>
      </tr>
      <tr>
          <td>PCIe 5.0 x16</td>
          <td>約 64 GB/s</td>
      </tr>
      <tr>
          <td>PCIe 6.0 x16</td>
          <td>約 128 GB/s</td>
      </tr>
  </tbody>
</table>
<p>實際傳輸吞吐受驅動、檔案系統、量化格式影響、通常低於規格上限。</p>
<blockquote>
<p><strong>事實查核註</strong>：PCIe 各版本的標稱頻寬數字以 <a href="https://pcisig.com/">PCI-SIG</a> 官方規格為主、實際可達吞吐依硬體配置變化、引用前以對應版本的官方規格文件為準。</p></blockquote>
<p>消費級主機板的 PCIe lane 分配常見「一條 x16 + 一條 x4」、加第二張 GPU 時、第二張的有效頻寬可能只有 x4、影響多卡縮放效益。詳見 <a href="/blog/llm/05-discrete-gpu/llama-cpp-on-pc/" data-link-title="5.3 llama.cpp 在 PC 上" data-link-desc="CUDA / ROCm build 取得、核心旗標地圖、llama-bench 校準、多卡 tensor split 的入門設定">5.3 llama.cpp 在 PC 上</a> 的多卡 tensor split 段落。</p>
<h2 id="設計責任">設計責任</h2>
<p>理解 PCIe 後可以解釋三個現象：為什麼模型載入要等幾秒到十幾秒（PCIe 是橋）、為什麼單卡 + MoE 卸載通常不卡 PCIe（每 token 拉的權重量小於 PCIe 頻寬）、為什麼雙卡縮放比沒有直接翻倍（PCIe lane 跟主機板配置）。</p>
<p>選 PC 配置時、PCIe 版本影響模型載入體感、但對單人推論的生字速度通常影響小。多卡升級前要看主機板的 PCIe lane 分配。</p>
]]></content:encoded></item></channel></rss>