优化说明
本节介绍基于鲲鹏平台对Faiss的优化说明,包括维度交织查表累和优化、向量过滤压缩。
维度交织查表累和优化
查表累和算子是倒排索引与全量检索的热点算子,为计算瓶颈。距离扩展累加使用额外寄存器使指令展开度下降,同时引入额外计算。
对内存数据进行重新排布,充分利用256位宽寄存器,减少临时寄存器开销,提升指令展开度,消除额外计算(数位扩展)。通过减少16个寄存器的使用,从而提升流水线利用率,降低计算时延。
向量过滤压缩
过滤压缩在计算bitmap时中间步骤多,为计算瓶颈。中间数据多为无效数据,平均寄存器位宽利用率不足。
该优化利用SVE谓词与寄存器256位宽特性,省去中间步骤。
父主题: Faiss说明