鲲鹏DevKit如何使能极简原生开发

电子说

1.3w人已加入

描述

近日,在华为伙伴暨开发者大会2022-鲲鹏开发者峰会的主题演讲中,华为鲲鹏计算业务总裁张熙伟先生宣布了鲲鹏开发套件DevKit已经从“应用迁移”走向了“原生开发”,并持续增强原生开发能力,2022年陆续推出鲲鹏场景化SDK,鲲鹏调试器以及场景化性能分析工具,使能开发者效率提升50%,助力行业应用高效创新。

鲲鹏Devkit:从“应用迁移”走向“原生开发

随着行业数字化加速发展,各行业对算力提出了更高的需求,鲲鹏因其多核多并发、低能耗等优势已成为行业主流IT基础设施之一。为了帮助开发人员更加便捷、高效的将应用迁移到鲲鹏,2019年鲲鹏重磅发布了开发套件DevKit,提供代码迁移、编译、调优和诊断等工具实现有源码应用的无忧迁移;针对存量无源码应用,还提供动态二进制指令翻译工具ExaGear,在软件执行过程中直接将X86指令翻译为鲲鹏指令,“零代码”、“低损耗”的完成迁移。经过两年的投入,鲲鹏应用的迁移效率已从最初的60人天/应用快速缩短到2人天/应用,迁移不再是难事。

2021年9月,鲲鹏首次宣布DevKit将从加速“应用迁移”走向使能“原生开发”,并面向全研发作业流推出了鲲鹏开发框架、性能优化后的毕昇编译器、增强的云上自动化测试服务、全场景性能调优等能力,让开发者更便捷高效的基于鲲鹏进行原生开发。该版本已经于2021年12月31日在鲲鹏社区正式上线。

鲲鹏Devkit原生开发能力持续增强,开发效率提升50%+

为了进一步提升鲲鹏应用的开发效率和体验,在华为伙伴暨开发者大会2022-鲲鹏开发者峰会的主题演讲中,华为鲲鹏计算业务总裁张熙伟先生宣布鲲鹏DevKit将聚焦增强原生开发能力,推出几款新武器,使能开发者开发效率提升50%。

重磅推出3个鲲鹏场景化SDK,帮助开发者快速获取不同场景下的关键能力,充分发挥鲲鹏架构优势,降低学习成本、提高开发效率,助力原生应用极简开发。

鲲鹏通用计算SDK,面向通用计算场景,提供鲲鹏软硬协同加速能力和高性能编译器,帮助提升应用开发效率。

鲲鹏高性能计算SDK,面向HPC场景,提供高性能编译器、通信库等编译能力以及数学计算加速能力,助力开发者快速开发高性能应用。

鲲鹏安全计算SDK,面向密钥、证书等安全操作场景,通过TEE安全操作系统,保护用户数据安全,通过鲲鹏KAE加速引擎提升应用性能。

鲲鹏调试器:

作为业界首款开放的集群并行调试器,支持单节点或多节点并行调试,提供图形化界面,大幅提升调试效率。

鲲鹏高性能计算分析:

支持百P级数十万核高性能集群的算力特征和应用性能分析,并提供最佳的优化建议,从而发挥出鲲鹏集群的最强算力。

张熙伟表示:“目前已有一批行业应用伙伴加入了我们的原生开发实践,部分已完成了相关的应用开发及性能优化。我们欢迎更多的伙伴和开发者加入进来,使用我们的鲲鹏SDK。”

鲲鹏DevKit如何使能极简原生开发?

基于上述新推出的能力,鲲鹏DevKit将如何如进一步提升鲲鹏应用的原生开发体验和效率?在华为伙伴暨开发者大会2022-鲲鹏技术专场中, DevKit的研发专家们进行了详细的技术解读。

在开发阶段

通过鲲鹏开发框架提供工程管理向导、启发式编程、鲲鹏亲和检查等能力,帮助开发者便捷使用鲲鹏原生编译选项、快速获取依赖文件兼容版本、并推荐使用鲲鹏加速库,提升应用性能;

