【华为】2024鲲鹏原生开发技术白皮书_81页_5mb
报告摘要
鲲鹏原生开发技术白皮书总结
1. 鲲鹏原生开发的机遇与挑战
鲲鹏计算产业聚焦计算架构创新和开源软件开发,旨在通过鲲鹏硬件+openEuler+双Kit(DevKit、BoostKit)构建全栈解决方案,支持多版本适配与性能优化。当前面临的核心挑战包括:
- 多架构支持复杂性:需求一套流水线适配多套架构,但传统改造成本高。
- 性能优化需求:需使能鲲鹏微架构优化、安全合规扫描及多算力测试套件,提升性能质量与效率。
- 核心场景适配:覆盖大数据、分布式存储、数据库、虚拟化等场景的性能提升与兼容性问题。
2. 核心技术理念
鲲鹏原生开发以**“硬件开放、软件开源”**为核心策略,通过以下方案实现高效开发与性能优化:
- 代码开发阶段:使用DevKit和BoostKit工具,结合鲲鹏架构优势,提升开发效率与性能。
- 流水线阶段:支持1小时接入CI/CD流程,实现多平台版本快速发布及性能调优。
- 全栈优化:通过鲲鹏软硬件特性,打造“1套代码+1条流水线+N个版本”模式,覆盖应用开发、优化、编译、调优到版本发布的全流程。
3. 鲲鹏原生开发能力建设
3.1 开发工具链
- DevKit应用开发工具:支持代码自动匹配鲲鹏加速库,提供语法提示、高亮、联想建议,并可通过在线/本地字典管理加速库函数。
- BoostKit应用使能套件:
- 性能提升:提供大数据、分布式存储、数据库、虚拟化、ARM原生等场景的加速能力。
- 核心功能:
- 云手机Turbo套件:通过指令流/视频流引擎、Kbox容器、ExaGear翻译等技术支持无损上云与低延迟渲染。
- 大数据加速:优化Hive、Spark性能(Spark提升40%),支持OmniRuntime插件化调优。
- 机密计算:依托ARM TrustZone技术,提供TEE安全操作系统、BIOS/BMC组件,保障关键数据安全。
- 数据库优化:支持MySQL向量化分析引擎、无锁优化、CRC指令加速等,提升OLAP/OLTP性能。
3.2 编译优化
- 毕昇编译器:支持C++17、Fortran等语言,集成内存优化、循环展开、自动向量化等技术,提升编译效率。
- 毕昇JDK:基于OpenJDK,针对鲲鹏平台优化GC、代码生成,提升大数据等场景性能(Hive提升9%-32%)。
- GCC for openEuler:实现C11/C++14/17等标准兼容,覆盖开源与商业测试场景。
3.3 调试与调优工具
- 编译调试工具:支持远程部署鲲鹏编译器、可视化参数配置、CUDA-GDB调试、HPC多节点并行调试。
- 调优助手:系统化分析指标、定位瓶颈,提供优化建议与对比功能。
- AI调优:基于AI算法自动优化数据库和大数据场景参数配置(如Spark提升10%-40%)。
- 场景化调优:针对HPC、Java等场景提供专项分析,如MPI Timeline、锁与等待分析等。
- 性能分析工具:支持多层级(CPU、内存、I/O)和业务场景(如Java、JVM、Web)的性能瓶颈定位与优化。
4. 操作系统底座(openEuler)
- 核心能力:
- iSulad容器引擎:兼容OCI标准,对接Kubernetes,支持快速启动与灵活运行时。
- StratoVirt虚拟化:基于KVM的轻量级虚拟化方案,降低内存开销,支持Serverless场景。
- A-Tune智能调优引擎:通过AI算法实现7000+参数的自动调优,支持负载识别与自适应优化。
- AI软件栈:提供容器化SDK、AI框架(如PyTorch)、模型应用等镜像,简化AI开发环境部署。
5. 流水线与测试支持
- 门禁检查阶段:通过DevKit应用迁移工具、亲和分析工具等,拦截代码适配问题,提供多版本兼容性建议。
- 编译构建:自动化编译流程,支持多平台与BIOS/驱动适配。
- 测试阶段:
- 兼容性测试:覆盖OS、硬件、软件功能验证,确保鲲鹏平台适配。
- Java性能测试:集成JMeter工具,分析压测数据与优化报告。
- 版本发布:集成ClamAV病毒扫描,实现安全合规自动化检查。
6. 其他核心能力
- 存储优化:通过KAEzlib压缩、ECTurbo EC算法等,提升存储带宽与性能(如Ceph IOPS提升30%)。
- 网络加速:支持OVS流表卸载、DPDK多核并发,优化网络吞吐量。
- 调试扩展:支持CUDA、HPC并行、安全应用等场景调试,提升代码质量与运行效率。
7. 修订与支持
- 文档版本:01版本(2024-09-30发布),涵盖开发全流程工具与案例,支持在线/线下操作与多架构适配。
- 社区资源:openEuler提供超过3.5万软件包与CVE漏洞管理,支持企业迁移、构建与测试。
总结:鲲鹏原生开发通过全栈软硬件优化(鲲鹏硬件+openEuler+BoostKit),构建了覆盖代码开发、编译构建、调试调优及测试发布的完整生态。其以AI驱动的自动化工具链(如A-Tune、自动反馈优化)为核心,针对多场景(大数据、数据库、云手机、AI等)提供性能加速方案,同时保障安全性(如机密计算)和兼容性(如多架构适配),助力开发者高效实现鲲鹏平台应用开发与优化。
展开完整摘要
试读结束,高清完整版pdf/doc/ppt,请点下载