登录社区云,与社区用户共同成长
邀请您加入社区
本文系统梳理软件性能优化的方法论:先建立性能思维,用估算和基准测试判断优化价值,再借助 perf、VTune、benchmark 等工具定位瓶颈。文章从 CPU 流水线、执行端口、缓存、内存墙、分支预测、SIMD 向量化、LTO/PGO、指令集构建,到锁粒度、读写锁、原子操作、伪共享与 TLS,串起一套从测量到落地的优化清单。核心观点是别凭感觉调参,而要理解硬件限制、用数据验证收益,在可读性和复杂
本文详细介绍了Redis的核心特性、数据结构、持久化机制及常见问题解决方案。Redis作为高性能内存数据库,其快速响应得益于内存操作、单线程模型和高效数据结构。文章深入解析了String、Hash、List、Set、Zset等数据类型的底层实现,包括SDS、压缩列表、快速列表等结构。在持久化方面,对比了RDB和AOF的优劣及适用场景,并介绍了重写机制。针对数据丢失问题,提出了主从同步和持久化策略建
Redis Set 类型解析:从底层实现到应用场景 摘要 本文深入解析 Redis 的 Set 数据类型,首先从语义层面区分 Set 与 List、Hash 的差异:Set 强调元素唯一性且不保证顺序,适合去重和集合运算场景。底层实现上,Redis 根据数据规模采用不同编码策略:小集合使用紧凑的 listpack 编码(存储 header+entry+EOF 结构),大集合则转换为 hashtab
key 是快递,slot 是格子,Redis 节点是仓库管理员。一个快递只进一个格子,一个格子只归一个管理员管,但一个管理员要管很多格子。
KV cache 把自回归生成里的重复计算砍掉了。历史 Token 的 K、V 固定不变,只算一次并缓存;新 Token 只补自己的 Q、K、V,再拿完整 cache 做 attention。工程实践里常见到 5x 左右提速。代价是显存占用上升,而且在大规模服务时,这个约束经常比纯算力更先撞线。vLLM、TGI、TensorRT-LLM 这类主流服务栈,底层都建立在这套思路上。如果说程序员已经是高
摘要 本文针对长输入短输出的推理场景(如RAG、长文档问答),通过实测分析了SGLang框架下的优化策略。关键发现: 前缀缓存效果显著:32并发下吞吐提升544%,首token延迟从43.8秒降至6.2秒; 单服务扩展性受限:TP4以上因PCIe瓶颈性能提升不足4%,TP8相较TP4仅提升4%; PD分离需对称配置:非对称配比因KV重分片导致吞吐下降4-14倍,4+4对称配置比单TP8吞吐高22%
SGLang 团队的分析博客里把这个结构画得更清楚:每一层由 SWA + C4(4:1 压缩、top-512 稀疏)+ C128(128:1 压缩、稠密)三种 KV 池组成,一个 10k token 的请求,只需要存 128 个 SWA tokens 加上完整的 C4/C128 压缩 KV,其他请求匹配到前缀时直接复用压缩版。技术报告 PDF:https://huggingface.co/deep