框架优化速成教学:一,这个是现如今最先进的技术?
因为老是有hr偷看我简历,然后老是搞推理框架和算子优化的,我决定从头学一遍并且总结出来。
不搞芯片的不用学,这个吃学历和顶会的。也就是为什么我从一开始没搞这个,但是又收到了中科院和香港实验室之类的邀请。
现在学好像有点晚了。。。。算啦,搞一下吧。然后其实你们看到的稿子都是我写剩下的,一般都是写好几篇到点就发的。
本文需要先看了上期讲芯片的看了才容易点。
那么正式开始吧,本文的话还是按照vllm举例,因为时间有限,我和你们的时间都有限,所以我只讲最简单,最通用的东西,
第一点:基本上所有的推理优化都是优化Tensor Cores,
第二点:其他的SM架构,cuda cores无法被优化,这个是硬件,vllm这种算软件框架可以优化计算速度,
公式:最终加速速度 =Tensor Cores 提供的理论计算能力 * vLLM 等软件的效率提升因子
第三点:优化方向有很多,我这里列举一些,这个等于是扫盲教程,因为门槛过于高,而且极度歧视背景出身。
我写这个教程是因为感兴趣,当然能对这个感兴趣的人少,所以说看看得了,后续可能会讲怎么优化这些方向。
一、内存与调度 | 动态批处理 (Continuous Batching) | 解决 GPU 空闲等待,保持计算的连续性。 |
PageAttention 显存管理 | 解决 KV Cache 碎片问题,提高显存的利用率。 | |
Prefix Caching 优化 | 解决重复计算问题,减少内存带宽的重复消耗。 | |
二、计算效率 (GPU Kernel) | 编译器优化 (Triton/CUDA Kernel) | 针对特定模型和硬件,编写最高效率的 GPU 代码,确保 Tensor Cores 100% 满负荷运行。 |
推测解码 (Speculative Decoding) | 通过算法创新,用更少的计算步骤(Token)达成相同的结果,减少 Tensor Cores 的总工作量。 | |
三、数据传输 | I/O 优化(PCIe, Zero-copy) | 优化 CPU 内存与 GPU 显存之间,以及硬盘与内存之间的数据传输速度,避免 Tensor Cores 等待数据。 |
四、多卡协作 | 张量并行优化(NCCL/通信库) | 优化多 GPU 之间的通信算法,确保计算任务分解和结果合并时的延迟最低。 |
阿里云工作强度 708人发布
