Sharded Context Parallelism:极致挖掘 CP 潜力
1. 背景与挑战1.1 Context Parallelism 的背景上下文并行(Context Parallelism, CP)已成为扩展长上下文(Long Context)及稀疏注意力(Sparse Attention)模型推理的关键技术。相较于传统的张量并行(TP),CP 具备显著优势(参考 MLSys 2025): 低延迟:通过序列维度的并行计算显著降低首字延迟(TTFT)。 低通信:节点间通信量远低于 TP,适合跨节点扩展。 分布式 KV Cache:KV 缓存容量随设备数线性扩展,有效支撑超长序列。 1.2 现有 CP+TP 架构的瓶颈然而,当前的 CP 主流实现(如 RFC #22693)通常采用 CP+TP 混合架构。在处理 DeepSeek-V3/V3.2 等稀疏模型时,这种架构暴露出了三大核心局限: (1) 显存瓶颈:权重冗余存储在 CP 组内,尽管序列被切分,但每个 Rank 仍需持有完整的权重副本(或 TP 分片)。 后果:总显存占用随 CP Rank 数线性增长,严重限制了 CP 在细粒度(如单卡单 Rank)场景下的扩展能力。 (2)...
Deepseek细粒度并行优化
在大规模语言模型推理中,Decode 阶段的性能优化面临独特挑战:单 token 生成的 memory-bound 特性使得传统纯数据并行策略在显存占用和访存效率上存在瓶颈。 本文针对 DeepSeek-R1 模型,提出了细粒度张量并行优化方案。通过对 O_proj、LM Head、Embedding 和 Dense FFN 四个关键模块实施跨 DP 组的定制化切分策略,在昇腾平台上实现了 9.72 GB 显存节省 和约 2 ms TPOT 优化,显著提升了 Decode 节点的并发能力。所有优化已开源并合入 vllm-ascend 社区。 1. 背景1.1 PD 分离架构概述随着 Prefill-Decoding(PD)分离架构的兴起,vLLM 及其昇腾后端 vllm-ascend 正在积极推进对该架构的深度适配。PD 分离架构通过解耦 Prefill 阶段与 Decode 阶段,并针对各自的计算与通信特性进行独立优化,可以充分挖掘端到端推理性能潜力。 1.2 分布式并行策略差异在分布式推理系统中,并行策略是实现高效 PD 分离的核心要素。以 DeepSeek 等大规模 M...
Clash-CLI 部署与跨机器代理使用全指南
本文详细讲解 clash-cli 工具的安装、云服务器代理配置,以及本地机器如何一键复用云服务器的代理服务,全程附实操命令和避坑要点。 一、Clash-CLI 安装(云服务器端)clash-cli 是 Clash 代理的命令行管理工具,支持快速安装、更新订阅、启停代理,推荐在 Linux 云服务器(如阿里云/腾讯云)部署。 方式一:Python 包安装(推荐,易维护)1234567891011# 1. 安装 clash-cli 核心工具(确保服务器已安装 Python/pip)pip install clash-cli# 2. 初始化(解决 sudo 权限问题,非必需但建议执行)clash-cli init# 3. 安装 Clash 系统服务(需 sudo 权限,生成 systemd 服务)sudo clash-cli install# 4. 启动代理(验证安装)clash-cli on 方式二:Shell 脚本安装(传统方式,兼容低版本系统)123git clone --branch main --depth 1 https://github.com/whillhi...
Kubernetes 调度器原理与自定义插件开发实践
一、背景介绍kube-scheduler 是 Kubernetes 集群的核心组件之一,主要负责集群资源的调度功能。它通过特定的调度算法和策略,将 Pod 分配到最优的工作节点(Node)上,从而实现集群资源的合理利用和充分分配,这也是我们选择使用 Kubernetes 的重要理由之一。 默认情况下,kube-scheduler 提供的原生调度器能够满足绝大多数业务场景,确保 Pod 被分配到资源充足的节点运行。但在实际的生产环境中,业务逻辑往往更加复杂。例如,我们可能需要将某类 Pod 严格限制在特定的节点上运行,或者某些节点只能用于运行特定类型的应用。为了满足这些精细化的需求,我们需要深入理解 Kubernetes 的调度机制,并掌握编写自定义调度插件(Scheduling Plugins)的能力。 二、Kubernetes Pod 部署流程 Kubernetes 中 Pod 的总体部署流程如图所示,大致包含以下步骤: 提交请求:用户编写好 YAML 配置文件,向 kube-apiserver 提交创建请求。 准入控制:kube-apiserver 接收到请求后,首先通过 ...