功能
过去attention算子会将k和v存储在显存中,随着模型越来越大,输入序列越来越长,kvcache也越来越大,对显存的容量造成很大压力,造成性能上的瓶颈。因此Multi-Head Latent Attention提出将kvcache压缩成一个一个较小的向量,代替原来的kvcache输入进fa算子进行计算。
特殊约束
- MLA合并输入kvcache功能不支持Atlas 推理系列产品,不支持alibi mask,多头自适应压缩(rope 场景),多头自适应压缩(alibi 场景),并行解码,logN缩放,BNSD输入排布。
- 开启MLA合并输入kvcache功能后query和keyCache的head_size范围为(0, 576],当keyCache或valueCache的head_size > 256时,block_size小于等于128,mlaVHeadSize不能大于query和keyCache的head_size。
- MLA合并kvcache功能支持全量化场景,一起开启时query和key的head_size范围为(0, 576],mlaVHeadSize不能大于query和key的head_size,当keyCache或valueCache的head_size > 256时,block_size小于等于128。
- MLA合并输入只支持MQA场景。
- Atlas 800I A2 推理产品/Atlas A2 训练系列产品和Atlas A3 推理系列产品/Atlas A3 训练系列产品上0<batch<=8192。