tp钱包APP|kae
KAE音响旗舰店 - 京东
KAE音响旗舰店 - 京东
京东首页
你好,请登录 免费注册
我的订单
我的京东
京东会员
企业采购
客户服务
网站导航
手机京东
更多导航服装城食品团购夺宝岛闪购金融
我的京东
加载中,请稍候...
20去购物车结算
加载中,请稍候...
CLASSIFICATION
商品分类
上架时间
好评度
价格
销量
1/1
<
>
共10件商品
>
¥
KAE英国楷尔K8乐器弹唱音响户外K歌专业大功率街头唱歌演出音箱三分频环绕立体声自带声卡网红直播 K8黑色旗舰版(额定500W) 官方标配
已有人评价
>
¥
KAE英国楷尔家庭KTV音响套装专业影院家用K歌音箱卡拉ok唱歌点歌机全套设备 KA-12套装12吋+3T内存
已有人评价
>
¥
KAE英国楷尔TK08户外唱歌音响专业K歌移动KTV音箱 TK08户外唱歌音响
已有人评价
>
¥
KAE音响K8英国楷尔户外弹唱音响专业乐器演出演奏音箱自带数字声卡网红直播无损音质调音台立体环绕声 K8黑色(14喇叭500W额定) 官方标配
已有人评价
>
¥
KAE音响旗舰英国kae-k8音响路演乐器吉他萨克斯专业数字直播户外k歌立体环绕声音箱 K8黑色(额定500W)+读谱点歌机500G
已有人评价
>
¥
KAE英国楷尔KS-12家庭KTV音响套装 12英寸家庭KTV音响套装
已有人评价
>
¥
KAE英国楷尔104A家庭KTV音响套装 红色
已有人评价
>
¥
KAE音响英国楷尔TC-08音响网红街头路演弹唱k歌蓝牙便携音箱 TC-08音响-黑色 TC-08标配(不带话筒)
已有人评价
>
¥
【定金】KAE音响KA-12家庭KTV音响套装 定金500元。 KA-12音响定金
已有人评价
>
¥
KAE英国楷尔KA-12家庭KTV音响套装卡拉OK点歌机家用K歌专业箱舞台演出全套 12英寸KTV音响全套
已有人评价
< 上一页
1
下一页 >
多品类齐全,轻松购物
快多仓直发,极速配送
好正品行货,精致服务
省天天低价,畅选无忧
购物指南
购物流程
会员介绍
生活旅行/团购
常见问题
大家电
联系客服
配送方式
上门自提
211限时达
配送服务查询
配送费收取标准
海外配送
支付方式
货到付款
在线支付
分期付款
邮局汇款
公司转账
售后服务
售后政策
价格保护
退款说明
返修/退换货
取消订单
特色服务
夺宝岛
DIY装机
延保服务
京东E卡
京东通信
京东JD+
关于我们|
联系我们|
联系客服|
合作招商|
商家帮助|
营销中心|
手机京东|
友情链接|
销售联盟|
京东社区|
风险监测|
隐私政策|
京东公益|
English Site|
Contact Us
京公网安备 11000002000088号|京ICP证070359号|
互联网药品信息服务资格证编号(京)-经营性-2014-0008|新出发京零 字第大120007号
互联网出版许可证编号新出网证(京)字150号|
出版物经营许可证|
网络文化经营许可证京网文[2014]2148-348号|违法和不良信息举报电话:4006561155
Copyright © 2004 - 2020 京东JD.com 版权所有|消费者维权热线:4006067733
经营证照
|
(京)网械平台备字(2018)第00003号
|
营业执照
Global Site|
Сайт России|
Situs Indonesia|
Sitio de España|
เว็บไซต์ประเทศไทย
京东旗下网站:
京东钱包|
京东云
可信网站信用评估
网络警察提醒你
诚信网站
中国互联网举报中心
网络举报APP下载
国家知识产权公共服务网
手机扫一扫,劲爆优惠触手可得!
商品比较
西安昆仑汽车电子有限公司
>西安昆仑汽车电子有限公司
中文版
English
首 页
关于我们
公司简介
企业愿景
组织构架
企业文化
企业资质
企业荣誉
公司专利
产品展示
注塑零件
机加零件
装配零件
质量保证
测量设备
技术研发
厂区设备
厂区一览
设备展示
主要客户
新闻资讯
公司动态
行业资讯
技术支持
联系我们
西安昆仑汽车电子有限公司创立于1999年1月26日,由西安昆仑工业(集团)有限责任公司独资经营2002年10月25日引入台方投资,注册资金1360万元。2014年12月实现增资扩股,现为西安昆仑工业(集团)有限责任公司、陕西省产业投资有限公司、台商、咸阳嘉华有限公司四方合资经营的汽车零部件生产企业。公司投资总额3930.61万元,注册资金2124.86万元,现有员工200余人。
主要产品范围:公司具备橡塑成型(含高精度功能件、双色注塑、嵌件注...
注塑零件
机加零件
装配零件
油门踏板
油门踏板
托架
踏板
踏板(4)
踏板(3)
踏板(2)
适配器
进油板
进油板(2)
出油板
出油板(2)
泵壳
TEV6磁芯
TEV5磁芯
泵壳
水管
支架组件
油泵电枢
扇形齿轮组件
浮子杆组件
TEV6线圈
TEV5线圈
TEV2线圈
让质量意识走心见行
2024-03-06
汽车电子公司召开2024年工作思路研讨会
2024-03-01
喜报
2024-01-09
公司员工韩强沉着冷静帮助路人送医治疗
2023-08-09
UAES总监一行 出席汽车电子EKPT生产线剪彩仪式...
2023-02-03
新的一年,愿我们都能与美好撞个满怀~
2023-02-02
形势任务教育
2020-09-02
“庆两会、提体能、战疫情”汽车电子公司第二届...
2020-09-01
授予一级供应商证书
2018-09-25
“7S”管理制度
2018-09-25
入世十年行业回眸:中国狼 走出去
入世十年,在与国外巨头的较量中,中国本土企业由弱到强,完成了一轮伟大的进化。如今的许多行业企业,俨然已成长为一匹身形健...
辉门研发新型轻质铝活塞 可提高发动机效率
辉门集团日前宣布,其已研发出一款轻量化、高强度的铝活塞,该活塞有助于提高直喷式汽油发动机的能...
通用1.2T/1.4T/1.5T发动机即将国产
资料显示,2012年6月,国家发改委已经核准了上海通用(沈阳北盛)汽车有限公司配套发动机项目,项目产品包...
关于我们
公司简介
企业愿景
组织构架
企业文化
企业资质
企业荣誉
公司专利
产品展示
注塑零件
机加零件
装配零件
厂区设备
厂区一览
设备展示
新闻资讯
公司动态
行业资讯
技术支持
联系我们
电话:029-82524983
版权所有:西安昆仑汽车电子有限公司公司地址:西安市幸福北路67号 联系电话:029-82545234建站/推广/维护/安全:西安利友科技 陕ICP备08100988号
英国KAE音响_专业音响_音响设备_KTV音响_会议室音响_音视频系统解决方案提供商
英国KAE音响_专业音响_音响设备_KTV音响_会议室音响_音视频系统解决方案提供商
Chinese
Chinese
English
首页
关于KAE
KAE产品
专业音响
KA系列
KA10
KA12
KA15
KA215
KS系列
KS10
KS12
KL系列
KL12
线阵音响系列
KLA-210
卡包音箱
KB系列
KB16
影K音箱
YK系列
低音炮
KA系列超低
KAS15
KAS18
KAS215
KAS218
功率放大器
MA系列
MA350
MA650
MA850
MK系列(内置效果器)
周边配件
话筒系列
KT66
KT-828
效果器系列
K9
K10
吉他弹唱音箱
TC系列
TC-80
TC-08
K系列
K8
KAE资讯
工程案例
服务支持
联系KAE
首页
关于KAE
KAE产品
KAE资讯
工程案例
服务支持
联系KAE
我们为您推荐的产品
以市场的经营数据为基准,为您推荐最合适的产品
英国KAE专业无源低音炮-KAS18-18寸超低音炮
英国KAE专业娱乐K歌音箱-KS12-12寸专业音箱
英国KAE线阵系列音响KLA-210-双10寸线阵音箱
KAE K8数字无损环绕立体声专业舞台演出直播音响
视频
为您展示视觉上的享受
KAE工程案例
最为优秀的施工案例
家庭式KTV点歌机
家庭式KTV点歌机
大型音乐大厅
大型音乐大厅现场案例
某集团公司内部私人会所案例
某集团公司内部私人会所案例
与我们联系
您若对本站商品非常感兴趣,可以通过以下方式与我们联系
KAE英国总部
英国楷尔国际有限公司
UK KAE INTERNATIONAL LTD
英国伦敦临港路1号海滨胜地G25
G25, Seaside Resort, No. 1 Lingang Road, London, UK
KAE中国总代理
深圳楷尔实业集团有限公司
地址:深圳市宝安区西乡旭生实业西发B区1栋6楼
TEL: +86-755-33138666
EMAL: kae@kae.ltd
首页
关于KAE
KAE产品
KAE资讯
工程案例
服务支持
联系KAE
Powered by 深圳楷尔实业集团有限公司 粤ICP备2021016976号
KAE_百度百科
百度百科 网页新闻贴吧知道网盘图片视频地图文库资讯采购百科百度首页登录注册进入词条全站搜索帮助首页秒懂百科特色百科知识专题加入百科百科团队权威合作下载百科APP个人中心收藏查看我的收藏0有用+10KAE播报讨论上传视频英国楷尔国际有限公司下属分公司KAE研发总部位于英国伦敦,英国楷尔国际有限公司。主要产品为音响类产品及周边配套产品。中文名楷尔 [2]外文名KAE [1]所属公司 英国楷尔国际有限公司 [1]新手上路成长任务编辑入门编辑规则本人编辑我有疑问内容质疑在线客服官方贴吧意见反馈投诉建议举报不良信息未通过词条申诉投诉侵权信息封禁查询与解封©2024 Baidu 使用百度前必读 | 百科协议 | 隐私政策 | 百度百科合作平台 | 京ICP证030173号 京公网安备110000020000openEuler 20.03 LTS_百度百科
Euler 20.03 LTS_百度百科 网页新闻贴吧知道网盘图片视频地图文库资讯采购百科百度首页登录注册进入词条全站搜索帮助首页秒懂百科特色百科知识专题加入百科百科团队权威合作下载百科APP个人中心收藏查看我的收藏0有用+10openEuler 20.03 LTS播报讨论上传视频华为于2020年发布的开源操作系统openEuler 20.03 LTS是华为技术有限公司于2020年3月27日在华为开发者大会(HDC 2020)上发布的开源操作系统 [1]。openEuler 20.03 LTS采用iSula轻量级容器解决方案,统一物理网、边缘和云计算容器解决方案;搭载了鲲鹏加速引擎(KAE),支持加解密加速;搭载了A-Tune智能系统性能优化引擎,可推理出业务特征,配置较佳的系统参数合;同时增强glibc/zlib/gzip性能,利用AArch64的neon指令集,提升基础库性能 [2]。截至2021年12月31日,openEuler 20.03 LTS已更新至openEuler 20.03 LTS SP3版本 [3]。外文名openEuler 20.03 LTS研 发华为技术有限公司属 性开源操作系统发布时间2020年3月27日发布地点广东省东莞市松山湖最新版本openEuler 20.03 LTS SP3(截至2021年12月31日)后继系统openEuler 20.09目录1发展历程2系统功能3系统版本4使用说明5硬件要求6系统评价发展历程播报编辑2020年3月27日,华为技术有限公司在华为开发者大会(HDC 2020)上发布openEuler 20.03 LTS [1]。2020年12月28日,openEuler 20.03 LTS发布SP1补丁包 [4]。2021年7月15日,openEuler 20.03 LTS发布SP2补丁包 [5]。2021年12月31日,openEuler 20.03 LTS发布SP3补丁包,至此openEuler 20.03 LTS系统版本更新结束 [3]。华为开发者大会(HDC 2020)系统功能播报编辑iSula轻量级容器openEuler 20.03 LTS采用iSula轻量级容器解决方案,统一物联网,边缘和云计算容器解决方案:缩短三级调用链,百容器内存资源占用较低;支持CRI/OCI标准开源接口,对接runc、kata等OCI运行时;通过Smart-loading智能镜像下载技术,提升镜像下载速度;安全容器将虚拟化技术和容器技术结合,使其具有较好的隔离性;系统容器支持本地文件系统启动,可实现较快部署,支持部署systemd,提升user namespace隔离性 [2]。加解密加速openEuler 20.03 LTS搭载了鲲鹏加速引擎(KAE),支持加解密加速,支持摘要算法SM3、对称加密算法SM4、对称加密算法AES、非对称算法RSA和密钥协商算法DH,所有算法均支持异步模型;加密算法SM4支持CTR/XTS/CBC模式;非对称算法RSA支持Key Sizes 1024/2048/3072/4096;对称加密算法AES,支持ECB/CTR/XTS/CBC模式;密钥协商算法DH支持Key Sizes 768/1024/1536/2048/3072/4096 [2]。系统性能优化引擎openEuler 20.03 LTS搭载了A-Tune智能系统性能优化引擎,可推理业务特征,配置较佳的系统参数合,使业务处于较优运行状态;增强了glibc/zlib/gzip性能,利用AArch64的neon指令集,提升基础库性能 [2]。内核特性openEuler 20.03 LTS支持ARM64架构内核热补丁;支持Numa Aware Qspinlock,可减少跨NUMA节点的Cache/总线冲突;通过优化IOVA页表查找和页表释放算法,提升I/O MMU子系统性能;根据ARM64指令以及流水线特点,优化了CRC32及checksum实现,提升数据校验性能;支持ARM v8.4 MPAM [2]。虚拟化特性openEuler 20.03 LTS优化了IRQfd路径注入中断的问题,提升高性能直通设备(网卡、SSD磁盘等)性能;借助鲲鹏硬件特性,提升虚拟机启动内存加载速度;优化了iSCSI模块kworker的NUMA亲和性自绑定,提升IPSAN磁盘的IO性能 [2]。openEuler 20.03 LTS安装界面系统版本播报编辑openEuler 20.03 LTS系统版本开发阶段版本号发布时间资料来源正式版openEuler 20.03 LTS2020年3月27日 [1]补丁包openEuler 20.03 LTS SP12020年12月28日 [4]openEuler 20.03 LTS SP22021年7月15日 [5]openEuler 20.03 LTS SP32021年12月31日 [3]使用说明播报编辑因Python团队已于2020年1月停止维护Python 2,故openEuler 20.03 LTS仅修复Python 2的CVE,并将于2020年12月31日停止维护Python 2,用户安装后须尽快切换到Python 3 [9]。openEuler 20.03 LTS安装方式仅支持光盘、USB盘安装、网络安装、qcow2镜像安装和私有镜像安装,其中仅华为公有云的x86虚拟化平台支持私有镜像安装 [8]。为了防止openEuler 20.03 LTS软件包在传输过程中由于网络原因或者存储设备原因出现下载不完整的问题,在获取到软件包后,需要对软件包的完整性进行校验,通过了校验的软件包才能部署 [6]。硬件要求播报编辑物理机安装要求在物理机上安装openEuler 20.03 LTS时,应注意硬件兼容性方面的问题,当前已支持的服务器类型为:服务器形态服务器名称服务器型号机架服务器TaiShan 2002280均衡型机架服务器FusionServer Pro机架服务器FusionServer Pro 2288H V5服务器要求配置Avago 3508 RAID控制卡和启用LOM-X722网卡。注:TaiShan 200服务器基于华为鲲鹏920处理器。仅支持华为TaiShan服务器和FusionServer Pro机架服务器。参考资料: [6]openEuler 20.03 LTS所需的最小硬件要求为:部件名称最小硬件要求说明架构AArch64x86_64支持Arm的64位架构。支持Intel的x86 64位架构。CPU华为鲲鹏920系列CPU、Intel Xeon处理器。-内存不小于4GB(建议不小于8GB)-硬盘建议不小于120GB支持IDE、SATA、SAS等接口的硬盘。参考资料: [6]虚拟机安装要求若需要在虚拟机环境上安装openEuler 20.03 LTS,则虚拟机需要满足虚拟化平台兼容性要求为:openEuler自有的虚拟化组件(HostOS为openEuler,虚拟化组件为发布包中的qemu、KVM)创建的虚拟化平台及华为公有云的x86虚拟化平台 [6]。虚拟机需要满足虚拟化平台兼容性要求为:部件名称最小虚拟化空间要求架构AArch64x86_64CPU2个CPU内存不小于4GB(建议不小于8GB)硬盘不小于32GB(建议不小于120GB)参考资料: [6]系统评价播报编辑openEuler 20.03 LTS版本正式上线对鲲鹏生态的发展有一定的促进作用 [7]。(太平洋电脑网 评)新手上路成长任务编辑入门编辑规则本人编辑我有疑问内容质疑在线客服官方贴吧意见反馈投诉建议举报不良信息未通过词条申诉投诉侵权信息封禁查询与解封©2024 Baidu 使用百度前必读 | 百科协议 | 隐私政策 | 百度百科合作平台 | 京ICP证030173号 京公网安备110000020000【云驻共创】鲲鹏应用使能套件之KAE加速引擎让数据加密更安全-云社区-华为云
【云驻共创】鲲鹏应用使能套件之KAE加速引擎让数据加密更安全-云社区-华为云
冒泡提示
云社区
博客
博客详情
微信
微博
分享文章到微博
复制链接
复制链接到剪贴板
【云驻共创】鲲鹏应用使能套件之KAE加速引擎让数据加密更安全
举报
菜鸟级攻城狮
发表于 2021/09/13 18:02:46
2021/09/13
【摘要】 借助华为鲲鹏BoostKit虚拟化使能套件(简称鲲鹏BoostKit虚拟化),可加速迈向云计算之旅。本次KAE加速引擎让数据加密更安全直播将介绍鲲鹏BoostKit加速库全景,基于BoostKit加速库在WEB、大数据和分布式存储等典型应用场景的性能优化实践。
目录:
前言和导读
华为鲲鹏 BoostKit虚拟化使能套件介绍
加速库介绍
1.鲲鹏BoostKit加速库全景
1.1鲲鹏加速库最佳解决方案
1.2鲲鹏 BoostKit是什么?
1.3鲲鹏 Boostkit 八大应用场景
2. 鲲鹏BoostKit加速引擎介绍
2.1鲲鹏 BoostKit KAE加速引擎介绍
2.2鲲鹏 BoostKit KAE加速引擎使能
2.3鲲鹏 BoostKit KAE技术规格
2.4鲲鹏 BoostKit KAEzip 压缩库大数据应用场景
2.5鲲鹏BoostKit KAE加解密Web应用
3. 鲲鹏BoostKit软加速库介绍
3.1 鲲鹏BoostKit软加速库技术规格
3.2 Hyperscan典型场景性能加速效果
3.3 鲲鹏加速库-压缩库(Snappy/ZSTD/GZIP)性能加速效果
3.4 鲲鹏BoostKit数学库(Kunpeng Math Library)
3.5 鲲鹏BoostKit HMPPS信号库
3.6 鲲鹏BoostKit HW265视频编码性能数据
4.鲲鹏BoostKit IO智能预取介绍
4.1 BoostKit IO智能预取方案介绍
4.2 大数据场景I0智能预取部署与典型收益
4.3 分布式存储场景IO智能预取部署与典型收益
5.鲲鹏BoostKit加速库信息获取
5.1 鲲鹏BoostKit加速库获取方法
5.2 开发者贡献方法
总结
前言和导读:
华为鲲鹏BoostKit虚拟化使能套件介绍:
现如今,从使用数字技术的企业转型为数字企业,是全球各行各业都面临着的挑战。应用程序现代化是数字转型的核心,助力企业吸引客户,赋能员工,优化运营,改进产品。作为数字化转型的IT基础设施,云计算技术近年来发展飞速,尤其是随着虚拟化、云服务、容器等技术的快速发展,企业数字化转型的进程也因为云计算技术的发展而大大受益。云计算的不断革新,很大程度上也是因为开源技术与生态的飞速发展,以QEMU-KVM、OpenStack、Docker、Kubernetes为代表的开源云计算技术,打破了曾经封闭低效的“烟囱”式算力架构,不断的丰富IT基础设施,助力用户应用朝着更敏捷、更高效的方向进化,大步迈向数字化转型。
借助华为鲲鹏BoostKit虚拟化使能套件(简称鲲鹏BoostKit虚拟化),可加速迈向云计算之旅。本次KAE加速引擎让数据加密更安全直播将介绍鲲鹏BoostKit加速库全景,基于BoostKit加速库在WEB、大数据和分布式存储等典型应用场景的性能优化实践。
加速库介绍:
加速库可以结合计算机体系结构,通过改变软件代码的数据结构和算法,提升基础软件库的计算效率;也可以利用计算机芯片多样性,通过软件开发,充分发挥专有芯片高性能的特点,提升特定领域基础功能的计算效率。
加速库问题:
兔子繁殖问题:设有一对新生的兔子,从第三个月开始他们每个月都生一对兔子,新生的兔子从第三个月开始又每个月生一对兔子。按此规律,并假定兔子没有死亡,1年后共有多少个兔子?10年后,又如何?
从上述问题可以看出,算法的效率会影响性能,影响性能软件的因素还有很多。而鲲鹏加速库去做的事就是找出这些影响软件性能的因素并进行性能的调优。从这个问题,我们就引出了加速库的意义。
为什么要做加速库(1)
1.加速库提升软件计算效率
CPU的计算速度快了,是否就不需要加速库了呢? 当然不是!
体育运动中,所有运动员的追求是更高,更快,更远,而IT产业追求更快,更便宜。纯粹的提升硬件计算能力并不能达到快速解决问题的目的,必须依靠软件算法改变执行效率才能真正的提升计算速度。
因而,体现在用户界面的更快,更便宜,就必须通过最佳的软件实现(加速库)将硬件的最佳性能体现出来,提供最好的服务。
尤其当前CPU发展遭遇瓶颈的情况下,更是如此。
为什么要做加速库(2)
2.加速库重构摩尔定律
摩尔定律的失效,会带来什么样的影响呢?
摩尔定律是随着技术的发展,逐渐开发机器的算力。使得计算机的算力保持一定速率的快速增加。但是近些年来,在当前的技术背景下,计算机的处理能力遇到了发展瓶颈,计算机的处理能力不可能再一直保持快速增加,而对我们就意味着性价比降低了。
我们发现,即使是并发的情况下,硬件资源的利用率仍然是提升的,这就需要我们通过软件的方式,通过软件来结合硬件的一些特性来重构摩尔定律。让它仍然以线性的速度快速增长。
那么,有没有办法改进呢?
◆硬件多样性给我们带来重构摩尔定律的可能;
◆硬件多样性给我们带来重构摩尔定律的可能;计算能力的充分利用也是重要途径。
为什么要做加速库(3)
3. 加速库是系统工程的方法之一
IT系统中任何组件或模块都不是独立存在的,而是相互协同形成一个整体,而软件则在其中起到了巨大作用。比如:
◆单核CPU时代,如果出现阻塞性任务,CPU就会处于等待阶段,CPU的算力就会被浪费,多线程技术利用时间片划分,将CPU的能力充分发挥,这是软件技术;
◆多核CPU时代,多线程如何充分利用多核,也得需要软件调度,方能有效运转;
◆多路CPU时代,则需要通过软件考虑CPU与内存的协同,有效利用多个CPU,内存等资源;
◆当然多线程也并不能充分发挥CPU的能力,还需要能够确保软件实现的代码,在CPU执行时,流水线真正流动起来。
一、鲲鹏BoostKit加速库全景
1.1 鲲鹏加速库最佳解决方案
加速库实际上更偏向底层,介于硬件资源和解决方案之间。隶属于基础软件这一层,对上应用于各种解决方案,比如大数据、分布式存储、数据库等等这些解决方案。从而支撑这些解决方案于政府、运营商、金融等其他领域。对下可以适配主流的操作系统比如openEuler、CentOS等等,通过充分发挥硬件的能力,或者内嵌于操作系统,以及单独作为一个函数库去支撑解决方案,提升解决方案的性能,最终提升客户的性价比。也就是说不需要去一直增加这个硬件的配置,一直加购硬件资源提升计算机的性能。
1.2 鲲鹏BoostKit是什么?
鲲鹏应用使能套件BoostKit,释放倍级性能优势
BoostKit是部署在鲲鹏整机(服务器)环境之上,往上搭建的一个全栈优化的使能套件。具体结构如下图所示:
硬件是算力供给,软件的性能是一种算力的释放。如何充分释放硬件算力潜能,实现应用软件的极致性能,是当前业界面临的主要挑战之一。
1.3 鲲鹏Boostkit八大应用场景
鲲鹏应用使能套件 BoostKit,释放倍级性能优势,提供八大场景化应用使能套件:大数据、分布式存储、数据库、虚拟化、ARM原生、Web/CDN、NFV和HPC。
目前鲲鹏BoostKit已应用于重点行业的核心业务场景,帮助客户应用取得显著的性能加速效果。例如我们在广东政务云的应用实践中,采用的就是鲲鹏BoostKit使能套件在鲲鹏平台上,通过华为云平台,国产数据库的全栈优化,实现应用支持库查询性能,提升15%以上;在银行的核心应用系统实践中,鲲鹏BoostKit对于鲲鹏服务器+银河麒麟服务器操作系统V10,国产数据库全面优化,提升账单查询性能30%,已经上线并服务于十万以上的用户。
未来,我们将持续与各行业客户、伙伴一起基于鲲鹏BoostKit加速各行业的业务软件,进行持续的业务方案创新。当然,华为鲲鹏BoostKit的创新也不止这八大应用场景,其他的应用场景我们也可以一起共同探讨。
鲲鹏加速库整体介绍:
鲲鹏加速库:对软件基础库做深度性能优化,构建常用软件库在鲲鹏平台上的性能竞争力,硬件加速+软加速库,现已完成18个加速库,是基于鲲鹏平台指令优化和软硬件结合的加速技术。
备注:KAE (Kunpeng AcceleratorEngine)鲲鹏加速引擎;HPRE(High Performance RSA Engine)高性能RSA加速引擎;SEC(Security Engine)硬件安全加速引擎。
华为鲲鹏计算加速库是华为公司围绕鲲鹏处理器进行性能优化后的软件集合的统称,鲲鹏BoostKit加速库提供基于ARM指令深度优化和基于鲲鹏KAE(鲲鹏硬件加速引擎)开发的加速库,覆盖系统库、压缩、加解密、媒体、数学库、存储、网络等7类加速库,为大数据加解密、分布式存储压缩、视频转码等应用场景提供高性能加速。
1.压缩
使用鲲鹏硬件加速模块或鲲鹏指令对业界主流的开源压缩库进行性能优化。
2.加解密
使用鲲鹏硬件加速模块及鲲鹏指令对OpenSSL库进行性能优化,支持硬加速与指令加速的自动协同、应用逻辑无需修改即可使用加解密加速库。
3.系统库
基于鲲鹏微架构特点,使用鲲鹏指令对系统通用的基础库进行性能优化,以及x86平台的指令函数映射到鲲鹏平台的公共模块。
4.媒体
基于鲲鹏加速指令提供高性能媒体原语库及视频编解码库。
5.数学库
基于鲲鹏微架构特点以及鲲鹏加速指令,提供常用的高性能基础数学库。
6.存储
采用高速缓存盘配合高效的预取算法,提升系统存储IO性能,进而提升存储IO密集型场景的整体性能。
7.网络
基于鲲鹏架构特点,提供TCP/IP和OVS网络加速技术。
二、鲲鹏BoosKit加速引擎介绍
2.1 鲲鹏BoostKit KAE加速引擎介绍
鲲鹏加速引擎是基于鲲鹏920处理器提供的硬件加速解决方案,包含了KAE加解密和KAEzip,分别用于加速SSL/TLS应用和数据压缩,可以显著降低处理器消耗,提高处理器效率。此外,加速引擎对应用层屏蔽了其内部实现细节,用户通过OpenSSL、zlib标准接口即可以实现快速迁移现有业务。
面向社区开源使能:
➢兼容OpenSSL和Zlib标准接口, 应用层调用逻辑无需调整,使用简单
➢基于华为自研UACCE加速器内核框架, 避免传统内核调用方式的路径损耗
➢驱动在鲲鹏社区开源,用户下载源码自行编译使用
➢支持SR-IOV直通,支持虚拟化&容器场景下硬件加速
2.2 鲲鹏BoostKit KAE加速引擎使能
KAE使能及调用流程:
1. BMC子系统管理KAE加速系统的License,当系统初始化时,BMC将License传递给BIOS系统。
2. BIOS子 系统解析License信息,并根据解析结果对芯片加速子系统进行使能控制,并上报加速器ACPI表到内核。
3. 上层应用基 于OpenSSL/zlib加速库调用鲲鹏加速引擎, 并通过寄存器操作调用芯片加速子系统。
2.3 鲲鹏BoostKit KAE技术规格
KAE加解密是鲲鹏加速引擎的加解密模块,使用鲲鹏硬加速引擎RSA/SM3/SM4/DH/MD5/AES算法,结合无损用户态驱动框架,提供高性能对称加解密、非对称加解密算法能力,兼容OpenSSL 1.1.1a及其之后版本,支持同步&异步机制。
目前主要支持以下算法:
• 摘要算法SM3/MD5,支持异步模型。
• 对称加密算法SM4,支持异步模型,支持CTR/XTS/CBC/ECB/OFB模式。
• 对称加密算法AES,支持异步模型,支持ECB/CTR/XTS/CBC模式。
• 非对称算法RSA,支持异步模型,支持Key Sizes 1024/2048/3072/4096。
• 密钥协商算法DH,支持异步模型,支持Key Sizes768/1024/1536/2048/3072/4096。
2.4 鲲鹏BoostKit KAEzip压缩库大数据应用场景
• 某客户原有大数据平台架构基于开源HDP
• 采用BoostKit KAEzip加速库实现Gzip压缩加速:提升HDFS压缩性能80%+
• 基于开源HDP大数据平台,整体性能提升30%+
在“新基建”下,大数据等关键技术高速发展,对关键参数及相关组件的调整,使作业运行效率达到最优。聚焦大数据查询效率低、性能优化难等挑战,提供大数据组件的开源使能和调优、IO智能预取等基础加速软件包、Spark算法加速库等应用加速软件包,开源openLooKeng查询引擎,提升大数据分析效率。
了解详情:https://www.hikunpeng.com/developer/boostkit/big-data
2.5 鲲鹏BoostKit KAE加解密Web应用场景
聚焦Web应用HTTPS连接性能和Web开源组件可用性等问题,提供开源Web组件使能调优指南,通过使能鲲鹏RSA加速引擎,帮助客户提升Web网站的安全性,并实现用户HTTPS访问的极致体验。
鲲鹏BoostKit Web遵循开放式架构标准,支持所有开源的Web组件,并根据具体Web组件特点,提供了良好的场景适用性。鲲鹏BoostKit Web软件堆栈如下图所示:
鲲鹏BoostKit Web支持所有开源的Web应用,具有安装部署简单,系统配置方便的特点,结合华为鲲鹏920处理器提供的多核架构和鲲鹏加速引擎,能够提供更加卓越的高并发处理能力。主要价值如下:
1.开放生态
鲲鹏BoostKit Web对常用的C/C++/C#、Java、Python、Perl、PHP、Go等语言开发的开源Web应用及框架有较好的支持,同时对东方通和金蝶天燕、中创中间件和宝兰德等商业Web应用也做了适配支持,当前主要完成了如下开源Web应用的移植和调优,已在鲲鹏社区开放。
2.高性能
基于华为鲲鹏920处理器提供的鲲鹏加速引擎,可以实现HTTPS协议处理中RSA2048非对称加解密算法的硬件卸载,大幅降低CPU资源占用,HTTPS处理性能相比软件计算提升1倍,可以释放更多CPU用于业务处理。
基于华为鲲鹏920处理器的多核架构和多核调度优化算法,使得具有高并发、低时延、计算密集特点的Web应用性能提升明显。
3.使用简单:
安装部署、性能优化简单,运维容易:
简化安装:所有Web组件都提供移植安装指导及一键式安装脚本,安装方便。
性能优化简单:所有Web组件均提供性能调优指导及一键式调优脚本,通过调优可以充分发挥鲲鹏处理器的性能。
4.部署灵活
鲲鹏BoostKit Web支持业内所有安装部署方式:物理机、虚拟机和容器部署,在满足客户灵活的业务需求的同时,提供卓越的计算能力。
三、鲲鹏BoostKit软加速库介绍
3.1 鲲鹏BoostKit软加速库技术规格
BoostKit 可分为三种类别:
• ARM 支持的加速库 :开源社区提供 ARM 支持的加速库,在鲲鹏平台完成验证
• 硬加速库 ( 基于 KAE) :提供领先业界的性能加速能力 ,包含 ZIP( 硬加速 - 压缩 ), HPRE( 硬加速 - 非对称加解密 ),SEC( 硬加速 - 对称加解密 )
• 软加速库 : 基于鲲鹏指令深度优化的加速库 ,并向开源社区开放
基础加速软件包:
覆盖4个子系统的性能优化方法、7类加速库和3大优化方向的加速算法。
了解详情:https://www.hikunpeng.com/zh/developer/boostkit/library
3.2 Hyperscan典型场景性能加速效果
这是一款高性能的正则表达式匹配库,大量高效算法及SIMD指令的使用实现了高性能匹配。基于官网5.2.0版本优化,使用ARM Neon指令加速。使用数据预取、分支预测、结构重排及循环展开等多种优化手段实现加速。
应用场景:
[场景1:正则表达式编译预置]
正则表达式规则由集成使用Hyperscan的应用负责配置导入,考虑到性能问题,采用在初始化阶段导入并编译解析并缓存。
[场景2:块模式匹配]
适用于对一-段现成的完整数据进行匹配,匹配结束即返回结果。
[场景3:流模式匹配]
流模式是网络场景下跨报文匹配设计的特殊匹配模式。
3.3 鲲鹏加速库-压缩库(Snappy/ZSTD/GZIP)性能加速效果
Snappy: Google基于LZ77的思路用C+ +语言编写的快速数据压缩与解压程序库。
ZSTD: FaceBook开源到压缩库,同时兼顾压缩比、性能的压缩库,压缩比领先传统的deflate算法。
gzip:基础压缩软件,用于文件的无损压缩,基于deflate算法实现。
使用鲲鹏920的CRC以及预取指令,可实现压缩和解压的性能提升。
保持snappy/ZSTD/gzip已有接口、 功能规格不变的情况,提升压缩和解压速度,不会影响各个level的压缩及解压结果。
3.4 鲲鹏BoostKit数学库(Kunpeng Math Library)
KML 是基于华为鲲鹏处理器的高性能数学计算加速库,提供了基于鲲鹏平台优化的数学函数,由基础线性代数库( KML_BLAS )、稀疏线性代数库( KML_SPBLAS )、向量运算库( KML_VML )、基础数学库( KML_MATH )、快速傅里叶变换库( KML_FFT )等五个子库组成,可根据业务需求集成使用。
在保证数学运算精度的同时,KML_FFT基于鲲鹏架构,通过向量化、算法改进,对快速离散傅里叶变换进行了深度优化,使得快速傅里叶变换接口函数的性能有大幅度提升。KML_FFT与开源FFTW相比,性能提升约有1倍。
广义上的数学库是指提供高性能标量、矢量计算的数学函数接口库,常见的数学库有英特尔数学内核库(Intel Math Kernel Library,以下简称Intel MKL)及一些开源数学库。鲲鹏数学库(Kunpeng Math Library,以下简称KML)提供了基于鲲鹏平台优化的高性能数学函数。当用户将使用数学库函数的应用程序迁移到鲲鹏计算平台时,由于不同计算平台或不同数学库的函数定义差别,需要对程序重新适配开发。针对该问题,我们提供了鲲鹏数学库迁移指南。
指南中包含将Intel MKL中的一些数学库迁移至KML的步骤(参见Intel MKL迁移到KML ),包括MKL的VML至KML_VML,MKL的BLAS至KML_BLAS等,同时也包含一些常用库迁移至KML的步骤(参见其他常用数学库迁移到KML )。通过迁移,用户可以在鲲鹏计算平台获得比一般开源数学库更优的计算性能。
3.5 鲲鹏BoostKit HMPPS信号库
Hyper Media Performance Primitives,华为自研高性能媒体性能原语库,包括图像处理HMPPI函数库以及信号处理HMPPS函数库两个子库,适配多个操作系统,提供函数API,应用于运动跟踪、雷达信号、图像分析、视频增强、AI加速、医学扫描、通信工程等诸多行业。目前已经完成信号库HMPPS完成1000+个函数接口开发。
设计规划共约有1700个函数,目前完成1000+个函数接口开发包括以下方面:
1. 实现了 内存操作与数据校准的功能,内存操作包含拷贝、初始化等函数;
2. 实现了向量的运算操作,包括算术、转换、统计和窗运算等
3. 提供向量的中值滤波功能
4. 实现固定向量精度功能,包括求向量元素幕次方功能
5. 实现信号的快速傅里叶变换等
3.6 鲲鹏BoostKit HW265视频编码性能数据
HW265 视频编码器是符合 H.265/HEVC 视频编码标准、基于鲲鹏处理器 NEON 指令加速的华为自研 H.265 视频编码器。它是用于编码符合高效率视频编码(HEVC/H.265) 标准的影片的开源自由软件及函数库。
• HW265 8bit 标准版实现相比 X86 开源 X265 有 1 ~ 5 倍的性能优势 。
• HW265 8bit 高清低码版实现平均 50% 的码率节省 。
• 极致压缩 High Quality
3fps, 适用于热门影片 / 短视频等场景
• 通用编码 Balance
25fs, 适用于 OTT 点播场景
• 快速编码 Speed
60fps, 适用于秀场,游戏,在线教育等场景
• HW265 提供视频编码库,可集成到 FFmpeg 开源转码框架中。
• 保持x265_上层接口、功能规格不变的情况,提升视频编码速度,不改变原来各个软件层的框架与逻辑。
• 使用arm v8的Neon矢量汇编指令,对x265的底层算子进行优化,提高整体性能。
优化X265转码核心算子,平均性能提升13%+
• 代码开源,已回馈开源社区
四、鲲鹏BoostKit IO智能预取介绍
4.1 BoostKit IO智能预取方案介绍
智能预取技术,是指利用小容量的高速存储介质作为缓存盘,把预测可能被访问到的IO数据提前放入缓存盘中,下次直接从高速缓存中获取数据,可以显著的改善系统整体的存储IO性能。 鲲鹏 BoostKit分布式存储通过IO智能预取技术,创新性的采用高速缓存盘配合高效的预取算法,提升系统存储IO性能,进而提升存储IO密集型场景的整体性能,使存储性能提升20%。
如智能预取用例视图所示,华为Bcache作为虚拟块设备驱动运行在Linux内核态,预取引擎acache_ client作为独立进程运行在用户态。
华为Bcache托管了缓存盘与后端主存盘,并对.上层应用提供了统-虚拟存储盘作为访问入口。
用户的目标系统安装了华为Bcache与acache client后,需要配置Bcache (缓存盘与后端盘配对)。然后上层应用直接访问的磁盘存储路径,适配为Bcache设备路径即可。
应用本身无需任何代码修改、编译,对智能预取无感知。
方案背景:
分布式存储、大数据等解决方案中的大量场景,访问I0存储器(硬盘、SSD) 的性能(带宽延迟、IOPS),对整体性能影响明显。
智能预取加速方案,创新性的采用小容量的高速缓存盘配合高效的预取算法,提升系统存储1O性能,进而提升上述场景的整体性能。
方案设计:
本方案采用Linux内核虚拟块设备驱动华为Bcache加用户态智能预取引擎的整体架构。驱动层与预取引擎松耦合,应用对智能预取整体框架无感知。
4.2 大数据场景I0智能预取部署与典型收益
部署方式:
大数据场景HDFS访问的底层磁盘设备适配为Bcache设备,缓存盘可选择Ramdisk与NVME SSD两种介质形式。
硬件配置建议:
以每节点原生配置12个SATA HDD盘为例,Ramdisk建议配置12GB (每个HDD配置1GB Ramdisk作为缓存盘),SSD容量建议配置1个1.6TB NVME SSD。
性能收益小结:
智能预取存储库基于Linux原生Bcache进行了增强,通过智能预取算法引擎对用户IO请求信息进行分析及预测,根据预测结果进行存储IO配置的自动优化,并指导Bcache更智能进行数据的预取,从而可以实现:
• 大数据平台各应用场景下存储IO免配置性能最优。
• 上层大数据组件应用无感知。
• 提升数据命中率,增强磁盘读取性能。
• Spark、HBase在存储IO密集型场景的应用性能可提升10%~20%。
智能预取存储库适用于大数据中磁盘IO密集型应用,因使用时需要对数据盘做格式化并绑定缓存盘,因此仅适用于在新建集群时使用。
具体适用的应用场景如下:
• HBase顺序读场景(组网25GE)。
• Spark磁盘IO密集型场景(Spark SQL采用Parquet/ORC格式不适用)。
4.3 分布式存储场景IO智能预取部署与典型收益
部署方式与硬件配置建议:
分布式存储场景均衡型服务器,原有推荐配置已经使用了NVME SSD作为缓存盘的Bcache方案。智能预取存储1O加速库只需部署到目标系统即可,硬件、软件配置均无需做任何修改。
平台典型配置信息:
服务器:TaiShan vs x86
CPU: 2*鲲鹏920 3210
内存: 8 * 16G DDR4
系统盘: 2 * 480G SATA SSD
Cache盘:1 * 3.2TB NVMe SSD
数据盘: 12* 8TB SATA HDD
网络: 2* 25GE, 2* GE
五、鲲鹏BoostKit加速库信息获取
5.1 鲲鹏BoostKit加速库获取方法
1、初识BoostKit
BoostKit整体介绍:
https://www.hikunpeng.com/developer/boostkit
2、了解方案整体能力
BoostKit大数据整体介绍:
https://www.hikunpeng.com/developer/boostkit/big-data
3、进阶知识&成长
BoostKit文档:
https://support.huaweicloud.com/wtsnew-kunpengbds/index.html
BoostKit大数据成长地图:https://support.huaweicloud.com/kunpengbds/kunpengbds.html
4、实践交流平台:
https://bbs.huaweicloud.com/forum/thread-143349-1-1.html
使能开源的同时,鲲鹏BoostKit还持续贡献开源,将众多关键的性能优化成果回馈至开源社区。目前鲲鹏BoostKit已有190+关键Patch包、14项关键特性例被开源社区采纳。 鲲鹏BoostKit向C语言库Glibc 2.31版本提交了重要的优化Patch,使得memcpy, memcmp, memchr, strcpy,strlen等常用函数在鲲鹏和ARM平台上的性能提升超过20%,并让众多以C语言为编程语言的软件受益。 鲲鹏BoostKit向MariaDB 10.6版本,提供锁优化、NUMA Aware、Global Counter等关键优化改进,实现MariaDB数据库在鲲鹏和ARM平台的性能提高超过40%。
5.2 开发者贡献方法
Github链接: https://github.com/kunpengcompute/Kunpeng
如果您有任何疑问或意见,也请您在Github上创建问题。
如果您希望直接联系鲲鹏计算团队,您也可以发送 电子邮件 给 kunpengcompute@huawei.com 。
总结
面向多样性计算时代,华为全面开放鲲鹏全栈能力,分享多样性计算工具套件:鲲鹏应用使能套件Kunpeng BoostKit和鲲鹏开发套件Kunpeng DevKit,加速产业创新,使能极简开发,携手伙伴一起构建鲲鹏计算产业生态。本系列课程主要针对鲲鹏开发者及ISV合作伙伴,帮助您快速了解BoostKit鲲鹏应用使能套件支持下的8大场景的最佳能力和实践、鲲鹏全研发作业流程工具套件Kunpeng DevKit和鲲鹏基础软件开源等相关内容,与全球开发者一起共同点亮多样性计算新时代。
注:本文整理自【内容共创系列】之【鲲鹏应用使能套件】KAE加速引擎让数据加密更安全
查看活动详情:https://bbs.huaweicloud.com/blogs/298594
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
数据加密服务 DEW
鲲鹏
点赞
收藏
关注作者
作者其他文章
评论(0)
登录后可评论,请 登录 或 注册
0/1000
评论
抱歉,系统识别当前为高风险访问,暂不支持该操作
评论
全部回复
上滑加载中
设置昵称
在此一键设置昵称,即可参与社区互动!
*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。
*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。
确认
取消
关于作者
目录
加入云驻计划,成为创作者
华为云周边好礼
免费体验产品
特殊身份标识
线下官方门票
内部专家零距离
与10000+优质创作者共同成长
立即加入
推荐阅读
相关产品
举报
请填写举报理由
垃圾广告
违规内容
恶意灌水
侮辱谩骂
内容侵权
其它
请输入举报理由,不超过200字
请填写举报理由
0/200
确认
取消
新窗
关闭
使用KAE加速引擎
E加速引擎长期支持版本
社区创新版本
不同版本内容存在差异,请选择对应版本文档。法律声明发行说明用户须知账号清单简介系统安装关键特性已知问题已修复问题CVE漏洞源代码参与贡献致谢快速入门安装指南安装在服务器安装准备安装方式介绍安装指导使用kickstart自动化安装FAQ安装在树莓派安装准备安装方式介绍安装指导FAQ更多资源管理员指南查看系统信息基础配置管理用户和用户组使用DNF管理软件包管理服务管理进程管理内存配置网络使用LVM管理硬盘使用KAE加速引擎搭建服务搭建repo服务器搭建FTP服务器搭建web服务器搭建数据库服务器可信计算FAQ安全加固指南操作系统加固概述加固指导账户口令授权认证系统服务文件权限内核参数SELinux配置安全加固工具附录虚拟化用户指南认识虚拟化安装虚拟化组件准备使用环境虚拟机配置管理虚拟机热迁移虚拟机管理系统资源管理设备管理虚拟机可维护性最佳实践工具使用指南附录StratoVirt用户指南StratoVirt介绍安装StratoVirt准备使用环境虚拟机配置虚拟机管理对接iSula安全容器容器用户指南iSula容器引擎安装、升级与卸载安装与配置升级卸载使用指南容器管理支持CNI网络特权容器CRI接口镜像管理容器健康状态检查查询信息安全特性支持OCI hooks本地卷管理附录系统容器安装指导使用指南指定rootfs创建容器通过systemd启动容器容器内reboot/shutdowncgroup路径可配置namespace化内核参数可写共享内存通道动态加载内核模块环境变量持久化最大句柄数限制安全性和隔离性容器资源动态管理附录安全容器安装与配置使用方法管理安全容器的生命周期为安全容器配置资源为安全容器配置网络监控安全容器附录Docker容器安装配置容器管理镜像管理命令行参考容器引擎容器管理镜像管理统计信息容器镜像构建A-Tune用户指南认识A-Tune安装与部署使用方法常见问题与解决方法附录内核热升级指南安装与部署使用方法常见问题与解决方法应用开发指南开发环境准备使用GCC编译使用make编译使用JDK编译构建RPM包FAQsecGear开发指南认识secGear安装secGear开发secGear应用程序使用secGear工具接口参考Kubernetes集群部署指南准备虚拟机部署Kubernetes集群安装Kubernetes软件包准备证书安装etcd部署控制面组件部署Node节点组件运行测试pod第三方软件安装指南OpenStackHA 用户指南部署 HAHA 使用实例桌面环境用户指南UKUI安装 UKUIUKUI 用户指南DDE安装 DDEDDE 用户指南XFCE安装 XfceXfce 用户指南工具集用户指南patch-trackingpkgship中文
EN文档首页目录
22.03 LTS
20.03 LTS SP3
21.09
20.03 LTS SP2
20.03 LTS SP1
20.03 LTS
21.03
20.09
查看源码
中文
中文
English个人中心
退出登录个人中心
退出登录长期支持版本社区创新版本上一篇下一篇文档首页使用KAE加速引擎使用KAE加速引擎简介应用场景安装、升级和卸载安装加速器软件包升级加速器软件包卸载加速器软件包日志查询加速引擎的应用KAE引擎使用示例代码通过OpenSSL配置文件openssl.cnf使用KAE引擎故障处理初始化失败安装完加速器引擎之后,查找不到加速器设备升级加速器驱动失败简介KAE加速引擎为openEuler的一个软件加速库,搭载在Kunpeng 920处理器上联合提供硬件加速引擎功能,包含了对称加密、非对称加密和数字签名,用于加速SSL/TLS应用,可以显著降低处理器消耗,提高处理器效率。此外,用户通过OpenSSL标准接口可实现业务快速迁移。KAE加速引擎支持以下算法:摘要算法SM3, 支持异步模式。对称加密算法SM4,支持异步模式,支持CTR/XTS/CBC模式。对称加密算法AES, 支持异步模式,支持ECB/CTR/XTS/CBC模式。非对称算法RSA,支持异步模式,支持 Key Sizes 1024/2048/3072/4096。密钥协商算法DH, 支持异步模式,支持 Key Sizes 768/1024/1536/2048/3072/4096。应用场景KAE加速引擎主要有以下应用场景,如表1所示。表 1 应用场景场景数据大数据流数据数据加密块数据智能安防视频流数据Web服务握手连接安装、升级和卸载安装加速器软件包安装前准备环境要求TaiShan 200服务器,开启加速引擎功能 说明:需要导入加速器许可证,具体操作请参考《TaiShan 机架服务器 iBMC (V500及以上) 用户指南》中“许可证管理”章节。物理机场景使用加速器需要关闭SMMU,具体操作请参考《TaiShan 200服务器BIOS参数参考》。CPU:Kunpeng 920操作系统:openEuler-21.03-aarch64-dvd.isoKAE加速引擎软件说明表 2 加速引擎的rpm软件包软件包名称软件包说明kae_driver-版本号-1.OS类型.aarch64.rpm加速器驱动,包含内容:uacce.ko、hisi_qm.ko、hisi_sec2.ko、hisi_hpre.ko内核模块支持:SM3/SM4/AES/RSA/DH算法libwd-版本号-1.OS类型.aarch64.rpm包含内容:libwd.so动态链接库提供接口给KAE引擎libkae-版本号-1.OS类型.aarch64.rpm依赖:libwd rpm包包含内容:libkae.so动态库支持:SM3/SM4/AES/RSA/DH等算法安装加速器软件包前提条件已在本地安装远程SSH登录工具。已安装openEuler操作系统。RPM工具能正常使用。已安装OpenSSL 1.1.1a或以上版本。使用如下命令查询OpenSSL的版本号:openssl version安装步骤以root帐号登录openEuler OS命令行界面。新建目录用于存放加速器引擎软件包。使用SSH远程登录工具,将所有加速引擎软件包拷贝到已建好的目录下。在存放加速引擎软件包目录下,使用rpm -ivh命令安装加速器引擎软件包。 说明:由于libkae包的安装依赖libwd包,所以libwd的安装必须先于libkae。rpm -ivh uacce*.rpm hisi*.rpm libwd-*.rpm libkae*.rpm
Verifying... ################################# [100%]
Preparing... ################################# [100%]
checking installed modules
uacce modules start to install
Updating / installing...
1:uacce-1.2.10-4.oe1 ################################# [ 14%]
uacce modules installed
2:libwd-1.2.10-3.oe1 ################################# [ 29%]
3:libkae-1.2.10-3.oe1 ################################# [ 43%]
checking installed modules
hisi_hpre modules start to install
4:hisi_hpre-1.2.10-4.oe1 ################################# [ 57%]
hisi_hpre modules installed
checking installed modules
hisi_rde modules start to install
5:hisi_rde-1.2.10-4.oe1 ################################# [ 71%]
hisi_rde modules installed
checking installed modules
hisi_sec2 modules start to install
6:hisi_sec2-1.2.10-4.oe1 ################################# [ 86%]
hisi_sec2 modules installed
checking installed modules
hisi_zip modules start to install
7:hisi_zip-1.2.10-4.oe1 ################################# [100%]
hisi_zip modules installed
使用rpm -qa命令,查看加速器软件包是否已正常安装到系统内。使用rpm -ql命令 ,查看软件包的文件是否正确。示例如下:rpm -qa|grep -E "hisi|uacce|libwd|libkae"
hisi_rde-1.2.10-4.oe1.aarch64
hisi_sec2-1.2.10-4.oe1.aarch64
libkae-1.2.10-3.oe1.aarch64
hisi_hpre-1.2.10-4.oe1.aarch64
uacce-1.2.10-4.oe1.aarch64
libwd-1.2.10-3.oe1.aarch64
hisi_zip-1.2.10-4.oe1.aarch64
rpm -ql uacce hisi* libwd* libkae
/lib/modules/4.19.90-2003.4.0.0036.oe1.aarch64/extra/hisi_qm.ko
/lib/modules/4.19.90-2003.4.0.0036.oe1.aarch64/extra/uacce.ko
/etc/modprobe.d/hisi_hpre.conf
/lib/modules/4.19.90-2003.4.0.0036.oe1.aarch64/extra/hisi_hpre.ko
/etc/modprobe.d/hisi_rde.conf
/lib/modules/4.19.90-2003.4.0.0036.oe1.aarch64/extra/hisi_rde.ko
/etc/modprobe.d/hisi_sec2.conf
/lib/modules/4.19.90-2003.4.0.0036.oe1.aarch64/extra/hisi_sec2.ko
/etc/modprobe.d/hisi_zip.conf
/lib/modules/4.19.90-2003.4.0.0036.oe1.aarch64/extra/hisi_zip.ko
/usr/include/warpdrive/config.h
/usr/include/warpdrive/include/uacce.h
/usr/include/warpdrive/smm.h
/usr/include/warpdrive/wd.h
/usr/include/warpdrive/wd_bmm.h
/usr/include/warpdrive/wd_cipher.h
/usr/include/warpdrive/wd_comp.h
/usr/include/warpdrive/wd_dh.h
/usr/include/warpdrive/wd_digest.h
/usr/include/warpdrive/wd_rsa.h
/usr/lib64/libwd.so.1.2.10
/usr/local/lib/engines-1.1/libkae.so.1.2.10
重启系统或通过命令行手动依次加载加速器引擎驱动到内核,并查看是否加载成功。# modprobe uacce
# lsmod | grep uacce
# modprobe hisi_qm
# lsmod | grep hisi_qm
# modprobe hisi_qm
# modprobe hisi_sec2 #加载hisi_sec2驱动时将根据/etc/modprobe.d/hisi_sec2.conf 下的配置文件加载到内核
# modprobe hisi_hpre #加载hisi_hpre驱动时将根据/etc/modprobe.d/hisi_hpre.conf 下的配置文件加载到内核
设置环境变量通过以下命令导出环境变量:如果用户指定安装路径,则下面/usr/local应根据实际安装路径进行修改。export OPENSSL_ENGINES=/usr/local/lib/engines-1.1
安装后检查执行rpm -qa命令查看加速器引擎软件包是否安装成功。打印信息中包含“ 软件包名-版本号- ”表示该软件包安装成功。示例如下:rpm -qa|grep -E "hisi|uacce|libwd|libkae"
hisi_rde-1.2.10-4.oe1.aarch64
hisi_sec2-1.2.10-4.oe1.aarch64
libkae-1.2.10-3.oe1.aarch64
hisi_hpre-1.2.10-4.oe1.aarch64
uacce-1.2.10-4.oe1.aarch64
libwd-1.2.10-3.oe1.aarch64
hisi_zip-1.2.10-4.oe1.aarch64
安装后操作OpenSSL加速器引擎测试用户可以通过以下命令测试部分加速器功能。使用OpenSSL的软件算法测试RSA性能。linux-rmw4:/usr/local/bin # ./openssl speed -elapsed rsa2048
...
sign verify sign/s verify/s
rsa 2048 bits 0.001384s 0.000035s 724.1 28365.8.
使用KAE引擎的测试RSA性能。linux-rmw4:/usr/local/bin # ./openssl speed -elapsed -engine kae rsa2048
....
sign verify sign/s verify/s
rsa 2048 bits 0.000355s 0.000022s 2819.0 45478.4
说明:使用KAE引擎加速后签名性能从724.1 sign/s提升到2819sign/s。使用OpenSSL的软件算法测试异步RSA性能。linux-rmw4:/usr/local/bin # ./openssl speed -elapsed -async_jobs 36 rsa2048
....
sign verify sign/s verify/s
rsa 2048 bits 0.001318s 0.000032s 735.7 28555
使用KAE引擎的测试异步RSA性能。linux-rmw4:/usr/local/bin # ./openssl speed -engine kae -elapsed -async_jobs 36 rsa2048
....
sign verify sign/s verify/s
rsa 2048 bits 0.000018s 0.000009s 54384.1 105317.0
说明:使用KAE引擎加速后异步RSA签名性能从735.7 sign/s提升到 54384.1sign/s。使用OpenSSL的软件算法测试SM4 CBC模式性能。linux-rmw4:/usr/local/bin # ./openssl speed -elapsed -evp sm4-cbc
You have chosen to measure elapsed time instead of user CPU time.
....
Doing sm4-cbc for 3s on 10240 size blocks: 2196 sm4-cbc's in 3.00s ....
type 51200 bytes 102400 bytes1048576 bytes2097152 bytes4194304 bytes8388608 bytes
sm4-cbc 82312.53k 85196.80k 85284.18k 85000.85k 85284.18k 85261.26k
使用KAE引擎的测试SM4 CBC模式性能。linux-rmw4:/usr/local/bin # ./openssl speed -elapsed -engine kae -evp sm4-cbc
engine "kae" set.
You have chosen to measure elapsed time instead of user CPU time.
...
Doing sm4-cbc for 3s on 1048576 size blocks: 11409 sm4-cbc's in 3.00s
...
type 51200 bytes 102400 bytes1048576 bytes2097152 bytes4194304 bytes8388608 bytes
sm4-cbc 383317.33k 389427.20k 395313.15k 392954.73k 394264.58k 394264.58k
说明:使用KAE加速后SM4 CBC模式在输入数据块大小为8M时,从82312.53k/s提升到383317.33k/s。使用OpenSSL的软件算法测试SM3模式性能。linux-rmw4:/usr/local/bin # ./openssl speed -elapsed -evp sm3
You have chosen to measure elapsed time instead of user CPU time.
Doing sm3 for 3s on 102400 size blocks: 1536 sm3's in 3.00s
....
type 51200 bytes 102400 bytes1048576 bytes2097152 bytes4194304 bytes8388608 bytes
sm3 50568.53k 52428.80k 52428.80k 52428.80k 52428.80k 52428.80k
使用KAE引擎测试SM3模式性能。linux-rmw4:/usr/local/bin # ./openssl speed -elapsed -engine kae -evp sm3
engine "kae" set.
You have chosen to measure elapsed time instead of user CPU time.
Doing sm3 for 3s on 102400 size blocks: 19540 sm3's in 3.00s
....
type 51200 bytes 102400 bytes 1048576 bytes 2097152 bytes 4194304 bytes 8388608 bytes
sm3 648243.20k 666965.33k 677030.57k 678778.20k 676681.05k 668292.44k
说明:使用KAE加速后SM3算法在输入数据块大小为8M时,从52428.80 k/s提升到668292.44k/s。使用OpenSSL软件算法测试AES算法CBC模式异步性能。linux-rmw4:/usr/local/bin # ./openssl speed -elapsed -evp aes-128-cbc -async_jobs 4
You have chosen to measure elapsed time instead of user CPU time.
Doing aes-128-cbc for 3s on 51200 size blocks: 65773 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 102400 size blocks: 32910 aes-128-cbc's in 3.00s
....
type 51200 bytes 102400 bytes1048576 bytes2097152 bytes4194304 bytes8388608 bytes
aes-128-cbc 1122525.87k 1123328.00k 1120578.22k 1121277.27k 1119879.17k 1115684.86k
使用的KEA引擎测试AES算法CBC模式异步性能。linux-rmw4:/usr/local/bin # ./openssl speed -elapsed -evp aes-128-cbc -async_jobs 4 -engine kae
engine "kae" set.
You have chosen to measure elapsed time instead of user CPU time.
Doing aes-128-cbc for 3s on 51200 size blocks: 219553 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 102400 size blocks: 117093 aes-128-cbc's in 3.00s
....
type 51200 bytes 102400 bytes1048576 bytes2097152 bytes4194304 bytes8388608 bytes
aes-128-cbc 3747037.87k 3996774.40k 1189085.18k 1196774.74k 1196979.11k 1199570.94k
说明:AES仅支持数据长度为256KB及以下场景的异步使用。使用KAE加速后AES算法在输入数据块为100K大小时,从1123328.00k/s提升到3996774.40 k/s 。升级加速器软件包使用场景当需要更新加速器软件版本时可以使用rpm -Uvh方式进行升级。操作步骤从openEuler社区下载最新版本的加速引擎软件包。使用SSH远程登录工具,以root帐号进入Linux操作系统命令行界面。将下载下来的最新版本的软件包都放在某个路径下。在存放软件包的路径下使用rpm -Uvh 命令升级加速器驱动包及引擎库包。示例如下:命令和信息回显如下所示。使用rpm -qa 命令查询是否升级成功。确认查询到的版本是最新的升级后版本。重启系统或通过命令行手动卸载旧版本驱动,然后加载新版本驱动,并查看是否加载成功。卸载旧驱动
# lsmod | grep uacce
uacce 262144 3 hisi_hpre,hisi_sec2,hisi_qm
#
# rmmod hisi_hpre
# rmmod hisi_sec2
# rmmod hisi_qm
# rmmod uacce
# lsmod | grep uacce
#
加载新驱动# modprobe uacce
# modprobe hisi_qm# modprobe hisi_sec2 #加载hisi_sec2驱动时将根据/etc/modprobe.d/hisi_sec2.conf 下的配置文件加载到内核
# modprobe hisi_hpre #加载hisi_hpre驱动时将根据/etc/modprobe.d/hisi_hpre.conf 下的配置文件加载到内核
# lsmod | grep uacce
uacce 36864 3 hisi_sec2,hisi_qm,hisi_hpre
卸载加速器软件包使用场景用户不再使用加速引擎软件,或进行新版本加速引擎软件的安装。操作步骤使用SSH远程登录工具,以root帐号进入Linux操作系统命令行界面。重启系统或通过命令行手动将已加载到内核的驱动卸载掉,并查看是否卸载成功。# lsmod | grep uacce
uacce 36864 3 hisi_sec2,hisi_qm,hisi_hpre
# rmmod hisi_hpre
# rmmod hisi_sec2
# rmmod hisi_qm
# rmmod uacce
# lsmod | grep uacce
#
通过rpm -e 命令卸载加速引擎软件包。示例如下: 说明:由于存在依赖关系,卸载libwd前须先卸载libkae引擎软件包。使用rpm -qa |grep 软件包名命令查询是否卸载成功。日志查询加速器引擎涉及日志信息如表3所示。表 3 日志信息目录文件名文件内容说明/var/log/kae.logOpenSSL引擎日志默认打印等级为error级别,如需要设置日志级别按照如下操作:export KAE_CONF_ENV=/var/log/在/var/log/下创建文件kae.cnf在kae.cnf 文件中设置如下:[LogSection]debug_level=error #取值内容none/error/info/warning/debug说明:正常情况下不建议开启info或debug级别日志,否则会导致加速器性能的下降。/var/log/message/syslog内核日志路径为/var/log/message。说明:或通过dmesg > /var/log/dmesg.log日志收集内核相关日志,包含驱动及内核态日志。加速引擎的应用 说明:如果用户未购买引擎许可证,建议用户不要通过kae引擎调用相应算法,否则可能会影响openssl加密算法的性能。KAE引擎使用示例代码#include
#include
/* OpenSSL headers */
#include
#include
#include
#include
int main(int argc, char **argv)
{
/* Initializing OpenSSL */
SSL_load_error_strings();
ERR_load_BIO_strings();
OpenSSL_add_all_algorithms();
/*You can use ENGINE_by_id Function to get the handle of the Huawei Accelerator Engine*/
ENGINE *e = ENGINE_by_id("kae");
/*使能加速器异步功能,可选配置,设置为“0”表示不使能,设置为“1”表示使能,默认使能异步功能*/
ENGINE_ctrl_cmd_string(e, "KAE_CMD_ENABLE_ASYNC", "1", 0)
ENGINE_init(e);
RSA *rsa = RSA_new_method(e);#指定引擎用于RSA加解密
/*The user code*/
……
;
ENGINE_free(e);
;
}
通过OpenSSL配置文件openssl.cnf使用KAE引擎新建openssl.cnf 需要添加如下配置信息openssl_conf=openssl_def
[openssl_def]
engines=engine_section
[engine_section]
kae=kae_section
[kae_section]
engine_id=kae
dynamic_path=/usr/local/lib/engines-1.1/kae.so
KAE_CMD_ENABLE_ASYNC=1 # 0,表示不使能异步功能,1表示使能异步功能,默认使能
default_algorithms=ALL
init=1
导出OPENSSL_CONF环境变量:export OPENSSL_CONF=/home/app/openssl.cnf #该路径为openssl.cnf存放路径
使用OpenSSL配置文件示例如下:#include
#include
/* OpenSSL headers */
#include
#include
#include
#include
int main(int argc, char **argv)
{
/* Initializing OpenSSL */
SSL_load_error_strings();
ERR_load_BIO_strings();
#Load openssl configure
OPENSSL_init_crypto(OPENSSL_INIT_LOAD_CONFIG, NULL); OpenSSL_add_all_algorithms();
/*You can use ENGINE_by_id Function to get the handle of the Huawei Accelerator Engine*/
ENGINE *e = ENGINE_by_id("kae");
/*The user code*/
……
;
ENGINE_free(e);
;
}
故障处理初始化失败故障现象加速器引擎没有完全加载成功。处理步骤检查加速器驱动是否加载成功,运行lsmod 命令查看uacce.ko、qm.ko 、sgl.ko 、hisi_sec2.ko 、hisi_hpre.ko 、hisi_zip.ko、 hisi_rde.ko是否在位。# lsmod | grep uacce
uacce 262144 2 hisi_hpre,hisi_qm,hisi_sec2,hisi_zip,hisi_rde
检查/usr/lib64(RPM方式安装时目录)或者/usr/local/lib(源码方式安装时目录)和OpenSSL安装目录是否有加速器引擎库,且建立正确的软链接。 [root@localhost home]# ll /usr/local/lib/engines-1.1/ |grep kae
#查询kae是否正确安装并建立软链接,如果有正确安装显示如下内容
# ll /usr/local/lib/engines-1.1/ |grep kae
lrwxrwxrwx. 1 root root 22 Nov 12 02:33 kae.so -> kae.so.1.0.1
lrwxrwxrwx. 1 root root 22 Nov 12 02:33 kae.so.0 -> kae.so.1.0.1
-rwxr-xr-x. 1 root root 112632 May 25 2019 kae.so.1.0.1
[[root@localhost home]#
[root@localhost home]# ll /usr/lib64/ | grep libwd
#查询libwd是否正确安装并建立软链接,如果有正确安装显示如下内容
lrwxrwxrwx. 1 root root 14 Nov 12 02:33 libwd.so -> libwd.so.1.0.1
lrwxrwxrwx. 1 root root 14 Nov 12 02:33 libwd.so.0 -> libwd.so.1.0.1
-rwxr-xr-x. 1 root root 137120 May 25 2019 libwd.so.1.0.1
[root@localhost home]#
检查OpenSSL引擎库的路径是否能通过export命令进行导出。# echo $OPENSSL_ENGINES
# export OPENSSL_ENGINES=/usr/local/lib/engines-1.1
# echo $OPENSSL_ENGINES
/usr/local/lib/engines-1.1
安装完加速器引擎之后,查找不到加速器设备故障现象安装完加速器引擎之后,查找不到加速器设备。解决方法检查虚拟文件系统下是否有相应设备。正常情况下有如下相应的加速器设备。# ls -al /sys/class/uacce/
total 0
lrwxrwxrwx. 1 root root 0 Nov 14 03:45 hisi_hpre-2 -> ../../devices/pci0000:78/0000:78:00.0/0000:79:00.0/uacce/hisi_hpre-2
lrwxrwxrwx. 1 root root 0 Nov 14 03:45 hisi_hpre-3 -> ../../devices/pci0000:b8/0000:b8:00.0/0000:b9:00.0/uacce/hisi_hpre-3
lrwxrwxrwx. 1 root root 0 Nov 17 22:09 hisi_rde-4 -> ../../devices/pci0000:78/0000:78:01.0/uacce/hisi_rde-4
lrwxrwxrwx. 1 root root 0 Nov 17 22:09 hisi_rde-5 -> ../../devices/pci0000:b8/0000:b8:01.0/uacce/hisi_rde-5
lrwxrwxrwx. 1 root root 0 Nov 14 08:39 hisi_sec-0 -> ../../devices/pci0000:74/0000:74:01.0/0000:76:00.0/uacce/hisi_sec-0
lrwxrwxrwx. 1 root root 0 Nov 14 08:39 hisi_sec-1 -> ../../devices/pci0000:b4/0000:b4:01.0/0000:b6:00.0/uacce/hisi_sec-1
lrwxrwxrwx. 1 root root 0 Nov 17 22:09 hisi_zip-6 -> ../../devices/pci0000:74/0000:74:00.0/0000:75:00.0/uacce/hisi_zip-6
lrwxrwxrwx. 1 root root 0 Nov 17 22:09 hisi_zip-7 -> ../../devices/pci0000:b4/0000:b4:00.0/0000:b5:00.0/uacce/hisi_zip-7
若要使用hpre设备但是在1中未查询到,请按初始化失败排查加速器软件是否已正确安装。若2已确认加速器软件正确安装,请排查通过lspci命令查看物理设备是否存在。# lspci | grep HPRE
79:00.0 Network and computing encryption device: Huawei Technologies Co., Ltd. HiSilicon HPRE Engine (rev 21)
b9:00.0 Network and computing encryption device: Huawei Technologies Co., Ltd. HiSilicon HPRE Engine (rev 21)
## lspci | grep SEC
76:00.0 Network and computing encryption device: Huawei Technologies Co., Ltd. HiSilicon SEC Engine (rev 21)
b6:00.0 Network and computing encryption device: Huawei Technologies Co., Ltd. HiSilicon SEC Engine (rev 21)
## lspci | grep RDE
78:01.0 RAID bus controller: Huawei Technologies Co., Ltd. HiSilicon RDE Engine (rev 21)
b8:01.0 RAID bus controller: Huawei Technologies Co., Ltd. HiSilicon RDE Engine (rev 21)
## lspci | grep ZIP
75:00.0 Processing accelerators: Huawei Technologies Co., Ltd. HiSilicon ZIP Engine (rev 21)
b5:00.0 Processing accelerators: Huawei Technologies Co., Ltd. HiSilicon ZIP Engine (rev 21)
#
若3未查询到相应的物理设备,请确认以下,不分先后:确认是否已导入加速器许可证,若未导入,请请参考《TaiShan 机架服务器 iBMC (V500及以上) 用户指南》中“许可证管理”章节,导入加速器许可证。导入加速器许可证之后,需要掉电重启BMC,使能License。确认BMC和BIOS版本是否支持加速器特性。升级加速器驱动失败故障现象升级加速器驱动后,重启系统驱动版本仍为旧版本。可能原因在升级加速器驱动前,系统更新了其他驱动包,这些驱动包可能重新更新了引导文件系统initramfs,将未升级前的加速器驱动一起更新到了initramfs文件系统中。例如系统更新了网卡驱动,或者人为更新了initramfs文件系统,导致系统重启时优先从initramfs文件系统中加载加速器驱动。处理步骤升级加速器驱动版本后,通过执行dracut --force命令重新更新initramfs文件系统。文档捉虫 “有虫”文档片段问题描述提交类型
issue有点复杂...找人问问吧。PR小问题,全程线上修改...一键搞定!问题类型规范和低错类● 错别字或拼写错误;标点符号使用错误;● 链接错误、空单元格、格式错误;● 英文中包含中文字符;● 界面和描述不一致,但不影响操作;● 表述不通顺,但不影响理解;● 版本号不匹配:如软件包名称、界面版本号;易用性● 关键步骤错误或缺失,无法指导用户完成任务;● 缺少必要的前提条件、注意事项等;● 图形、表格、文字等晦涩难懂;● 逻辑不清晰,该分类、分项、分步骤的没有给出;正确性● 技术原理、功能、规格等描述和软件不一致,存在错误;● 原理图、架构图等存在错误;● 命令、命令参数等错误;● 代码片段错误;● 命令无法完成对应功能;● 界面错误,无法指导操作;风险提示● 对重要数据或系统存在风险的操作,缺少安全提示;内容合规● 违反法律法规,涉及政治、领土主权等敏感词;● 内容侵权;我们可能针对您提出的问题,向您发送邮件反馈进行方案。如有获奖信息,也会通过此方式通知您。您对文档的总体满意度非常不满意非常满意
您理解并同意,您填写并提交的内容,即视为您已充分阅读并同意openEuler的隐私声明提交根据您的反馈,会自动生成issue模板。您只需点击按钮,创建issue即可。文档捉虫编组 3备份您对
openEuler文档 的整体满意度如何?00-不满意10-非常满意0/500感谢您的反馈,如需帮助,可论坛发帖求助提交取消
确认icon/roboticon/robot欧拉小智提供自助问答与咨询欧拉论坛发帖互助解决各类问题quickissuequickissueQuickIssue快捷提交/查询社区Issues上一篇下一篇openEuler 是由开放原子开源基金会(OpenAtom Foundation)孵化及运营的开源项目
contact@openeuler.io品牌隐私政策法律声明版权所有 © 2024 openEuler 保留一切权利遵循
木兰宽松许可证第2版(MulanPSL2)openEuler公众号openEuler小助手
Android Kotlin 学习总结(一) 《KAE 优缺点并且深入字节码分析工作原理》_android studio kae-CSDN博客>
Android Kotlin 学习总结(一) 《KAE 优缺点并且深入字节码分析工作原理》_android studio kae-CSDN博客
Android Kotlin 学习总结(一) 《KAE 优缺点并且深入字节码分析工作原理》
最新推荐文章于 2022-11-09 10:03:13 发布
VIP文章
Nixo
最新推荐文章于 2022-11-09 10:03:13 发布
阅读量1.3k
收藏
1
点赞数
2
分类专栏:
Kotlin
字节码分析
文章标签:
Kotlin
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_40033365/article/details/82829556
版权
本章会分为以下内容:
1.Kotlin KAE介绍,使用和原始Android findViewById对比优缺点
2.Kotlin KAE所存在的问题
3.通过字节码分析他的实现原理
阅读本章内容大概需要您5分钟的时间
一、Kotlin KAE介绍,使用和原始Android findViewById对比优缺点
说起Koltin大家可能不陌生,Android的小伙伴,谷歌Android的一级语言,国内虽然还不算太流行,不过也慢慢火了起来,今天就来说一下Kotlin的一个扩展插件 kotlin-android-extensions , 简称KAE ,
官方文档 http://kotlinlang.org/docs/tutorials/android-plugin.html
1.1 KAE的使用
如果你的AndroidStudio版本比较低,那么你需要去在AndroidStudio里面下载Kotlin的支持,这里不讲述了(Google一下~)
我们就说一下版本比较高的AndroidStudio怎么使用KAE , 我们创建一个项目之后,我们需要在Project的Gradle里面添加上我们的 buildscript里添加上support_version字段 然后再我们的模块Gradle中plugin我们的AKE 具体见下图
这时候我们的KAE就算安装完毕了
关于使用:
在我们原来View绑定XML控件的时候,我们通常会做findViewById(R.id.xx)的工作,这是很头疼的事情,界面简单还好说,如果界面复杂,你会遇到下面这种事情
最低0.47元/天 解锁文章
优惠劵
Nixo
关注
关注
2
点赞
踩
1
收藏
觉得还不错?
一键收藏
知道了
0
评论
Android Kotlin 学习总结(一) 《KAE 优缺点并且深入字节码分析工作原理》
本章会分为以下内容:1.Kotlin KAE介绍,使用和原始Android findViewById对比优缺点2.Kotlin KAE所存在的问题3.通过字节码分析他的实现原理阅读本章内容大概需要您5分钟的时间 一、Kotlin KAE介绍,使用和原始Android findViewById对比优缺点说起Koltin大家可能不陌生,Android的小伙伴,谷歌Andro...
复制链接
扫一扫
专栏目录
KAE 将被正式移除,如何无缝迁移?
Eqiqi的博客
11-23
572
KAE 插件早在 2020 年就已经被宣布废弃了,并且将在 Kotlin 1.8 中被正式移除.
如上图示,移除 KAE 的代码已经被 Merge 了,因此如果我们需要升级到 Kotlin 1.8,则必须要移除 KAE
那么移除 KAE 后,我们该如何迁移呢?
编译优化跌落神坛
最新发布
Android技术之家
06-15
171
最近在一次技术分享中,有网友问我小公司可以考虑做哪些编译优化?我觉得这个课题也还是挺有必要展开下讲讲的。作者:究极逮虾户
链接:https://juejin.cn/post/7243599582944067639编译优化方面其实我个人觉得并不一定是特别高大上的东西,除了一些特别深水区的地方,还是有些东西还是能从细微处进行展开的。今天我们就尝试下拉他下水。组件化 组件化和编译优化有啥关系? 有些人甚...
参与评论
您还未登录,请先
登录
后发表或查看评论
对比Java,Kotlin的优点和缺点
蓝不蓝编程
05-04
8017
简要介绍
Kotlin近来发展迅速,使得许多Java开发者转向了Kotlin,那两种语言到底对比如何呢?
下面Kotlin的优点,大部分已经在《为什么Kotlin比Java能大量减少代码》介绍了,但是为了本文的完整性,再次完整展示.
Kotlin优点
1. 简化空对象的处理(防止空指针)
val userName = a?.b?.c?.d ?: ""
详细文档,可参考:《利用Kotlin优雅的解...
在 Fragment 当中使用 Kotlin-Android-Extensions 需要注意的
Kotlin中文社区
01-15
1235
自从有了 kotlin-android-extensions,小伙伴们的感觉就是一个字,爽!再也不用什么 findViewById 了,也不用什么反射和注解注入了,吾有奇...
处理被废弃的ButterKnife和kotlin-android-extensions有妙招
郭霖
02-05
1081
/ 今日快讯 /各位小伙伴们大家早上好,辛苦了一整年,终于要迎来春节假期了。考虑到从下周开始肯定会有大量朋友陆续请假回家,因此我的公众号也就从今天开始停更,该休息的时候就好好休息,...
技术周刊(第10期):新技术又来了?
chuyouyinghe的专栏
11-09
128
我们在android超级优化-线程监控与线程统一可以知道,我们能够通过asm插桩的方式,进行了线程的监控与线程的统一,但是这个只局限在java层线程的控制,如果我们项目中存在着native库,或者存在着很多其他so库,那么native层的线程我们如何监控呢?从上面4点来看,每一种触发的时机都是在规定的时间内,看你消不消费得完自身的事件,而本文所探讨的问题就是,这些时间是由谁来制定,并且Anr的核心点在哪里。我们要实现的目标很简单,就是给所有添加了@DebugLog注解的方法,在方法执行前后打印一行日志。
Kotlin Android Extensions遭废弃,官方推荐使用ViewBinding
移动端开发干货分享
11-22
4476
https://youtrack.jetbrains.com/issue/KT-42121
As the @Parcelize functionality is extracted (KT-42120), the rest of the Android Extensions functionality can be deprecated in favour of View Binding.
The existing Android Extensions plugin will continue to w..
分析一次kotlin-android-extensions引起的空指针问题
重学Android,保持学习
11-09
2780
背景
最近开发遇到一个问题,下面图片的recycleview在滚动的时候需要动态的去滚动上面的分类recycleview,如下图,结果是代码里虽然写了在底部rv滚动的时候已计算出对应的分类rv_tab的position,并调用了rv_tab?.smoothScrollToPosition(parentPosition),为何没有生效?
代码逻辑也很清晰:
//初始化滤镜浮层下面的分类
filterList.apply {
layoutManager
kotlin优缺点_Kotlin在Android应用程序开发中的优缺点
weixin_26727575的博客
09-22
1514
kotlin优缺点During Google I/O 2017, Google announced Kotlin as an official programming language for building Android apps. 在Google I / O 2017期间 ,Google宣布Kotlin是用于构建Android应用的官方编程语言。
Though the announcem...
KAE note
scarecrow_byr的专栏
08-14
292
KAE note
-v0.1 Sherlock 2020.7.11 init
KAE是华为KunPeng服务器上加速器模块对应的openssl engine实现。本文是KAE的学习笔记,
梳理KAE实现Openssl engine的基本逻辑。本文基于的KAE代码在这个位置:
https://github.com/kunpengcompute/KAE
注册为openssl engine的位置在: engine_kae.c
IMPLEMENT_DYNAMIC_BIND_FN(bind_kae)
常用特殊字符
Polumgla的博客
10-12
1万+
"\u0000","\u0001","\u0002","\u0003","\u0004","\u0005","\u0006","\u0007","\u0008",
"\u000B","\u000C",
"\u000E","\u000F","\u0010","\u0011","\u0012","\u0013","\u0014","\u0015","\u0016",
"\u0017","\u0018","\u0019","\u001A","\u001B","\u001C","\...
java u0002_java为什么匿名内部类的参数引用时final?
weixin_39574287的博客
02-17
367
对于该问题的已经有了相当详细的答案了。我来补充一下一些外延的知识吧,Java似乎有一种重jvm发展轻Javac的倾向了。但是如果他们愿意的话,利用一下Javac来生成一些bridge method或者bridge object来实现capture by reference也不是什么难事,例如kotlin的实现方式class TestClass {fun func(): PairUnit, ()-&...
Kotlin优势与缺点?
08-20
1997
Kotlin语言被赞誉为Android世界里的Swift.
完全兼容Java
Null safe
支持lambda表达式(比Java8更好)
支持扩展
使用Kotlin开发,对于安卓开发来说,主要有下面几个有利的影响:
更少的空指针异常
更少的代码量
更快的开发速度
函数扩展 fun Any.showToast(var:String):Unit{}
数据类 data c...
Kotlin 入坑半年总结
挖坑小队长
11-29
630
转自:https://www.v2ex.com/t/373852
半年前我在一个两年历史的后端 Java 项目中,尝试着引入了 Kotlin,半年过去,证明了当时的尝试是值得的。分享一下我的感受。
优点
无缝引入到现有 Java 项目,只看了半天文档就上手了,并且没有因为两种语言混合开发带来副作用。表达能力优于 Java,平均下来,在不影响可读性的情况下,大概可以比 Java 少
Kotlin语法(十六)-代理(Delegation)
tangxl2008008的专栏
11-05
4367
参考原文:http://kotlinlang.org/docs/reference/delegation.html
类代理(Class Delegation)
代理模式提供一种实现继承的替代方式,Kotlin原生就支持代理模块。
如下,“Derived”继承“Base”接口,并代理了它的全部公共方法:
interface Base {
Kotlin 反射与 MetaData 的关系在混淆后浮出水面!
Kotlin中文社区
03-05
2156
概要本文主要为大家介绍 Kotlin 反射的一些原理,并提示大家如果需要在使用 Kotlin 反射的工程中进行混淆,千万注意,对所有反射涉及的类和接口的父类都需要 Kee...
自定义Gradle插件 字节码插桩 附带Demo
薛瑄的博客
07-17
6969
参考:
Android字节码插桩采坑笔记
通过自定义 Gradle 插件修改编译后的 class 文件
ASM官方文档
studio导入kotlin项目,如何在Android Studio项目中添加Kotlin类?
weixin_42136826的博客
12-19
298
I have been working with Android Studio for a while. Recently I have heard about kotlin programming language and I wanted to try to include a class in kotlin language to my project.There is the proble...
kotlin写app的优缺点
热门推荐
云梦九章~
09-05
2万+
1.省代码,省代码,省代码,同比代码减少三分之一以上,代码结构很清晰,尤其在kotlin+kotlin扩展插件的使用
2.省去了很多空判断,异常的判断
3.可能报错类似mvvm那样新奇,但是仔细看看也没啥的
4.语法糖比较少,但是目前足够用
5.kotlin和java混编比较好,kotlin写界面业务,java实现其他业务,界面容易改动,其他业务一般都是现有技术的封装
6.不知道goog...
android kotlin 学习资料
02-07
下面是一些关于学习 Android 开发 (使用 Kotlin 语言) 的资源: - Kotlin 官网 (https://kotlinlang.org/) 提供了学习 Kotlin 的基础知识和示例代码。 - Android 官网 (https://developer.android.com/) 提供了关于...
“相关推荐”对你有帮助么?
非常没帮助
没帮助
一般
有帮助
非常有帮助
提交
Nixo
CSDN认证博客专家
CSDN认证企业博客
码龄7年
暂无认证
30
原创
25万+
周排名
216万+
总排名
7万+
访问
等级
897
积分
12
粉丝
45
获赞
24
评论
95
收藏
私信
关注
分类专栏
剑指offer
9篇
Java
14篇
递归
3篇
栈
1篇
队列
1篇
数组
2篇
动态规划
1篇
Handler
1篇
Android多线程异步
1篇
Android
8篇
线程池
1篇
RecyclerView
1篇
自定义View
2篇
View
2篇
排序
1篇
BroadCast
1篇
笔试题
1篇
随记
4篇
Android中级开发之旅
Kotlin
2篇
DataBinding
1篇
动画
1篇
大三规划
1篇
实习总结
2篇
字节码分析
1篇
最新评论
Java线程池的四种实现方法及实现原理及分析。
熊猫duang:
定期线程池,
Java线程池的四种实现方法及实现原理及分析。
熊猫duang:
引用「ThreadPoolExecutor」
缓存的线程池ScheduledThreadPoolExecutor() ;
public ScheduledFuture> scheduleAtFixedRate(Runnable command,//任务
long initialDelay,//启动线程初始化推迟的执行时间
long period,//运行起来的间隔执行时间
TimeUnit unit);//初始延迟和周期参数的时间单位
[随记] 注释//TODO的作用
Ming-in:
我擦,我又来了
Java线程池的四种实现方法及实现原理及分析。
qq_41504097:
估计和Random差不多意思 目的应该就是为了区别线程
[随记] 注释//TODO的作用
Ming-in:
666
最新文章
[踩坑记录]一行代码搞定RecyclerView 中CheckBox 重新绘制导致的数据混乱
Android drawable resource file,圆角,渐变,自定义Switch,从未如此简单!
Android实习第一周总结,浅谈工作与学校的区别,以及工作心得,学习到的东西。
2018年30篇
目录
目录
分类专栏
剑指offer
9篇
Java
14篇
递归
3篇
栈
1篇
队列
1篇
数组
2篇
动态规划
1篇
Handler
1篇
Android多线程异步
1篇
Android
8篇
线程池
1篇
RecyclerView
1篇
自定义View
2篇
View
2篇
排序
1篇
BroadCast
1篇
笔试题
1篇
随记
4篇
Android中级开发之旅
Kotlin
2篇
DataBinding
1篇
动画
1篇
大三规划
1篇
实习总结
2篇
字节码分析
1篇
目录
评论
被折叠的 条评论
为什么被折叠?
到【灌水乐园】发言
查看更多评论
添加红包
祝福语
请填写红包祝福语或标题
红包数量
个
红包个数最小为10个
红包总金额
元
红包金额最低5元
余额支付
当前余额3.43元
前往充值 >
需支付:10.00元
取消
确定
下一步
知道了
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝
规则
hope_wisdom 发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额
0
抵扣说明:
1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。
余额充值
宝兰德联合华为鲲鹏将KAE硬件加速能力应用到BES中-电子发烧友网
宝兰德联合华为鲲鹏将KAE硬件加速能力应用到BES中-电子发烧友网
首页
技术
可编程逻辑
MEMS/传感技术
嵌入式技术
模拟技术
控制/MCU
处理器/DSP
存储技术
EMC/EMI设计
电源/新能源
测量仪表
制造/封装
RF/无线
接口/总线/驱动
EDA/IC设计
光电显示
连接器
PCB设计
LEDs
汽车电子
医疗电子
人工智能
可穿戴设备
军用/航空电子
工业控制
触控感测
智能电网
音视频及家电
通信网络
机器人
vr|ar|虚拟现实
安全设备/系统
移动通信
便携设备
物联网
区块链
HarmonyOS
RISC-V MCU
光伏
ChatGPT
IGBT
充电桩
氮化镓
BLDC
逆变器
5G
电机控制
资源
技术文库
新品速递
电路图
元器件知识
电子百科
最新技术文章
下载
在线工具
常用软件
电子书
datasheet
专栏
电子说
专栏
社区
论坛
问答
小组
技术专栏
社区之星
试用中心
HarmonyOS技术社区
2023电子工程师大会
研究院
活动
设计大赛
硬创大赛
社区活动
线下会议
在线研讨会
小测验
学院
直播
课程
视频
企业号
华秋智造
华秋PCB
高可靠多层板制造商
华秋SMT
高可靠一站式PCBA智造商
华秋商城
自营现货电子元器件商城
PCB Layout
高多层、高密度产品设计
钢网制造
专注高品质钢网制造
BOM配单
专业的一站式采购解决方案
华秋DFM
一键分析设计隐患
华秋认证
认证检测无可置疑
工具
PCB在线检查
datasheet查询
选型替代查询
免费样品申请
免费评测试用
工程师专区
技术子站
搜索
搜索历史
清空
搜索热词
0
聊天消息
系统消息
评论与回复
查看更多
查看更多
查看更多
登录
0
关注
0
粉丝
0
动态
个人中心
内容管理
积分兑换
当前积分:
修改资料
退出登录
登录后你可以
下载海量资料
学习在线课程
观看技术视频
写文章/发帖/加入社区
登录
创作中心
发布
发文章
发资料
发帖
提问
发视频
创作活动
推荐
分类
资料
软件
工具
排行榜
DataSheet
搜索
完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>
3天内不再提示
宝兰德联合华为鲲鹏将KAE硬件加速能力应用到BES中
7riU_gh_3a181fa
•
来源:华为智能计算
• 作者:华为智能计算
• 2021-04-19 11:27
•
次阅读
扫一扫,分享给好友
复制链接分享
北京宝兰德软件股份有限公司(下文简称“宝兰德”)联合华为鲲鹏创新中心旗舰店,率先成功将基于鲲鹏BoostKit的Kunpeng Accelerator Engine(下文简称KAE)硬件加速能力应用到业务中间件(BES Application Server(下文简称BES)中,在典型的Web访问场景下,HTTPS访问性能相对于普通OpenSSL库和JDK自带的SSL方案,TPS性能提升最高分别可达38%和283%
HTTPS短连接访问性能对比
随着各行业数字化转型加速,业务范围的不断拓展,各行业数据中心业务系统需要全面支持安全HTTPS传输,作为业务系统部署运行实体的中间件产品的性能显得日趋重要。BES应用服务器软件是宝兰德推出的企业级JavaEE规范兼容中间件,已在电信、金融、政府、能源众多行业获得大规模部署使用。比如,在中国移动目前多省核心业务支撑系统大规模部署使用BES均启用HTTPS加强业务访问的安全性。
本次应用的KAE加速引擎是鲲鹏应用使能套件BoostKit的基础加速能力,包含加解密、压缩/解压缩等模块。
1
鲲鹏KAE支持RSA/SM3/SM4/DH/MD5等加解密算法,可以提供高性能对称加解密、非对称加解密算法能力,通过以外部引擎的方式嵌入到openssl软件中提供给上层应用使用硬件加解密的能力。Web应用场景中使用KAE硬加速Ngnix,相比主流加速卡性能提升35%。当然在其他使用openssl的业务场景也都可以考虑使用KAE引擎来加速加解密算法。
鲲鹏KAE支持zlib/gzip算法,通过插件的方式在zlib1.2.11上提供压缩和解压缩硬算能力。在分布式存储应用场景中存在大量压缩和加压缩的场景,通过使能KAE硬压缩能力之后相对软件在经典的混合读写(7:3)场景下带宽性能提升最高40%。
传统的软件实现中性能比较低,如果使用硬件加速卡则需要占用服务器的外部硬件插口资源且成本也相对高,而BoostKit方案硬件能力已经包含在鲲鹏CPU中不需要额外占用服务器的外部硬件资源就可以达到性能的提升。
未来,作为一家专注于基础架构软件产品和解决方案供应商,宝兰德将和华为进一步开展openEuler操作系统和openGauss数据库等基础软件的应用实践,并通过鲲鹏BoostKit面向客户开展场景化应用性能加速,为客户提供基于鲲鹏的高性能安全数字化解决方案。
拥抱鲲鹏计算产业,共创行业新价值!
READING 鲲鹏应用使能套件Kunpeng BoostKit
基于鲲鹏全栈优化能力,为开发者提供高性能组件、基础加速软件包、应用加速软件包、参考实现等加速能力,面向八大主流应用场景,包括大数据、分布式存储、数据库、虚拟化、 ARM原生、Web/CDN、NFV和HPC八大主流应用场景,释放鲲鹏的倍级性能优势。
原文标题:Hi 鲲鹏 | 宝兰德基于鲲鹏BoostKit提升HTTPS网站使用体验
文章出处:【微信公众号:华为智能计算】欢迎添加关注!文章转载请注明出处。
责任编辑:haq
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
华为
华为
+关注
关注
215
文章
33248
浏览量
246466
鲲鹏
鲲鹏
+关注
关注
1
文章
118
浏览量
8773
原文标题:Hi 鲲鹏 | 宝兰德基于鲲鹏BoostKit提升HTTPS网站使用体验
文章出处:【微信号:gh_3a181fa836b6,微信公众号:华为计算】欢迎添加关注!文章转载请注明出处。
收藏
人收藏
扫一扫,分享给好友
复制链接分享
评论
发布评论请先 登录
相关推荐
【国产FPGA+OMAPL138开发板体验】(原创)7.硬件加速Sora文生视频源代码
算法,如循环神经网络(RNN)或Transformer,用于文本处理,以及卷积神经网络(CNN)或生成对抗网络(GAN)用于视频生成。通常涉及对模型中的计算密集型部分进行硬件加速。文本到视频生成模型
发表于 02-22 09:49
音视频解码器硬件加速:实现更流畅的播放效果
随着多媒体内容的日益丰富和高清化,传统的软件解码已经难以满足人们对流畅播放体验的需求。因此,音视频解码器硬件加速技术的出现,为提升播放效果带来了革命性的改变。 硬件加速的原理 硬件加速的核心
发表于 02-21 14:40
•137次阅读
在Sigma 300里面使用硬件加速器slew,slew mode为RC type时不同的time constant的值有什么用?
请问下在Sigma 300里面使用硬件加速器slew,slew mode为RC type时,对应的time constant 与数据从当前值到目标值得时间有什么关系,或者说不同的time constant的值有什么用?
谢谢,
中 J Jj
发表于 11-29 07:25
嵌入式多媒体系统中硬件加速技术的应用
电子发烧友网站提供《嵌入式多媒体系统中硬件加速技术的应用.pdf》资料免费下载
发表于 10-26 09:33
•0次下载
【KV260视觉入门套件试用体验】 硬件加速之—使用PL加速FFT运算(Vivado)
三、硬件加速之—使用PL加速FFT运算(Vivado)
前四期测评计划:
一、开箱报告,KV260通过网线共享PC网络
二、Zynq超强辅助-PYNQ配置,并使用XVC(Xilinx Virtual
发表于 10-02 22:03
Alveo卡的区块链硬件加速器解决方案
电子发烧友网站提供《Alveo卡的区块链硬件加速器解决方案.pdf》资料免费下载
发表于 09-15 14:42
•0次下载
Kria KR260机器人入门套件:通过硬件加速释放机器人
电子发烧友网站提供《Kria KR260机器人入门套件:通过硬件加速释放机器人.pdf》资料免费下载
发表于 09-14 10:16
•0次下载
硬件加速自然语言理解解决方案
电子发烧友网站提供《硬件加速自然语言理解解决方案.pdf》资料免费下载
发表于 09-13 10:45
•0次下载
Hyperon—大数据应用的硬件加速解决方案
电子发烧友网站提供《Hyperon—大数据应用的硬件加速解决方案.pdf》资料免费下载
发表于 09-13 10:12
•0次下载
如何将人工智能应用到效能评估系统软件中去解决
如何将人工智能应用到效能评估系统软件中去解决
华盛恒辉效能评估系统是一种非常实用的管理工具,它可以帮助组织和企业掌握其运营状况,优化业务流程,提高效率和生产力。然而,随着人工智能的迅猛发展
发表于 08-30 12:58
宝兰德应用服务器软件与华为云 GaussDB 完成兼容互认证
近日,北京宝兰德软件股份有限公司(简称:宝兰德)携手华为云完成宝兰德应用服务器软件 9.5(BES Application Server 9
发表于 06-27 23:06
•313次阅读
硬件加速人体姿态估计开源分享
电子发烧友网站提供《硬件加速人体姿态估计开源分享.zip》资料免费下载
发表于 06-25 10:27
•0次下载
宝兰德应用服务器软件与华为云 GaussDB 完成兼容互认证
作者:YG科技 宝兰德应用服务器软件与华为云 GaussDB 完成兼容互认证 近日,北京宝兰德软件股份有限公司(简称:宝兰德)携手华为云完成
发表于 06-05 10:30
•530次阅读
华为:鲲鹏已拥有4500家合作伙伴,吸引超过200万名开发者加入
鲲鹏昇腾开发者峰会2023在东莞松山湖开幕,华为ICT产品组合管理与解决方案部总裁马海旭在会上表示,鲲鹏已拥有4500家合作伙伴,吸引了超过200万名开发者加入,同时已有13500多个解决方案通过
发表于 05-06 15:31
如何使用RSA硬件加速能多快生成2048bit的密钥?
面,可能会导致误判。尝试改正后,生成的密钥是正常的,但速度比OpenSSL纯软件慢。正常使用RSA硬件加速能多快生成2048bit的密钥?这个补丁有优化版吗?
发表于 05-06 08:05
精选推荐
更多
文章 资料 帖子
从智慧PC到千行百业:在华为擎云 G540中找到新质生产力
脑极体
31分钟前
45 阅读
帝奥微推出业界领先的电源及信号链产品系列
江苏帝奥微电子股份有限公司
1小时前
78 阅读
晶振在SSD中的重要性,一篇文章让你秒懂!
扬兴科技
3小时前
48 阅读
电力晶体管的产品特点 电力晶体管的驱动保护
冬至配饺子
2小时前
147 阅读
如何判断二极管的极性以及它的好坏
星星科技指导员
2小时前
148 阅读
功耗测试的5大高级功能,你都用了吗?
Hx
1031KB
1积分
0下载
openharmony第三方组件适配移植的旋转动画视图
姚小熊27
6.77 MB
免费
2下载
NanaZip Windows文件归档工具
h1654155273.0656
8.68 MB
免费
1下载
cppweb web服务器
djfldsthtr
32.96 MB
免费
0下载
Hanabi UICollectionViewLayout的子类
邓长生
78.67 MB
免费
2下载
【LicheeRV-Nano开发套件试用体验】LicheeRV-Nano上的IAI技术应用
ALSET
19小时前
24 阅读
电蚊拍的变压器参数怎么设置,电路有什么问题
CHIXIANMENI
19小时前
313 阅读
使用高压电阻器进行设计的 10 个技巧
海飞乐技术
19小时前
265 阅读
【LicheeRV-Nano开发套件试用体验】+智能平板开发
1653149838.791300
1天前
187 阅读
国产嵌入式DSP教学实验箱_操作教程:22-AD采集DA输出实验(采集输出正弦波)
创龙教仪
1天前
313 阅读
推荐专栏
更多
华秋(原“华强聚丰”):
电子发烧友
华秋开发
华秋电路(原"华强PCB")
华秋商城(原"华强芯城")
华秋智造
My ElecFans
APP
网站地图
设计技术
可编程逻辑
电源/新能源
MEMS/传感技术
测量仪表
嵌入式技术
制造/封装
模拟技术
RF/无线
接口/总线/驱动
处理器/DSP
EDA/IC设计
存储技术
光电显示
EMC/EMI设计
连接器
行业应用
LEDs
汽车电子
音视频及家电
通信网络
医疗电子
人工智能
虚拟现实
可穿戴设备
机器人
安全设备/系统
军用/航空电子
移动通信
工业控制
便携设备
触控感测
物联网
智能电网
区块链
新科技
特色内容
专栏推荐
学院
设计资源
设计技术
电子百科
电子视频
元器件知识
工具箱
VIP会员
最新技术文章
社区
小组
论坛
问答
评测试用
企业服务
产品
资料
文章
方案
企业
供应链服务
硬件开发
华秋电路
华秋商城
华秋智造
nextPCB
BOM配单
媒体服务
网站广告
在线研讨会
活动策划
新闻发布
新品发布
小测验
设计大赛
华秋
关于我们
投资关系
新闻动态
加入我们
联系我们
举报投诉
社交网络
微博
移动端
发烧友APP
硬声APP
WAP
联系我们
广告合作
王婉珠:wangwanzhu@elecfans.com
内容合作
黄晶晶:huangjingjing@elecfans.com
内容合作(海外)
张迎辉:mikezhang@elecfans.com
供应链服务 PCB/IC/PCBA
江良华:lanhu@huaqiu.com
投资合作
曾海银:zenghaiyin@huaqiu.com
社区合作
刘勇:liuyong@huaqiu.com
关注我们的微信
下载发烧友APP
电子发烧友观察
电子工程师社区
1-32层PCB打样·中小批量
元器件现货·全球代购·SmartBOM
SMT贴片·PCBA加工
PCB&PCBA Manufacturing
华秋简介
企业动态
联系我们
企业文化
企业宣传片
加入我们
版权所有 © 深圳华秋电子有限公司
电子发烧友
(电路图)
粤公网安备 44030402000349 号
电信与信息服务业务经营许可证:合字B2-20210191
工商网监
湘ICP备 2023018690 号
Kunpeng/KAE
Kunpeng/KAE
登录
注册
开源
企业版
高校版
搜索
帮助中心
使用条款
关于我们
开源
企业版
高校版
私有云
Gitee AI
NEW
我知道了
查看详情
登录
注册
代码拉取完成,页面将自动刷新
捐赠
捐赠前请先登录
取消
前往登录
扫描微信二维码支付
取消
支付完成
支付提示
将跳转至支付宝完成支付
确定
取消
Watch
不关注
关注所有动态
仅关注版本发行动态
关注但不提醒动态
10
Star
7
Fork
18
Kunpeng / KAE
代码
Issues
4
Pull Requests
2
Wiki
统计
流水线
服务
Gitee Pages
JavaDoc
PHPDoc
质量分析
Jenkins for Gitee
腾讯云托管
腾讯云 Serverless
悬镜安全
阿里云 SAE
Codeblitz
我知道了,不再自动展开
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
已有帐号?
立即登录
返回
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
项目仓库所选许可证以仓库主分支所使用许可证为准
master
管理
管理
分支 (6)
标签 (11)
master
kae2
kae1
kae2_dev_nosva-sm2
kae1_dev_for_sp4
kae1_zip_process-level-init
v2.0.1
v1.3.12
v2.0.0
v1.3.11
v1.3.10
v1.3.9
v1.3.8
1.3.6
v1.3.6-bata
v1.3.6
v1.2.10
克隆/下载
克隆/下载
HTTPS
SSH
SVN
SVN+SSH
下载ZIP
登录提示
该操作需登录 Gitee 帐号,请先登录后再操作。
立即登录
没有帐号,去注册
提示
下载代码请复制以下命令到终端执行
为确保你提交的代码身份被 Gitee 正确识别,请执行以下命令完成配置
git config --global user.name userName
git config --global user.email userEmail
初次使用 SSH 协议进行代码克隆、推送等操作时,需按下述提示完成 SSH 配置
1
生成 RSA 密钥
2
获取 RSA 公钥内容,并配置到 SSH公钥 中
在 Gitee 上使用 SVN,请访问 使用指南
使用 HTTPS 协议时,命令行会出现如下账号密码验证步骤。基于安全考虑,Gitee 建议 配置并使用私人令牌 替代登录密码进行克隆、推送等操作
Username for 'https://gitee.com': userName
Password for 'https://userName@gitee.com':
#
私人令牌
新建文件
新建子模块
上传文件
分支 6
标签 11
贡献代码
同步代码
创建 Pull Request
了解更多
对比差异
通过 Pull Request 同步
同步更新到分支
通过 Pull Request 同步
将会在向当前分支创建一个 Pull Request,合入后将完成同步
lauyarn
Modify readme document
6679760
190 次提交
提交
取消
提示:
由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
KAEKernelDriver
保存
取消
KAEOpensslEngine
保存
取消
KAEZlib
保存
取消
KAEZstd
保存
取消
scripts
保存
取消
uadk
保存
取消
.gitignore
保存
取消
README.md
保存
取消
build.sh
保存
取消
Loading...
README
当前KAE组件将原驱动仓、加密仓、压缩仓归一,统一编排在KAE仓(原来加密仓);并且针对不同的内核版本,将代码分为了kae1分支(4.19内核)和kae2分支(5.10内核)。
1.3.11及历史版本代码和发行包可在原驱动仓、加密仓、压缩仓下载。
原驱动仓KAEdriver
原加密仓KAE
原压缩仓KAEzip
现KAE仓
一、背景及规格
1.1、背景说明
鲲鹏加速引擎是基于鲲鹏处理器提供的硬件加速解决方案,包含了 KAE 加解密和 KAE 解压缩两个模块,分别用于加速 SSL/TLS 应用和数据压缩,可以显著降低处理器消耗,提高处理器效率。此外,加速引擎对应用层屏蔽了其内部实现细节,用户通过 OpenSSL、zlib标准接口即可以实现快速迁移现有业务。
本文介绍了 KAE 的安装流程。
1.2、版本说明
鲲鹏加速引擎(KAE)是一款基于鲲鹏 920 处理器研发的加速器。由于不同内核版本的差异,KAE 存在两套代码用于支持不同的内核代码,分别是 KAE1.0 和 KAE2.0 两套代码分支。其中,KAE1.0 适用于 4.19 内核;而 KAE2.0 适用于 5.1x 内核。
内核版本
设备形态
KAE1.0
KAE2.0
4.19
920
YES
NA
5.1x
920
NA
YES
1.3、KAE算法规格说明
由于硬件差异,KAE不同版本加速引擎能够支持的加密算法存在不同,支持情况详见以下表格:
鲲鹏 920
摘要算法 SM3
YES
摘要算法 DM5
YES
对称加密算法 SM4-CTR
YES
对称加密算法 SM4-XTS
YES
对称加密算法 SM4-CBC
YES
对称加密算法 SM4-ECB
YES
对称加密算法 SM4-OFB
YES
对称加密算法 SM4-CFB
NA
对称加密算法 AES-ECB
YES
对称加密算法 AES-CTR
YES
对称加密算法 AES-XTS
YES
对称加密算法 AES-CBC
YES
对称加密算法 AES-OFB
NA
对称加密算法 AES-CFB
NA
对称加密算法 AES-GCM
NA
对称加密算法 AES-CCM
NA
非对称算法 RSA
YES
非对称算法 SM2
NA
密钥协商算法 DH
YES
注意:
1、对称加密算法 SM4-XTS 不支持 openSSL,只支持内核态使用。
KAE-zlib 解压缩功能支持情况见下表:
支持 zlib/Gzip 数据格式
支持 deflate 算法
可配置压缩等级
鲲鹏920
YES
NA
NA
二、安装前准备
根据芯片款型及内核版本选择适合的KAE代码进行安装,安装前需要确定环境信息及安装license。
2.1 环境信息确认
以 TaiShan 200 服务器为例,开启 KAE 加速引擎功能
CPU:鲲鹏 920 处理器
iBMC 版本:V365 及以上
BIOS 版本:V105 及以上
KAE1.0 支持操作系统:
CentOS 7.6 4.14.0-115.el7a.0.1.aarch64 version
SUSE 15.1 4.12.14-195-default.aarch64 version
EulerOS 2.8 4.19.36-vhulk1907.1.0.h410.eulerosv2r8.aarch64 version
NeoKylin 7.6 4.14.0-115.5.1.el7a.06.aarch64 version
BCLinux-R7-U6-Server-aarch64 version
Kylin 4.0.2 (juniper) 4.15.0-70-generic version
Kylin release 4.0.2 (SP2) 4.19.36-vhulk1907.1.0.h403.ky4.aarch64 version
UniKylin Linux release 3(Core) 4.18.0-80.ky3.kb21.hw.aarch64 version
Ubuntu 18.04.1 LTS 4.15.0-29-generic version
openEuler 20.03 LTS 4.19.90-2003.4.0.0036.oe1.aarch64 version
openEuler 20.03 LTS-SP1 4.19.90-2012.4.0.0053.oe1.aarch64 version
KAE2.0支持操作系统:
openEuler 22.03 LTS-SP1
openEuler 22.03 LTS-SP2
2.2 软件包获取
基于硬件cpu款型及内核OS情况,选择正确的KAE版本后,再获取软件包,用于后续安装。
2.2.1 KAE1.0软件包获取
KAE1.0 版本支持RPM、DEB包安装、源码安装三种方式。
RPM及DEB获取
KAE1.0 rpm 包下载地址:https://gitee.com/kunpengcompute/KAE/releases/tag/v1.2.10
说明:rpm 包的获取需要进入下载地址选取指定操作系统的 rpm 包
KAE1.0 RPM包说明如下表所示:
软件包名称
软件包说明
uacce-版本号-1.OS类型.aarch64.rpmuacce-版本号-1.OS类型.aarch64.deb
统一加速器框架,包含内容:uacce.ko、hisi_qm.ko内核模块
hisi_hpre-版本号-1.OS类型.aarch64.rpmhisi_hpre-版本号-1.OS类型.aarch64.deb
依赖:uacce RPM包 包含内容:hisi_hpre.ko内核模块 支持:RSA/DH算法
hisi_sec2-版本号-1.OS类型.aarch64.rpm hisi_sec2-版本号-1.OS类型.aarch64.deb
依赖:uacce RPM包包含内容:hisi_sec2.ko内核模块 <支持:AES/MD5/SM3/SM4算法>
hisi_rde-版本号-1.OS类型.aarch64.rpm hisi_rde-版本号-1.OS类型.aarch64.deb
依赖:uacce RPM包 包含内容:hisi_rde.ko内核模块 支持:FlexEC算法
hisi_zip-版本号-1.OS类型.aarch64.rpmhisi_zip-版本号-1.OS类型.aarch64.deb
依赖:uacce RPM包包含内容:hisi_zip.ko内核模块支持:zlib/gzip
libwd-版本号-1.OS类型.aarch64.rpmlibwd-版本号-1.OS类型.aarch64.deb
包含内容:libwd.so动态链接库 提供接口给KAE加速引擎
libkae-版本号-1.OS类型.aarch64.rpm libkae-版本号-1.OS类型.aarch64.deb
依赖:libwd RPM包 包含内容:libkae.so动态库支持:SM3/SM4/RSA/AES/MD5/DH等算法
libkaezip-版本号-1.OS类型.aarch64.rpmlibkaezip-版本号-1.OS类型.aarch64.deb
依赖:libwd RPM/DEB包包含内容:libkaezip.so动态库支持:压缩解压算法
源码包获取
KAE1.0 源码下载方式:git clone https://gitee.com/kunpengcompute/KAE.git -b kae1
或者访问Kunpeng/KAE代码仓下载源码包:https://gitee.com/kunpengcompute/KAE
2.2.2 KAE2.0软件包获取
KAE2.0 版本支持RPM包安装、源码安装两种种方式。
RPM包获取
KAE2.0 rpm包下载地址:尚未发布
源码包获取
KAE2.0 源码下载方式:git clone https://gitee.com/kunpengcompute/KAE.git -b kae2
或者访问Kunpeng/KAE代码仓下载源码包:https://gitee.com/kunpengcompute/KAE
2.3 License安装
安装鲲鹏KAE加速引擎之前需要先安装相应的License,License安装成功之后,操作系统才能识别到加速器设备。
TaiShan K系列服务器硬件KAE加速引擎已默认开启,无需申请License。
具体License申请使用操作可参考《华为服务器iBMC许可证 使用指导》。
通过lspci命令进行查看操作系统是否有加速器设备,如下所示。
lspci | grep HPRE
79:00.0 Network and computing encryption device: Huawei Technologies Co., Ltd. HiSilicon HPRE Engine (rev 21)
b9:00.0 Network and computing encryption device: Huawei Technologies Co., Ltd. HiSilicon HPRE Engine (rev 21)
lspci | grep RDE
78:01.0 RAID bus controller: Huawei Technologies Co., Ltd. HiSilicon RDE Engine (rev 21)
b8:01.0 RAID bus controller: Huawei Technologies Co., Ltd. HiSilicon RDE Engine (rev 21)
lspci | grep ZIP
75:00.0 Processing accelerators: Huawei Technologies Co., Ltd. HiSilicon ZIP Engine (rev 21)
b5:00.0 Processing accelerators: Huawei Technologies Co., Ltd. HiSilicon ZIP Engine (rev 21)
lspci | grep SEC
76:00.0 Network and computing encryption device: Huawei Technologies Co., Ltd. HiSilicon SEC Engine (rev 21)
b6:00.0 Network and computing encryption device: Huawei Technologies Co., Ltd. HiSilicon SEC Engine (rev 21)
2.4 KAE安装
2.4.1 KAE1.0版本
二进制包安装
前提条件:
请保证rpm下载完成,并且license获取成功。
RPM或dpkg工具能正常使用。
OpenSSL 1.1.1a或以上版本已正确安装。
hisi_hpre,hisi_sec2,hisi_rde驱动软件包依赖于uacce软件包;libkae引擎软件包依赖于libwd软件包。
如果仅加速RSA/DH算法建议只需要安装uacce、hisi_hpre、libwd、libkae软件包。
如果仅加速AES/MD5/SM3/SM4算法建议只需要安装uacce、hisi_sec2、libwd、libkae软件
步骤1
使用SSH远程登录工具,以root帐号进入Linux操作系统命令行界面。
步骤2
将KAE加速引擎软件包拷贝到自定义路径下。
步骤3
安装加速驱动软件包。
可以通过rpm -ivh *.rpm安装所有KAE加速引擎软件包。
[root]rpm -ivh *.rpm
Preparing... ################################# [100%]
checking installed modules
Updating / installing...
1:uacce-1.0.1-1.centos7.6 ################################# [ 14%]
modules installed
2:libwd-1.0.1-1.centos7.6 ################################# [ 29%]
3:libkae-1.0.1-1.centos7.6 ################################# [ 43%]
checking installed modules
4:hisi_hpre-1.0.1-1.centos7.6 ################################# [ 57%]
modules installed
checking installed modules
5:hisi_rde-1.0.1-1.centos7.6 ################################# [ 71%]
modules installed
checking installed modules
6:hisi_sec2-1.0.1-1.centos7.6 ################################# [ 86%]
modules installed
checking installed modules
7:hisi_zip-1.0.1-1.centos7.6 ################################# [100%]
checking installed modules
也可以按需依次安装rpm,以下以uacce-1.0.1为例
[root]rpm -ivh uacce-1.0.1-1.centos7.6.aarch64.rpm
Preparing... ################################# [100%]
checking installed modules
Updating / installing...
1:uacce-1.0.1-1.centos7.6 ################################# [100%]
modules installed
安装libkae引擎软件包时还需要通过--prefix指定OpenSSL引擎的路径,命令与回显结果如下:
[root]rpm -ivh libkae-1.0.1-1.centos7.6.aarch64.rpm --prefix=/usr/local/lib/engines-1.1
Preparing... ################################# [100%]
Updating / installing...
1:libkae-1.0.1-1.centos7.6 ################################# [100%]
步骤4
查看RPM软件是否已正常安装到系统内。
查看uacce是否已安装。
rpm -ql uacce
/lib/modules/4.14.0-115.el7a.0.1.aarch64/extra/hisi_qm.ko
/lib/modules/4.14.0-115.el7a.0.1.aarch64/extra/uacce.ko
查看hisi_sec2、hisi_hpre、hisi_rde是否已安装。
rpm -ql hisi_sec2 hisi_hpre hisi_rde
/lib/modules/4.14.0-115.el7a.0.1.aarch64/extra/hisi_sec2.ko
/etc/modproe.d/hisi_sec2.conf
/lib/modules/4.14.0-115.el7a.0.1.aarch64/extra/hisi_hpre.ko
/etc/modproe.d/hisi_hpre.conf
/lib/modules/4.14.0-115.el7a.0.1.aarch64/extra/hisi_rde.ko
/etc/modproe.d/hisi_rde.conf
查看hisi_zip是否已安装。
rpm -ql hisi_zip
/lib/modules/4.14.0-115.el7a.0.1.aarch64/extra/hisi_zip.ko
/etc/modproe.d/hisi_zip.conf
查看安装目录下是否生成对应模块。
ls -al /lib/modules/`uname -r`/extra
-rw-r--r--. 1 root root 681104 Nov 12 17:32 hisi_hpre.ko
-rw-r--r--. 1 root root 618888 Nov 12 17:32 hisi_qm.ko
-rw-r--r--. 1 root root 844728 Nov 12 17:32 hisi_rde.ko
-rw-r--r--. 1 root root 729304 Nov 12 17:32 hisi_sec2.ko
-rw-r--r--. 1 root root 396784 Nov 12 17:32 hisi_zip.ko
-rw-r--r--. 1 root root 467160 Nov 12 17:32 uacce.ko
在“/etc/modprobe.d/”目录下查看是否生成对应的配置文件。
ls -al /etc/modprobe.d/
-rw-r--r--. 1 root root 166 Oct 30 2018 firewalld-sysctls.conf
-rw-r--r--. 1 root root 44 Nov 17 21:56 hisi_hpre.conf
-rw-r--r--. 1 root root 43 Nov 17 21:56 hisi_rde.conf
-rw-r--r--. 1 root root 61 Nov 17 21:56 hisi_sec2.conf
-rw-r--r--. 1 root root 674 Jul 4 2018 tuned.conf
-rw-r--r--. 1 root root 43 Nov 17 21:56 hisi_zip.conf
步骤5(可选)如果是SUSE操作系统,在加载外部驱动前需要先将配置文件“/etc/modprobe.d/10-unsupported-modules.conf”中的“allow_unsupported_modules”参数值设置为“1”。
步骤6
加载加速器驱动到内核。
方式一:重启系统加载
方式二:手动依次加载
查询已载入内核的uacce驱动模块。
lsmod | grep uacce
加载uacce驱动。
modprobe uacce
加载hisi_sec2驱动,将根据“/etc/modprobe.d/hisi_sec2.conf”下的配置文件加载到内核。
modprobe hisi_sec2
加载hisi_hpre驱动,将根据“/etc/modprobe.d/hisi_hpre.conf”下的配置文件加载到内核。
modprobe hisi_hpre
加载hisi_rde驱动,将根据“/etc/modprobe.d/hisi_rde.conf”下的配置文件加载到内核。
modprobe hisi_rde
加载hisi_zip驱动,将根据/etc/modprobe.d/hisi_zip.conf下的配置文件加载到内核。
modprobe hisi_zip
再次查询已载入内核的uacce驱动模块。有以下加载的模块显示则表示加载成功。
lsmod | grep uacce
uacce 36864 3 hisi_sec2,hisi_qm,hisi_hpre,hisi_rde,hisi_zip
(可选)使用加解密功能时候,设置环境变量OPENSSL_ENGINES
如果用户指定安装路径,则下面/usr/local/lib/engines-1.1应根据实际安装路径进行修改。
export OPENSSL_ENGINES=/usr/local/lib/engines-1.1
说明:该环境变量默认为指定挂载到OpenSSL中的引擎路径,可以指定到客户自定义路径。
(dep包安装同rpm安装,rpm -ivh XXX.rpm 对应为 dpkg -i XXX.deb )
源码安装
步骤1
下载代码
git clone https://gitee.com/kunpengcompute/KAE.git -b kae1
步骤2
安装内核驱动
cd kae_drvier
make
make install
加速器驱动编译生成uacce.ko、hisi_qm.ko、hisi_sec2.ko、hisi_hpre.ko、hisi_zip.ko、hisi_rde.ko,安装路径为:“lib/modules/uname -r/extra”。
由于SUSE及CentOS内核目录为“/lib/modules/`uname -r`/”,驱动安装的目录为“/lib/modules/`uname -r`/extra”(`uname -r`命令获取当前运行内核信息)。如果其他操作系统不是该目录,需要修改Makefile文件中install指定的内核路径。 install: $(shell mkdir -p /lib/modules/`uname -r`/extra)修改为$(shell mkdir -p内核路径/extra)
步骤3
安装用户态驱动。
cd warpdrive
sh autogen.sh
./configure
make
make install
其中,执行编译命令./configure时可以加--prefix选项用于指定加速器用户态驱动需要安装的位置,用户态驱动动态库文件为libwd.so。Warpdrive默认安装路径为“/usr/local”,动态库文件在“/usr/local/lib”下。
说明:KAE引擎需要使用到OpenSSL的动态库与Warpdrive的动态库。Warpdrive源码安装路径选择需要与OpenSSL安装路径保持一致,使得KAE加速引擎可以通过LD_LIBRARY_PATH能够同时找到这两个动态库。
步骤4
(可选)如果是SUSE操作系统,在加载外部驱动前需要先将配置文件“/etc/modprobe.d/10-unsupported-modules.conf”中的“allow_unsupported_modules”参数值设置为“1”。
步骤5
方式一:重启系统加载
方式二:手动依次加载
查询已载入内核的uacce驱动模块。
lsmod | grep uacce
加载uacce驱动。
modprobe uacce
加载hisi_sec2驱动,将根据“/etc/modprobe.d/hisi_sec2.conf”下的配置文件加载到内核。
modprobe hisi_sec2
加载hisi_hpre驱动,将根据“/etc/modprobe.d/hisi_hpre.conf”下的配置文件加载到内核。
modprobe hisi_hpre
加载hisi_rde驱动,将根据“/etc/modprobe.d/hisi_rde.conf”下的配置文件加载到内核。
modprobe hisi_rde
加载hisi_zip驱动,将根据/etc/modprobe.d/hisi_zip.conf下的配置文件加载到内核。
modprobe hisi_zip
再次查询已载入内核的uacce驱动模块。有以下加载的模块显示则表示加载成功。
lsmod | grep uacce
uacce 36864 3 hisi_sec2,hisi_qm,hisi_hpre,hisi_rde,hisi_zip
(可选)设置环境变量OPENSSL_ENGINES
如果用户指定安装路径,则下面/usr/local/lib/engines-1.1应根据实际安装路径进行修改。
export OPENSSL_ENGINES=/usr/local/lib/engines-1.1
说明:该环境变量默认为指定挂载到OpenSSL中的引擎路径,可以指定到客户自定义路径。
步骤6
编译安装KAE加速引擎
cd KAE
chmod +x config
./configure
make clean & make
make install
其中,执行编译命令./configure时可以加--prefix选项用于指定KAE加速引擎的安装路径,KAE加速引擎动态库文件为libkae.so。
推荐通过默认方式安装KAE加速引擎。默认安装路径为“/usr/local”,动态库文件在“/usr/local/lib/engines-1.1”下。
步骤7
检查安装状态
ls -al /usr/local/lib/ |grep libwd
lrwxrwxrwx. 1 root root 14 Jun 25 11:16 libwd.so -> libwd.so.1.0.1
lrwxrwxrwx. 1 root root 14 Jun 25 11:16 libwd.so.0 -> libwd.so.1.0.1
-rwxr-xr-x. 1 root root 137280 Jun 24 11:37 libwd.so.1.0.1
ls -al /usr/local/lib/engines-1.1/
lrwxrwxrwx. 1 root root 48 Jun 25 11:21 kae.so -> /usr/local/openssl/lib/engines-1.1/kae.so.1.0.1
lrwxrwxrwx. 1 root root 48 Jun 25 11:21 kae.so.0 -> /usr/local/openssl/lib/engines-1.1/kae.so.1.0.1
-rwxr-xr-x. 1 root root 212192 Jun 24 11:37 kae.so.1.0.1
查看虚拟文件系统下加速器设备
ls -al /sys/class/uacce/
total 0
lrwxrwxrwx. 1 root root 0 Nov 14 03:45 hisi_hpre-2 -> ../../devices/pci0000:78/0000:78:00.0/0000:79:00.0/uacce/hisi_hpre-2
lrwxrwxrwx. 1 root root 0 Nov 14 03:45 hisi_hpre-3 -> ../../devices/pci0000:b8/0000:b8:00.0/0000:b9:00.0/uacce/hisi_hpre-3
lrwxrwxrwx. 1 root root 0 Nov 17 22:09 hisi_rde-4 -> ../../devices/pci0000:78/0000:78:01.0/uacce/hisi_rde-4
lrwxrwxrwx. 1 root root 0 Nov 17 22:09 hisi_rde-5 -> ../../devices/pci0000:b8/0000:b8:01.0/uacce/hisi_rde-5
lrwxrwxrwx. 1 root root 0 Nov 14 08:39 hisi_sec-0 -> ../../devices/pci0000:74/0000:74:01.0/0000:76:00.0/uacce/hisi_sec-0
lrwxrwxrwx. 1 root root 0 Nov 14 08:39 hisi_sec-1 -> ../../devices/pci0000:b4/0000:b4:01.0/0000:b6:00.0/uacce/hisi_sec-1
步骤8
通过openssl命令验证加速器是否生效。
[root]openssl speed rsa2048
sign verify sign/s verify/s
rsa 2048 bits 0.001381s 0.000035s 724.1 28601.0
[root]openssl speed -engine kae rsa2048
engine "kae" set.
sign verify sign/s verify/s
rsa 2048 bits 0.000175s 0.000021s 5730.1 46591.8
通过ldd命令查看zlib加速库是否链接到libwd和libkaezip。
ldd /usr/local/kaezip/lib/libz.so.1.2.11
linux-vdso.so.1 => (0x0000ffff80280000)
libc.so.6 => /lib64/libc.so.6 (0x0000ffff80080000)
libwd.so.1 => /lib64/libwd.so.1 (0x0000ffff80040000)
/lib/ld-linux-aarch64.so.1 (0x0000ffff80290000)
libkaezip.so => /usr/local/kaezip/lib/libkaezip.so (0x0000ffff80830000)
2.4.2 KAE2.0版本
二进制包安装
RPM包尚未发布。
源码安装
通过2.2节获取到源码后,进入KAE文件夹,目录结构如下所示:
-rw-r--r--. 1 root root 6921 Aug 4 16:37 build.sh
drwxr-xr-x. 7 root root 4096 Aug 15 17:13 KAEKernelDriver
drwxr-xr-x. 7 root root 4096 Aug 15 17:13 KAEOpensslEngine
drwxr-xr-x. 9 root root 4096 Aug 15 17:19 KAEZlib
drwxr-xr-x. 8 root root 4096 Aug 8 10:45 KAEZstd
-rw-r--r--. 1 root root 5 Jul 27 17:25 README.md
drwxr-xr-x. 3 root root 4096 Jul 27 17:25 scripts
drwxr-xr-x. 14 root root 4096 Aug 15 17:13 uadk
需要依次安装驱动、安装UADK、安装OpensslEngine(按需)、安装Zlib(按需)。
安装驱动
[root@localhost KAE]# sh build.sh driver
build driver
make -C /lib/modules/`rpm -q --qf '%{VERSION}-%{RELEASE}.%{ARCH}\n' kernel-devel | head -n 1`/build M=/home/USER/KAE/KAEKernelDriver modules \
CONFIG_CC_STACKPROTECTOR_STRONG=y \
CONFIG_UACCE=m \
CONFIG_CRYPTO_QM_UACCE=m \
CONFIG_CRYPTO_DEV_HISI_SGL=m \
CONFIG_CRYPTO_DEV_HISI_QM=m \
CONFIG_CRYPTO_DEV_HISI_ZIP=m \
CONFIG_CRYPTO_DEV_HISI_HPRE=m \
CONFIG_CRYPTO_DEV_HISI_SEC2=m \
CONFIG_CRYPTO_DEV_HISI_TRNG=m
make[1]: Entering directory '/usr/src/kernels/5.10.0-146.0.0.75.oe2203sp2.aarch64'
CC [M] /home/USER/KAE/KAEKernelDriver/uacce/uacce.o
CC [M] /home/USER/KAE/KAEKernelDriver/hisilicon/qm.o
CC [M] /home/USER/KAE/KAEKernelDriver/hisilicon/sgl.o
CC [M] /home/USER/KAE/KAEKernelDriver/hisilicon/debugfs.o
CC [M] /home/USER/KAE/KAEKernelDriver/hisilicon/sec2/sec_main.o
CC [M] /home/USER/KAE/KAEKernelDriver/hisilicon/hpre/hpre_main.o
CC [M] /home/USER/KAE/KAEKernelDriver/hisilicon/zip/zip_main.o
CC [M] /home/USER/KAE/KAEKernelDriver/hisilicon/hpre/hpre_crypto.o
CC [M] /home/USER/KAE/KAEKernelDriver/hisilicon/sec2/sec_crypto.o
CC [M] /home/USER/KAE/KAEKernelDriver/hisilicon/zip/zip_crypto.o
LD [M] /home/USER/KAE/KAEKernelDriver/hisilicon/zip/hisi_zip.o
LD [M] /home/USER/KAE/KAEKernelDriver/hisilicon/hpre/hisi_hpre.o
LD [M] /home/USER/KAE/KAEKernelDriver/hisilicon/sec2/hisi_sec2.o
LD [M] /home/USER/KAE/KAEKernelDriver/hisilicon/hisi_qm.o
MODPOST /home/USER/KAE/KAEKernelDriver/Module.symvers
CC [M] /home/USER/KAE/KAEKernelDriver/hisilicon/hisi_qm.mod.o
CC [M] /home/USER/KAE/KAEKernelDriver/hisilicon/hpre/hisi_hpre.mod.o
CC [M] /home/USER/KAE/KAEKernelDriver/hisilicon/sec2/hisi_sec2.mod.o
CC [M] /home/USER/KAE/KAEKernelDriver/hisilicon/zip/hisi_zip.mod.o
CC [M] /home/USER/KAE/KAEKernelDriver/uacce/uacce.mod.o
LD [M] /home/USER/KAE/KAEKernelDriver/hisilicon/hpre/hisi_hpre.ko
LD [M] /home/USER/KAE/KAEKernelDriver/hisilicon/hisi_qm.ko
LD [M] /home/USER/KAE/KAEKernelDriver/hisilicon/zip/hisi_zip.ko
LD [M] /home/USER/KAE/KAEKernelDriver/hisilicon/sec2/hisi_sec2.ko
LD [M] /home/USER/KAE/KAEKernelDriver/uacce/uacce.ko
make[1]: Leaving directory '/usr/src/kernels/5.10.0-146.0.0.75.oe2203sp2.aarch64'
depmod -a
modprobe uacce
modprobe hisi_qm
modprobe hisi_sec2 uacce_mode=2 pf_q_num=256
modprobe hisi_hpre uacce_mode=2 pf_q_num=256
modprobe hisi_zip uacce_mode=2 pf_q_num=256
echo "options hisi_sec2 uacce_mode=2 pf_q_num=256" > /etc/modprobe.d/hisi_sec2.conf
echo "options hisi_hpre uacce_mode=2 pf_q_num=256" > /etc/modprobe.d/hisi_hpre.conf
echo "options hisi_zip uacce_mode=2 pf_q_num=256" > /etc/modprobe.d/hisi_zip.conf
可以通过查看目录/sys/class/uacce是否存在加速引擎文件系统判断驱动是否安装成功。
[root@localhost KAE]# ll /sys/class/uacce/
total 0
lrwxrwxrwx. 1 root root 0 Aug 22 17:14 hisi_hpre-2 -> ../../devices/pci0000:78/0000:78:00.0/0000:79:00.0/uacce/hisi_hpre-2
lrwxrwxrwx. 1 root root 0 Aug 22 17:14 hisi_hpre-3 -> ../../devices/pci0000:b8/0000:b8:00.0/0000:b9:00.0/uacce/hisi_hpre-3
lrwxrwxrwx. 1 root root 0 Aug 22 17:14 hisi_sec2-0 -> ../../devices/pci0000:74/0000:74:01.0/0000:76:00.0/uacce/hisi_sec2-0
lrwxrwxrwx. 1 root root 0 Aug 22 17:14 hisi_sec2-1 -> ../../devices/pci0000:b4/0000:b4:01.0/0000:b6:00.0/uacce/hisi_sec2-1
lrwxrwxrwx. 1 root root 0 Aug 22 17:14 hisi_zip-4 -> ../../devices/pci0000:74/0000:74:00.0/0000:75:00.0/uacce/hisi_zip-4
lrwxrwxrwx. 1 root root 0 Aug 22 17:14 hisi_zip-5 -> ../../devices/pci0000:b4/0000:b4:00.0/0000:b5:00.0/uacce/hisi_zip-5
说明: 若无内容显示,可能是因为uacce默认安装了内核版本,可以先卸载后重新安装。
sh build cleanup
安装UADK
sh build.sh uadk
...
可以通过查找libwd*.so来确定是否安装成功
[root@localhost KAE]# ll /usr/local/lib/libwd*
-rwxr-xr-x. 1 root root 961 Aug 22 17:23 /usr/local/lib/libwd_comp.la
lrwxrwxrwx. 1 root root 19 Aug 22 17:23 /usr/local/lib/libwd_comp.so -> libwd_comp.so.2.5.0
lrwxrwxrwx. 1 root root 19 Aug 22 17:23 /usr/local/lib/libwd_comp.so.2 -> libwd_comp.so.2.5.0
-rwxr-xr-x. 1 root root 377872 Aug 22 17:23 /usr/local/lib/libwd_comp.so.2.5.0
-rwxr-xr-x. 1 root root 973 Aug 22 17:23 /usr/local/lib/libwd_crypto.la
lrwxrwxrwx. 1 root root 21 Aug 22 17:23 /usr/local/lib/libwd_crypto.so -> libwd_crypto.so.2.5.0
lrwxrwxrwx. 1 root root 21 Aug 22 17:23 /usr/local/lib/libwd_crypto.so.2 -> libwd_crypto.so.2.5.0
-rwxr-xr-x. 1 root root 715616 Aug 22 17:23 /usr/local/lib/libwd_crypto.so.2.5.0
-rwxr-xr-x. 1 root root 907 Aug 22 17:23 /usr/local/lib/libwd.la
lrwxrwxrwx. 1 root root 14 Aug 22 17:23 /usr/local/lib/libwd.so -> libwd.so.2.5.0
lrwxrwxrwx. 1 root root 14 Aug 22 17:23 /usr/local/lib/libwd.so.2 -> libwd.so.2.5.0
-rwxr-xr-x. 1 root root 1342080 Aug 22 17:23 /usr/local/lib/libwd.so.2.5.0
安装OpenSSLEngine(按需)
sh build.sh engine
...
可以通过查看kae.so判断是否安装成功
[root@localhost KAE]# ll /usr/local/lib/engines-1.1
total 5644
-rw-r--r--. 1 root root 3846524 Aug 22 17:28 kae.a
-rwxr-xr-x. 1 root root 995 Aug 22 17:28 kae.la
lrwxrwxrwx. 1 root root 12 Aug 22 17:28 kae.so -> kae.so.2.0.0
lrwxrwxrwx. 1 root root 12 Aug 22 17:28 kae.so.2 -> kae.so.2.0.0
-rwxr-xr-x. 1 root root 1967736 Aug 22 17:28 kae.so.2.0.0
也可以通过openssl speed命令查看加速引擎是否生效:
[root@localhost KAE]# openssl speed rsa2048
Doing 2048 bits private rsa's for 10s: 7779 2048 bits private RSA's in 9.99s
Doing 2048 bits public rsa's for 10s: 321542 2048 bits public RSA's in 9.99s
OpenSSL 1.1.1m 14 Dec 2021
built on: Thu Apr 13 09:58:22 2023 UTC
options:bn(64,64) md2(char) rc4(char) des(int) aes(partial) idea(int) blowfish(ptr)
compiler: gcc -fPIC -pthread -Wa,--noexecstack -Wall -O3 -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/generic-hardened-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -Wa,--noexecstack -specs=/usr/lib/rpm/generic-hardened-ld -DOPENSSL_USE_NODELETE -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DVPAES_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DSM4_ASM -DVPSM4_EX_ASM -DSM3_ASM -DZLIB -DNDEBUG -DPURIFY -DDEVRANDOM="\"/dev/urandom\""
sign verify sign/s verify/s
rsa 2048 bits 0.001284s 0.000031s 778.7 32186.4
[root@localhost KAE]# export OPENSSL_ENGINES=/usr/local/lib/engines-1.1
[root@localhost KAE]# openssl speed -engine kae rsa2048
engine "kae" set.
Doing 2048 bits private rsa's for 10s: 32132 2048 bits private RSA's in 4.95s
Doing 2048 bits public rsa's for 10s: 517087 2048 bits public RSA's in 9.95s
OpenSSL 1.1.1m 14 Dec 2021
built on: Thu Apr 13 09:58:22 2023 UTC
options:bn(64,64) md2(char) rc4(char) des(int) aes(partial) idea(int) blowfish(ptr)
compiler: gcc -fPIC -pthread -Wa,--noexecstack -Wall -O3 -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/generic-hardened-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -Wa,--noexecstack -specs=/usr/lib/rpm/generic-hardened-ld -DOPENSSL_USE_NODELETE -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DVPAES_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DSM4_ASM -DVPSM4_EX_ASM -DSM3_ASM -DZLIB -DNDEBUG -DPURIFY -DDEVRANDOM="\"/dev/urandom\""
sign verify sign/s verify/s
rsa 2048 bits 0.000154s 0.000019s 6491.3 51968.5
安装KAEZlib(按需)
sh build.sh zlib
通过ldd命令查看zlib加速库是否链接到libwd和libkaezip。
linux-vdso.so.1 (0x0000ffffb0282000)
libc.so.6 => /usr/lib64/libc.so.6 (0x0000ffffb0075000)
libkaezip.so.2.0.0 => /usr/local/kaezip/lib/libkaezip.so.2.0.0 (0x0000ffffb0044000)
libwd.so.2 => /usr/local/lib/libwd.so.2 (0x0000ffffaffe3000)
libwd_comp.so.2 => /usr/local/lib/libwd_comp.so.2 (0x0000ffffaffb2000)
/lib/ld-linux-aarch64.so.1 (0x0000ffffb0245000)
libnuma.so.1 => /usr/lib64/libnuma.so.1 (0x0000ffffaff8d000)
说明:脚本提供一键式安装命令:sh build.sh all, 初次使用前建议先 sh build.sh cleanup
空文件
Starred
7
Star
7
Fork
18
捐赠
0 人次
举报
举报成功
我们将于2个工作日内通过站内信反馈结果给你!
请认真填写举报原因,尽可能描述详细。
举报类型
请选择举报类型
举报原因
取消
发送
误判申诉
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
取消
提交
简介
暂无描述
展开
收起
暂无标签
/kunpengcompute/KAE
C
等 6 种语言
C
94.1%
C++
3.8%
Shell
1.1%
Makefile
0.7%
Python
0.1%
Other
0.2%
保存更改
取消
发行版
(9)
全部
Kunpeng KAE version v2.0.1
贡献者
全部
近期动态
加载更多
不能加载更多了
编辑仓库简介
简介内容
主页
取消
保存更改
1
https://gitee.com/kunpengcompute/KAE.git
git@gitee.com:kunpengcompute/KAE.git
kunpengcompute
KAE
KAE
master
深圳市奥思网络科技有限公司版权所有
Git 大全
Git 命令学习
CopyCat 代码克隆检测
APP与插件下载
Gitee Reward
Gitee 封面人物
GVP 项目
Gitee 博客
Gitee 公益计划
Gitee 持续集成
OpenAPI
帮助文档
在线自助服务
更新日志
关于我们
加入我们
使用条款
意见建议
合作伙伴
售前咨询客服
技术交流QQ群
微信服务号
client#oschina.cn
企业版在线使用:400-606-0201
专业版私有部署:
13670252304
13352947997
开放原子开源基金会
合作代码托管平台
违法和不良信息举报中心
粤ICP备12009483号
简 体
/
繁 體
/
English
点此查找更多帮助
搜索帮助
Git 命令在线学习
如何在 Gitee 导入 GitHub 仓库
Git 仓库基础操作
企业版和社区版功能对比
SSH 公钥设置
如何处理代码冲突
仓库体积过大,如何减小?
如何找回被删除的仓库数据
Gitee 产品配额说明
GitHub仓库快速导入Gitee及同步更新
什么是 Release(发行版)
将 PHP 项目自动发布到 packagist.org
评论
仓库举报
回到顶部
登录提示
该操作需登录 Gitee 帐号,请先登录后再操作。
立即登录
没有帐号,去注册