鲲鹏统一加速框架介绍
最新消息
- [2025.12.30]:第二次正式发布。新增支持RSA和SM2加解密算法。
- [2025.06.30]:第一次正式发布。
项目简介
简介
KUAF(Kunpeng Unified Acceleration Framework,鲲鹏统一加速框架)是鲲鹏自研的统一加速框架,是一个实现鲲鹏加速引擎(Kunpeng Accelerator Engine)硬件协同软压缩库和软加解密库加速的解决方案。
KUAF具备调度硬件加速框架硬件加速器,硬加速zlib的压缩/解压和OpenSSL的加解密功能。KUAF支持的调度策略如表 1 KUAF调度策略所示。
| 序号 | 调度策略 | 策略描述 |
|---|---|---|
| 1 | 硬件带宽调度策略 | 统计硬件带宽使用率,硬件带宽达到上限时切换成软优化库执行。 |
| 2 | 软硬算比例调度策略 | 配置软硬件调度比例,按比例随机分发执行策略。 |
算法支持
加解密
- 支持非对称算法RSA,同步模式
- 支持非对称算法SM2,同步模式
zlib:
- 支持zlib开源库中的deflate/inflate压缩/解压相关的接口
目录结构
项目全量目录层级介绍如下:
├── docs # 项目文档目录
│ └── zh # 中文文档目录
│ ├── figures # 中文文档图片资源目录
│ ├── quick_start.md # 快速入门
│ ├── release_notes.md # 硬件加速框架版本发布说明
│ ├── installation_guide.md # 硬件加速框架安装指导
│ ├── api_reference.md # 硬件加速框架接口参考
├── adapter # 硬件加速框架应用适配层
│ ├── kuaf_comp # 解压缩适配层
│ ├── kuaf_crypto # 加解密适配层
└── config # 配置文件
├── open_source/patch # 补丁文件
├── package # 打包脚本
├── src # 硬件加速框架功能源码
│ ├── common # 配置文件和log打印源码
│ ├── core # 调度功能源码
├── test # 测试代码
│ ├── functest # 功能测试
│ ├── fuzztest # fuzz测试
│ ├── perftest # 性能测试
│ ├── gtest-download # 测试框架下载脚本
├── LICENSE # 项目许可证
└── README.md # 项目说明文档
└── build.sh # 构建脚本
└── env.check.sh # 环境检测脚本版本说明
每个发布版本特性变更详细信息,请参见《版本说明书》。
快速入门
硬件加速框架快速入门,包括安装与使用等,具体请参见《快速入门》。
文档
| 资源名称 | 资源简介 |
|---|---|
| 版本说明书 | 提供硬件加速框架版本配套信息。 |
| 安装指南 | 提供硬件加速框架源码编译安装和RPM包安装方式的详细指导。 |
| API参考 | 提供硬件加速框架接口说明、接口调用示例等。 |
| 快速入门 | 提供硬件加速框架配置示例等。 |
免责声明
致硬件加速框架使用者
本软件仅供调试和开发之用,使用者需自行承担使用风险,并理解以下内容:
- 此代码仓计划参与OpenSSL/Zlib软件开源,仅作OpenSSL/Zlib功能扩展或性能提升,编码风格遵照原生开源软件,继承原生开源软件安全设计,不破坏原生开源软件设计及编码风格和方式,软件的任何漏洞与安全问题,均由相应的上游社区根据其漏洞和安全响应机制解决。请密切关注上游社区发布的通知和版本更新。鲲鹏计算社区对软件的漏洞及安全问题不承担任何责任。
- 数据处理及删除:用户在使用本软件过程中产生的数据属于用户责任范畴。建议用户在使用完毕后及时删除相关数据,以防信息泄露。
- 数据保密与传播:使用者了解并同意不得将通过本软件产生的数据随意外发或传播。对于由此产生的信息泄露、数据泄露或其他不良后果,本软件及其开发者概不负责。
- 用户输入安全性:用户需自行保证输入的命令行的安全性,并承担因输入不当而导致的任何安全风险或损失。对于输入命令行不当所导致的问题,本软件及其开发者概不负责。
免责声明范围:本免责声明适用于所有使用本软件的个人或实体。使用本软件即表示您同意并接受本声明的内容,并愿意承担因使用该功能而产生的风险和责任,如有异议请停止使用本软件。
在使用本软件之前,请谨慎阅读并理解以上免责声明的内容。对于使用本软件所产生的任何问题或疑问,请及时联系开发者。
致数据所有者
如果您不希望您的数据集等信息在硬件加速框架中被提及,或希望更新硬件加速框架中有关的描述,请在GitCode提交issue,我们将根据您的issue要求删除或更新您相关描述。衷心感谢您对硬件加速框架的理解和贡献。
License
硬件加速框架产品的使用许可证,具体请参见LICENSE文件。
硬件加速框架 docs目录下的文档适用CC-BY 4.0许可证,具体请参见LICENSE文件。
贡献声明
如果使用过程中有任何问题,或者需要反馈特性需求和bug报告,可以提交Issue联系我们,具体贡献方法可参考这里。
- 提交错误报告:如果您在硬件加速框架中发现了一个不存在安全问题的漏洞,请在硬件加速框架仓库中的Issues中搜索,以防该漏洞被重复提交,如果找不到漏洞可以创建一个新的Issues。如果发现了一个安全问题请不要将其公开,请参阅安全问题处理方式。提交错误报告时应该包含完整信息。
- 安全问题处理:本项目中对安全问题处理的形式,请通过邮箱通知项目核心人员确认编辑。
- 解决现有问题:通过查看仓库的Issues列表可以发现需要处理的问题信息,可以尝试解决其中的某个问题。
- 如何提出新功能:请使用Issues的Feature标签进行标记,我们会定期处理和确认开发。
- 开始贡献:
- Fork本项目的仓库。
- Clone到本地。
- 创建开发分支。
- 本地测试:提交前请通过所有单元测试,包括新增的测试用例。
- 提交代码。
- 新建Pull Request。
- 代码检视:您需要根据评审意见修改代码,并重新提交更新。此流程可能涉及多轮迭代。
- 当您的PR获得足够数量的检视者批准后,Committer会进行最终审核。
- 审核和测试通过后,CI会将您的PR合并入到项目的主干分支。
建议与交流
欢迎大家为社区做贡献。如果有任何疑问或建议,请提交Issues,我们会尽快回复。感谢您的支持。
致谢
硬件加速框架由华为公司的下列部门联合贡献:
- 鲲鹏计算Boostkit开发部
感谢来自社区的每一个PR,欢迎贡献硬件加速框架!