此外,鲲鹏开发框架还将在6月30日发布的版本中提供安全计算SDK、高性能计算SDK(通用计算SDK将在9月30日的版本中提供)。用户在工程创建过程中可以直接选择应用场景,一键式完成场景化SDK的安装部署、以及参考实现Demo的下载;同时,自动检测软件栈中各组件(用户态、内核态以及底层软件)的状态是否正常,并一键获取各组件的指导手册、白皮书、源码仓等信息。

工程创建完成后,开发框架提供了针对该应用场景的参考实现Demo代码,开发者可直接对该Demo进行编译调试,也可以基于该Demo,完成自己的应用开发。比如:安全计算将提供包含CA(Client Application )工程、TA(Trusted Application)工程、RSA(公钥加密算法)工程、机密数据保存、匿名投票在内的5个常用参考实现。

场景化SDK能够帮助开发者大幅缩短依赖组件的下载、安装、构建、执行的时间,实现鲲鹏原生开发效率提升50%+。

在调试阶段

鲲鹏DevKit通过IDE的方式提供鲲鹏调试器,支持CPU应用和GPU应用并行调试,用户可以在操作中设置断点、查看线程/函数堆栈/寄存器信息/变量信息,支持汇编指令的断点执行、单步调试。同时通过IDE的深度结合,能够让开发者在一个界面完成工程创建、SDK部署、代码编写、编译调试,真正实现一站式软件开发。

在编译阶段

面向LLVM、GCC技术路线以及Java语言提供三类编译软件。

毕昇编译器基于基于开源LLVM开发,并针对鲲鹏做了多重编译优化和增强,通过循环优化、软件预取、结构体内存布局、NEON向量化等关键优化技术,实现鲲鹏平台SPEC性能提升25%。

GCC for openEuler是基于开源GCC开发的编译器工具链,在openEuler社区开源发布,并通过鲲鹏社区免费提供二进制包,支持包含ARM、x86在内的多种处理器架构。

毕昇JDK基于OpenJDK开发,并针对鲲鹏平台进行了深度优化和质量增强,该软件近期已成功登陆Eclipse Adoptium开源JDK发行版市场,是国内首款登陆Adopitum发行版市场的JDK产品。

在调优&诊断阶段

性能分析工具支持鲲鹏平台上的系统性能分析、Java性能分析和系统诊断,提供系统全景及常见应用场景下的性能采集和分析功能,并基于调优专家系统给出优化建议。同时提供调优助手,指导新手用户快速调优。

此外,本次发布的高性能计算分析将进一步增强HPC应用的调优能力,支持百P级数十万核高性能集群的算力特征和应用性能分析,包括混合语言/集群资源/并行计算分析等。HPC应用分析主要针对openMP、MPI程序进行采集并给出优化建议。对OpenMP程序来说,最重要的影响性能的因素是它的线程之间的不平衡性,找出最晚结束并行区计算的关键线程,计算出不平衡度及解决后的潜在收益;对MPI程序来说,影响性能很大的因素是节点前通信开销,通过运行时指标、微架构指标、指令分布、Hotspots等维度的分析,帮助开发者优化多节点间的通信瓶颈点,为提高整个集群的性能打好基础,最终分析效率可达2人天/应用。

鲲鹏原生开发是指使用鲲鹏DevKit的原生开发能力,如鲲鹏开发框架(含场景化SDK)、编译调试工具、云测服务、调优&诊断工具等,在鲲鹏平台上开发新软件/新功能,充分发挥鲲鹏架构优势,从而获得开发效率/运行性能提升。

鲲鹏DevKit将持续优化开发者的开发体验,为开发者提供全方位的支持,除了免费提供所有工具套件之外,还提供全方位的原生开发支持与学习交流服务资源,如免费的远程实验室开发环境及云测服务,开发文档和代码样例等,帮助开发者快速上手。欢迎登陆鲲鹏社区-DevKit专区进行进一步了解和下载。

原文标题:鲲鹏DevKit:从“应用迁移”走向“原生开发”,开发效率提升50%+

文章出处:【微信公众号:华为计算】欢迎添加关注!文章转载请注明出处。  

      审核编辑:彭静
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分