简介
本文档提供了KAIL的安装指南、适配指南、算子说明与示例代码,旨在帮助用户快速熟悉KAIL的使用。
KAIL(Kunpeng Artificial Intelligence Library,鲲鹏AI库)是华为提供的基于鲲鹏平台优化的高性能AI算子库,主要完成深度神经网络算子库和拓展算子库,拓展算子包括softmax、random_choice等。
AI库概述
KAIL提供了基于鲲鹏平台优化的高性能AI算子,主要由C/C++、汇编语言实现。KAIL的组成如表1所示。
序号 |
库名 |
描述 |
适用场景 |
---|---|---|---|
1 |
KAIL_DNN |
深度神经网络算子库(Deep Neural Network Library),结合鲲鹏处理器微架构特性与软优化手段,优化AI算子性能。通过算子库插件形式集成进开源软件oneDNN。 |
适用于各种机器学习应用,包括图像分类、目标检测、语音识别等,并可以与各种深度学习框架集成,如TensorFlow、PyTorch等。 |
2 |
KAIL_DNN_EXT |
深度神经网络算子拓展库(Deep Neural Network Extension Library),深度优化softmax、random_choice等算子,封装为Python语言接口提供给用户调用。 |
适用于多分类任务、随机选择等场景,并可以与各种深度学习框架集成,如TensorFlow、PyTorch等。 |
KAIL仅适用于鲲鹏系列处理器。其中:
KAIL_DNN适用于鲲鹏920新型号处理器,支持SVE指令(256位宽、512位宽)、SME(512位宽)。
KAIL_DNN_EXT适用于鲲鹏920处理器,支持NEON指令(128位宽)。
为获得最优性能,KAIL接口内部不做完整入参校验,入参合法性由调用方业务来保证。
应用场景
KAIL主要在以下场景中使用:
- 深度学习加速:图像分类、目标检测和分割、自然语言处理、推荐系统
- HPC:气象、生命科学、制造、教育科研
- 大数据:机器学习算法
父主题: 开发指南