avatar
文章
599
标签
109
分类
29
首页
归档
分类
标签
关于
xhj的博客
首页
归档
分类
标签
关于

xhj的博客

性能测试
发表于2025-12-09|LLM
Qwen2.5-VL 性能测试环境设置1234567# vllmcd /workspace/vllmgit reset --hard 2918c1b49c88c29783c86f78d2c4221cb9622379# vllm-ascend: maincd /workspace/vllm-ascendpip install -r benchmarks/requirements-bench.txt Run: 1bash benchmarks/scripts/run-performance-benchmarks.sh Benchmark 结果Before (未移除任何 layer 之前): 12345678910111213141516171819202122232425============ Serving Benchmark Result ============Successful requests: 200 Failed requests: 0 Reque...
如何快速上手一个开源项目
发表于2025-12-08|LLM
如何快速上手一个开源项目项目洞察社区治理 运作方式(独裁、共建); 核心人物(commiter); 参与方; release 节奏(feature、bugfix 版本周期); 社区交流方式(PR/ISSUE、邮件列表、SLACK/IRC/微信); 当前/未来发展; …… 源码托管 托管平台(GitHub、gitee、私仓); 贡献方式; License; CLA/CCLA; CI/CD CI 系统(GitHub action、Jenkins、circle CI、trivia CI); 架构(x86/arm、CPU/GPU、……); CI job 内容(unit test、集成测试、端到端测试、……)。 学习方法 官方网站、文档、源码(重点)【非翻译版】; 主流媒体(官方 blog、知乎专栏、知乎订阅号、领域 KOL); 搜索引擎(Google); 其它(教学视频、自行发现等)。 注意: 刚开始尽量看英文原版的文档(信息最完整、准确),有了整体的认识之后,可以再针对某些部分去看一些中文的网站...
多模态大模型MRoPE作用解析
发表于2025-12-07|LLM
好的,这是一个非常专业且深入的问题。我们来详细解析一下多模态大模型中的 MRoPE(Modality-aware Rotary Position Embedding) 算子的作用。 首先,我们需要理解它的基础——RoPE。 1. 基础:RoPE(旋转位置编码)RoPE是像LLaMA、GPT-NeoX等众多主流大语言模型所采用的位置编码方式。 核心思想: 不是将位置信息作为一个独立的数字(如绝对位置)或向量(如正弦余弦函数)直接加到词向量上,而是通过旋转的方式来注入位置信息。 形象比喻: 想象一个二维平面,每个词对应一个二维向量。RoPE会根据这个词在序列中的位置,将这个向量旋转一个与位置成比例的角度。位置1旋转θ度,位置2旋转2θ度,以此类推。这样,两个词向量的内积(代表它们的关联程度)就只与它们的内容和相对位置差有关,而与它们的绝对位置无关。 优势: 很好的外推性: 模型在训练时见过的序列长度有限,但在推理时能处理更长的序列,因为旋转操作是连续且可扩展的。 显式编码相对位置: 模型能天然地理解“距离”的概念。 2. 多模态的挑战:为什么需要“M”?当我们将大模型从纯文本...
多卡推理中CUDA-Graph协同计算解析
发表于2025-12-06|LLM
这是一个非常好的问题,它触及了现代大模型推理优化的核心。我们来详细拆解一下 torch.compile() 生成的 CUDA Graph 是如何在分布式多卡环境下协同工作的。 首先,要明确一个关键点:torch.compile 和 CUDA Graph 是两种不同但可以协同工作的优化技术。 torch.compile: 它是一个编译器。它捕获你的 PyTorch 模型(一个动态图),将其编译成一个优化的、静态的计算图。这个优化后的图可以由不同的后端执行,其中最强大的后端就是 inductor。 CUDA Graph: 它是一种执行模式。它通过捕获在 GPU 上执行的一系列内核(kernel)来创建一个“图”,然后可以多次、高效地重放这个图,避免了 CPU 驱动开销、启动内核的开销等。 在 torch.compile 的 inductor 后端中,一个非常重要的优化就是自动生成并利用 CUDA Graph 来执行编译好的计算图。 现在,我们来看多卡(分布式)推理的场景。这里通常使用 Tensor Parallelism(张量并行) 或 Pipeline Parallelism(...
启动时未指定max_model_len导致通信卡死
发表于2025-12-05|LLM
启动时未指定 max_model_len 导致通信卡死排查记录12345vllm serve /root/.cache/modelscope/hub/models/Qwen/Qwen3-VL-30B-A3B-Instruct \--tensor-parallel-size 4 \--enable-expert-parallel \--enforce-eager \--max_model_len 131072 1234INFO 10-25 02:18:40 [parallel_state.py:1208] rank 0 in world size 4 is assigned as DP rank 0, PP rank 0, TP rank 0, EP rank 0INFO 10-25 02:18:40 [parallel_state.py:1208] rank 1 in world size 4 is assigned as DP rank 0, PP rank 0, TP rank 1, EP rank 1INFO 10-25 02:18:40 [parallel_state....
分布式系统控制面与数据面解析
发表于2025-12-04|LLM
好的,这是一个非常核心的分布式系统设计概念。我们可以用一个生动的比喻来开始,然后深入技术细节。 核心比喻:空中交通管制系统 控制面 就像是空中的交通管制塔和调度员。 他们不直接开飞机(处理乘客和货物)。 他们的工作是:规划航线、指挥飞机起飞和降落、监控所有飞机的状态和位置、处理紧急情况、分配跑道和空域。他们做出决策,确保整个系统安全、有序地运行。 数据面 就像是飞机本身和跑道。 它们负责实际的运输工作:搭载乘客、装载货物、在指定的航线上飞行。 它们不决定去哪、怎么飞,而是忠实地执行控制塔发出的指令,专注于高效、安全地完成“运输”这个核心任务。 详细解释1. 控制面控制面是系统的大脑和神经系统,负责管理、协调和决策。它不直接处理用户的业务请求,而是确保数据面能够正确、高效地处理这些请求。 主要职责: 系统配置与管理:管理网络配置、服务发现、负载均衡策略、安全策略(如防火墙规则)等。 状态监控与收集:收集整个系统中所有组件(数据面节点)的健康状态、性能指标(如CPU、内存、流量)、日志和拓扑信息。 路由决策:决定数据包的转发路径。例如,在微服务网络中,控制面决定一个...
分布式系统伸缩策略解析
发表于2025-12-03|LLM
好的,这是一个非常核心的分布式系统与云计算概念。我们来详细解析“水平伸缩”和“垂直伸缩”的含义、区别以及各自的应用场景。 1. 核心含义水平伸缩 含义:通过增加或减少实例的数量来应对负载变化。这通常意味着在负载高时,向资源池中添加更多的服务器/节点;在负载低时,移除多余的服务器/节点。 形象比喻:一个餐厅客人变多,老板不是让同一个服务员干得更快(垂直伸缩),而是雇佣更多的服务员来分担工作。 技术实现:通常依赖于负载均衡器,将进入的请求流量分发到后端多个无状态的服务实例上。在云环境中,这通常通过自动伸缩组来实现。 垂直伸缩 含义:通过升级或降级单个实例的资源配置(如CPU、内存、磁盘I/O)来应对负载变化。这通常意味着在负载高时,为服务器更换更强大的CPU或增加更多内存;在负载低时,降低配置以节省成本。 形象比喻:同一个服务员,通过让他参加培训、喝咖啡、使用更先进的工具,从而提升他个人的服务速度和能力。 技术实现:在物理机时代,这需要手动更换硬件。在云时代和虚拟化环境中,这通常可以通过改变虚拟机实例的规格(例如,AWS 从 t3.small 升级到...
分布式多卡推理通信域建立与动态通信域解析
发表于2025-12-02|LLM
好的,这是一个非常核心且专业的问题。我们来详细拆解一下分布式多卡推理中通信域的建立过程,并解释动态通信域的概念。 第一部分:分布式多卡推理中通信域的建立过程在分布式计算中,通信域 是一个核心抽象,它定义了一组可以相互通信的进程。在大模型推理中,由于单个GPU的显存无法容纳整个模型(如拥有数百亿甚至上万亿参数的模型),我们必须将模型“拆分”并分布到多个GPU上。 这个过程主要依赖于 NCCL 这个由NVIDIA打造的高性能通信库。NCCL优化了GPU之间(包括单机多卡和多机多卡)的集合通信操作,如 all-reduce, all-gather, broadcast 等,这些操作在模型并行和流水线并行中至关重要。 建立通信域的过程可以概括为以下几个步骤: 1. 进程初始化分布式任务通常由多个进程组成,每个进程控制一个或多个GPU。在开始任何通信之前,这些进程需要知道自己和同伴的存在。 工具库: 通常使用 torch.distributed(对于PyTorch用户)来管理分布式进程组。 关键函数: torch.distributed.init_process_group(...) ...
TorchAir学习笔记
发表于2025-12-01|LLM
TorchAir 学习笔记Eager Mode(单算子模式): 优点:立即执行并返回结果;易用、可调试;动态构建计算图(图的形状和大小可以在运行时改变); 缺点:可能存在性能问题(host bound),每一次 OP 调用触发一次 python/C++ 相关处理(torch/torch-npu/CANN)。 PyTorch 图模式演进: torch.jit -> lazy tensor -> TorchDynamo(PyTorch 2.0 正式集成,对外提供 torch.compile API,不光提供了成图能力,也同时发布了 Inductor 代码生成后端) torch.compile 底层原理: 前端: 图定义:torch fx 定义了一种图结构表达,并且能够进行 python 代码生成; 图生成:TorchDynamo 解析 python 编译后的 PyCodeObject 字节码,并生成一张 fx 图(传给用户定义的 Compiler); 后端: 图编译、图执行:TorchAir 是 torch.compile 里的...
大模型推理加速岗位学习路线
发表于2025-11-20|LLM
大模型推理加速岗位学习路线基础知识 Transformer/SelfAttention 原理(精读论文:Attention is all you need) FlashAttention 原理(精读论文) KVCache 原理 FasterTransformer/DeepSpeed/TensorRT-LLM 使用(推理加速) CUDA/CANN 编程(算子开发) vLLM 精读 PagedAttention 论文 阅读 vLLM 源码 Prefill/Decode 性能分析(PD 混合/分离) 参考资料 Basic LLM Inference/Generation
1…212223…60
avatar
xhj
相关学习笔记
文章
599
标签
109
分类
29
Follow Me
公告
欢迎来到我的博客
最新文章
14-FastAPI接口与项目闭环2026-10-14
13-主智能体搭建与异步执行2026-10-13
12-RAGFlow子智能体与知识库准备2026-10-12
11-数据库查询子智能体与MySQL工具2026-10-11
10-网络搜索子智能体与Tavily工具2026-10-10
分类
  • AI Agent101
  • Algorithm20
  • Backend Dev74
  • Big Data2
  • C/C++2
  • Claude Code118
  • Computer Basics18
  • Computer Network2
标签
JDBC Semaphore Hadoop Kafka HBOS Process Backend Dev Gradient Descent GCN Cross validation Trie Docker MLP Isolation Forest Gradient descent PyOD NMF Tornado TwoPointer Math Algorithm RabbitMQ OLSE dijkstra Filter Bayesian optimization PCA Wapper Git MonotoneStack List Dubbo Linux JVM Architecture JVM Redis JVM Performance Monitoring Embedding TCP/IP Stream API
归档
  • 十月 2026 14
  • 九月 2026 17
  • 八月 2026 30
  • 七月 2026 24
  • 六月 2026 26
  • 五月 2026 25
  • 四月 2026 16
  • 三月 2026 20
网站信息
文章数目 :
599
本站访客数 :
本站总浏览量 :
最后更新时间 :
© 2025 - 2026 By xhj框架 Hexo 8.1.2|主题 Butterfly 5.5.4