方案架构
鲲鹏BoostKit搜推广组件对应位置如图1所示。鲲鹏BoostKit搜推广使能套件中每个组件的加速方案和修改策略不同,一般不会修改原有基础软件的系统架构,但修改策略会按照实际需要采用不同方案。组件说明如表1所示。
算法类型 |
组件 |
说明 |
|---|---|---|
召回算法 |
KScaNN |
KScaNN(Kunpeng Scalable Nearest Neighbors)是基于倒排索引,结合鲲鹏架构深度优化索引布局、算法流程和计算流程,充分挖掘芯片潜力形成的向量检索算法。 |
KBest |
KBest(Kunpeng Blazing-fast embedding similarity search thruster)鲲鹏图检索算法,是鲲鹏自研的高效的图检索算法。通过量化、NUMA访存调度等方法优化了最近邻搜索的性能和精度,用于多维向量近似最近邻搜索。 |
|
KVecturbo |
KVecturbo(Kunpeng Vector Turbo)是鲲鹏自研的向量检索加速组件,可对接openGauss向量数据库使用。KVecturbo通过将高维向量量化压缩,快速获取query的近邻,同时使用SIMD指令集加速距离计算,用于多维向量最近邻搜索。 |
|
KRL |
KRL(Kunpeng Retrieval Library )鲲鹏检索算子库是基于鲲鹏平台优化的用于加速向量检索的算子库。KRL可通过替换算子的形式对faiss原生的HNSW、PQFS、IVFPQ和IVFPQFS等算法进行加速。 |
|
KNewPfordelta |
KNewPfordelta (Kunpeng New PForDelta )鲲鹏New PForDelta算法,是鲲鹏构建的高效的召回倒排解压缩算法,通过向量指令等方法优化了倒排解压缩的性能。 |
|
排序AI推理算子库 |
KAIL_DNN |
KAIL_DNN(Deep Neural Network Library)深度神经网络算子库,结合鲲鹏处理器微架构特性与软优化手段,优化AI算子性能。该算子库以插件形式集成至开源软件oneDNN。 |
KAIL_DNN_EXT |
KAIL_DNN_EXT(Deep Neural Network Extension Library)深度神经网络算子拓展库,深度优化softmax、random_choice等算子,封装为Python语言接口提供给用户调用。 |
|
KTFOP |
KTFOP(Kunpeng TensorFlow Operator)鲲鹏TensorFlow算子库,是鲲鹏自研的高效的TensorFlow算子库。通过SIMD(Single Instruction Multiple Data)指令、多核调度等方法,提高CPU侧算子性能,减少CPU侧计算资源的占用,从而提高在线推理端到端整体的吞吐量。 |
|
ANNC |
TensorFlow图编译优化特性通过使能加速神经网络计算编译器ANNC(Accelerated Neural Network Compiler),实现推荐推理性能加速。ANNC提供了计算图优化,高性能融合算子生成与对接等优化技术。 |
