<?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>MoE on Richelieu's Blog</title><link>https://beaiera.top/tags/moe/</link><description>Recent content in MoE on Richelieu's Blog</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Tue, 02 Jun 2026 00:00:00 +0800</lastBuildDate><atom:link href="https://beaiera.top/tags/moe/index.xml" rel="self" type="application/rss+xml"/><item><title>DeepSeek V4 MegaMoE Kernel 深度解析</title><link>https://beaiera.top/posts/2026-06-02-deepseek-v4-megamoe/</link><pubDate>Tue, 02 Jun 2026 00:00:00 +0800</pubDate><guid>https://beaiera.top/posts/2026-06-02-deepseek-v4-megamoe/</guid><description>&lt;h2 id="前言"&gt;前言&lt;/h2&gt;
&lt;h3 id="经典-moe-的计算过程"&gt;经典 MoE 的计算过程&lt;/h3&gt;
&lt;p&gt;在深入 MegaMoE 之前，先梳理一下经典 MoE（Mixture of Experts）层的完整计算流程。以一个具体配置为例：&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;T = 8 # 当前 batch 中的 token 数
H = 7168 # hidden size
I = 2048 # intermediate size（每个 expert 的 FFN 中间维度）
E = 256 # 总 expert 数量
K = 6 # 每个 token 激活的 expert 数（top-K）
&lt;/code&gt;&lt;/pre&gt;&lt;h4 id="第一步路由routing"&gt;第一步：路由（Routing）&lt;/h4&gt;
&lt;p&gt;输入 &lt;code&gt;hidden_states&lt;/code&gt; 形状为 &lt;code&gt;[T, H]&lt;/code&gt;（即 &lt;code&gt;[8, 7168]&lt;/code&gt;）。&lt;/p&gt;
&lt;p&gt;通过 Gate 线性层：&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;gate = hidden_states @ W_gate^T # W_gate: [E, H]
→ gate: [T, E] = [8, 256] # 每个 token 对每个 expert 的得分
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;对每个 token 施加 scoring 函数（如 &lt;code&gt;softmax&lt;/code&gt; 或 &lt;code&gt;sqrt(softplus)&lt;/code&gt;），然后取 top-K：&lt;/p&gt;</description></item><item><title>DeepSeek V4 MoE 量化技术详解</title><link>https://beaiera.top/posts/2026-06-02-deepseek-v4-moe-quantization/</link><pubDate>Tue, 02 Jun 2026 00:00:00 +0800</pubDate><guid>https://beaiera.top/posts/2026-06-02-deepseek-v4-moe-quantization/</guid><description>&lt;h2 id="前言"&gt;前言&lt;/h2&gt;
&lt;p&gt;本文整理自一次围绕 vLLM 代码库中 DeepSeek V4 MoE 模块的技术讨论，内容涉及 MXFP4 与 NVFP4 的量化方案对比、Block Quantized GEMM 的设计原理、FP4 packed 存储格式、以及 DeepGEMM 库中 FP8×FP4 在 Blackwell 硬件上的具体实现。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="一deepseek-v4-moe-核心优化概览"&gt;一、DeepSeek V4 MoE 核心优化概览&lt;/h2&gt;
&lt;p&gt;DeepSeek V4 的 MoE 模块在 vLLM 中的实现包含了大量优化：&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;优化&lt;/th&gt;
&lt;th&gt;说明&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;DeepGEMM MegaMoE&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;融合 EP dispatch + L1 GEMM + SwiGLU + L2 GEMM + EP combine 为单 mega-kernel，NVLink 通信与计算重叠&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;FP4 (MXFP4/NVFP4) 权重量化&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;4-bit 浮点权重 + UE8M0 block scale&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Expert Parallelism 多后端&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;DeepEP、FlashInfer NVLink、MORI、NIXL 等多种 all-to-all 策略&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Fused TopK Bias Routing&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;sqrt(softplus) 得分函数、e_score_correction_bias、hash MoE&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;EPLB&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;每层跟踪 expert 负载，动态重新分配&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Fused MLA Kernel&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Q-norm + RoPE + KV quant + cache insert 融合为单 CUDA 核&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;MTP (Multi-Token Prediction)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;共享 MoE 架构的 speculative decoding&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;hr&gt;
&lt;h2 id="二mxfp4-与-nvfp4-的区别"&gt;二、MXFP4 与 NVFP4 的区别&lt;/h2&gt;
&lt;p&gt;DeepSeek V4 Flash 使用 FP4 权重，有两个可选方案：&lt;strong&gt;MXFP4&lt;/strong&gt; (OCP 开放标准) 和 &lt;strong&gt;NVFP4&lt;/strong&gt; (NVIDIA 私有格式)。切换由 HuggingFace config 中的 &lt;code&gt;moe_quant_algo&lt;/code&gt; 字段控制。&lt;/p&gt;</description></item><item><title>DeepSeek-v2 Routed Scaling Factor 应用时机详解</title><link>https://beaiera.top/posts/deepseek-routed-scaling/</link><pubDate>Mon, 01 Jun 2026 11:40:00 +0800</pubDate><guid>https://beaiera.top/posts/deepseek-routed-scaling/</guid><description>&lt;h2 id="背景"&gt;背景&lt;/h2&gt;
&lt;p&gt;DeepSeek-V2/V3 系列模型采用了 MoE（Mixture of Experts）架构，其中 &lt;code&gt;routed_scaling_factor&lt;/code&gt; 是一个重要的超参数，用于缩放 routed expert 的输出。该系数来自模型 config，在 &lt;code&gt;DeepseekV2MoE.__init__&lt;/code&gt; 中初始化：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-python" data-lang="python"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="bp"&gt;self&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;routed_scaling_factor&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;config&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;routed_scaling_factor&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;默认值通常为 &lt;code&gt;1.0&lt;/code&gt;，但 DeepSeek-V2 系列（如 deepseek-v2、deepseek-coder-v2）设置的典型值是 &lt;code&gt;2.5&lt;/code&gt; 或 &lt;code&gt;1.0&lt;/code&gt;，取决于具体子模型。&lt;/p&gt;
&lt;h2 id="控制开关"&gt;控制开关&lt;/h2&gt;
&lt;p&gt;在 vLLM 的 &lt;code&gt;deepseek_v2.py&lt;/code&gt; 中，关键代码如下：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-python" data-lang="python"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;apply_routed_scale_to_output&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="ow"&gt;not&lt;/span&gt; &lt;span class="bp"&gt;self&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;is_rocm_aiter_moe_enabled&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;routed_scaling_factor&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="bp"&gt;self&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;routed_scaling_factor&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;apply_routed_scale_to_output&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="ow"&gt;not&lt;/span&gt; &lt;span class="bp"&gt;self&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;is_rocm_aiter_moe_enabled&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;这个 bool 值决定了 &lt;code&gt;routed_scaling_factor&lt;/code&gt; 由谁处理——是 kernel 内部还是 runner 外部。&lt;/p&gt;</description></item><item><title>DeepSeek V3 MoE 模块计算与通信逻辑详解</title><link>https://beaiera.top/posts/deepseek-v3-moe/</link><pubDate>Mon, 01 Jun 2026 10:10:00 +0800</pubDate><guid>https://beaiera.top/posts/deepseek-v3-moe/</guid><description>&lt;h2 id="概述"&gt;概述&lt;/h2&gt;
&lt;p&gt;DeepSeek V3 的 MoE（Mixture of Experts）模块是其核心组成部分，采用 &lt;strong&gt;Shared + Routed Expert&lt;/strong&gt; 架构。本文基于 vLLM 代码库，深入分析其计算流程、通信模式、量化方案以及性能优化策略。&lt;/p&gt;</description></item></channel></rss>