0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

峰会回顾第6期 | 毕昇编译器与OpenHarmony RISC-V生态的进展

OpenHarmony TSC 来源:OpenHarmony TSC 作者:OpenHarmony TSC 2023-05-05 15:46 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

演讲嘉宾 | 曾建江

回顾整理 | 廖 涛

排版校对 | 李萍萍

00b7b4ae-eb19-11ed-878e-dac502259ad0.png

嘉宾简介

曾建江,亚琛工业大学博士,华为毕昇编译器首席架构师、芯片软件协同设计部部长,拥有多年编译器与芯片软件协同设计经验,负责探索先进软硬件协同设计技术、工具以及方法。

文章内容来

第一届开放原子开源基金会OpenHarmony技术峰会——开发者工具分论坛

视频回顾

正 文 内 容

由C、C++Java等高级语言编码的人类可读源代码需要通过编译器编译,才能够被翻译成计算机可执行的目标代码。在特定硬件平台和编程语言的双重约束条件下,应用程序的性能主要依赖于程序员编写并行代码的能力和编译器的优化能力。华为多年自研的毕昇编译器做了哪些优化工作,又如何赋能OpenHarmony开源生态呢?华为毕昇编译器首席架构师曾建江在第一届OpenHarmony技术峰会上,分享了几点思考。

00c249aa-eb19-11ed-878e-dac502259ad0.png

01

毕昇编译器介绍

毕昇编译器是华为自主开发的一款专注于C和C++代码构建的系统底层组件,旨在发挥自研芯片的最佳性能。在鲲鹏服务器中,毕昇编译器能够与鲲鹏芯片协同,通过编译器技术充分发挥芯片的性能。目前,毕昇编译器for鲲鹏2.4.0版本的SPEC2017性能已经比GCC9.3提升了30%(测试环境及配置见https://www.spec.org/cpu2017/results/res2021q4/cpu2017-20211012-29727.html)。经过毕昇编译器优化的超算领域HPC TOP应用的性能平均提升了10%,让用户在鲲鹏硬件平台上能够体验到更好的业务性能。此外,毕昇编译器与鲲鹏携手已在政府、运营商、气象、水利等多个国民生行业落地商用,并持续在更多行业中拓展。今天,开发者可以方便地从鲲鹏套件中获取到最新版的毕昇编译器for鲲鹏(https://www.hikunpeng.com/zh/developer/devkit/compiler/bisheng)。

00cde4a4-eb19-11ed-878e-dac502259ad0.png

毕昇2.4.0版本与GCC的性能比较

毕昇编译器团队很早就加入到RISC-V社区的开发中,形成深度协同。目前,毕昇编译器已经基于RISC-V开发了MCU处理器,赋能穿戴智能终端,持续提升产品竞争力。此外,还积极参与OpenHarmony的生态建设工作,将MCU处理器上积累的Codesize和性能优化等编译优化技术能力赋能到OpenHarmony生态的众多其他设备上。

00d5d8ee-eb19-11ed-878e-dac502259ad0.png

毕昇编译器协同RISC-V

02

Codesize和性能优化

在RISC-V的应用当中,特别是面向MCU成本特别得敏感,而Codesize的压缩优化是节省MCU成本的有效方法之一。毕昇编译器采用了函数跳转压缩、跳转表压缩和Global Propagation增强等技术,进一步精简了编译的代码量。在函数跳转中,毕昇编译器基于RISC-V对整个跳转过程进行优化,将原先两条指令合成一条指令,每一次跳转能够节省32 Bytes的Codesize。在跳转表中,毕昇编译器采取基线地址偏移值代替绝对值的方法,保存表中相邻元素的地址差值(8 Bytes)而非元素本身(32 Bytes),从而达到压缩跳转表的目的。此外,毕昇编译器也通过全局变量传递的方法对其重复加载问题进行了优化。

在性能方面,由于函数调用涉及频繁的压栈和出栈操作,造成了不必要的性能开销。毕昇编译器采取了Shrink wrap增强技术,通过重新安排函数prologue和epilogue的位置以减少函数的栈保存操作。

00e1c5be-eb19-11ed-878e-dac502259ad0.png

毕昇编译器Shrink wrap增强

除了上述编译优化技术毕昇MCU编译器华为自研RISC-V扩展指令相配合让相关产品的软件获得领先的代码体积与性能收益。即使只使能RISC-V社区标准的IMFADC等扩展的指令,在不使用自研扩展指令的前提下,毕昇MCU编译器依旧能为开发者提供优秀的软件性能与代码体积。随着华为MCU类产品的商用交付的推进,华为和RISC-VMCU开发者将很快就能用上毕昇MCU编译器。

03

总结

未来,华为毕昇编译器团队将把毕昇编译器的优化技术和能力通过开源贡献到OpenHarmony社区,以此促进OpenHarmony软件生态的发展,让整个OpenHarmony生态都能够获得有竞争力的编译技术支撑。

E N D

点击下方阅读原文获取演讲PPT。

关注我们,获取更多精彩。


审核编辑黄宇


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 编译器
    +关注

    关注

    1

    文章

    1669

    浏览量

    51078
  • RISC-V
    +关注

    关注

    48

    文章

    2792

    浏览量

    51883
  • OpenHarmony
    +关注

    关注

    31

    文章

    3926

    浏览量

    20715
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    科技获第二十届“中国芯”RISC-V生态推广示范案例奖

    产品应用示范”案例,成功斩获“RISC-V生态推广示范案例奖”。这一荣誉不仅是对芯科技在RISC-V领域技术实力与应用成果的高度认可,也彰显了其在推动国产芯片
    的头像 发表于 11-21 17:01 3040次阅读
    芯<b class='flag-5'>昇</b>科技获第二十届“中国芯”<b class='flag-5'>RISC-V</b><b class='flag-5'>生态</b>推广示范案例奖

    大湾区RISC-V生态全景展示:RISC-V生态发展论坛、开发者Workshop和生态应用专区

    继7月份上海的RISC-V中国峰会之后,中国RISC-V生态和产业发展最新动态将在10月份深圳的湾芯展上全景展示。   RISC-V,这个以
    的头像 发表于 10-13 09:18 308次阅读
    大湾区<b class='flag-5'>RISC-V</b><b class='flag-5'>生态</b>全景展示:<b class='flag-5'>RISC-V</b><b class='flag-5'>生态</b>发展论坛、开发者Workshop和<b class='flag-5'>生态</b>应用专区

    普华基础软件亮相2025 RISC-V中国峰会

    此前,7月16日至18日,第五届RISC-V中国峰会在上海盛大召开。普华基础软件副总经理兼战略研究院院长张晓先受邀参会,发表《开源小满助力RISC-V软硬协同生态发展》主题演讲,分享了
    的头像 发表于 07-28 16:51 916次阅读
    普华基础软件亮相2025 <b class='flag-5'>RISC-V</b>中国<b class='flag-5'>峰会</b>

    奕斯伟计算亮相2025 RISC-V中国峰会

    近日,第五届RISC-V中国峰会在上海张江科学会堂举行,作为与“北美峰会”、“欧洲峰会”齐名的全球RISC-V领域三大顶级盛会之一,本届
    的头像 发表于 07-22 17:34 932次阅读

    时擎科技亮相2025 RISC-V中国峰会,深度解析高性能RISC-V SoC技术挑战与创新

    2025年7月16-18日,第五届RISC-V中国峰会在上海张江科学会堂成功举办,作为全球RISC-V领域顶级盛会之一,本届峰会汇聚了数百家企业、研究机构及开源社区,共同探讨
    的头像 发表于 07-21 17:37 1372次阅读
    时擎科技亮相2025 <b class='flag-5'>RISC-V</b>中国<b class='flag-5'>峰会</b>,深度解析高性能<b class='flag-5'>RISC-V</b> SoC技术挑战与创新

    RISC-V 发展态势与红帽系统适配进展

    2025 年 7 月 18 日,在第五届(2025)RISC-V 中国峰会的软件与生态系统分论坛上,红帽软件(北京)有限公司首席软件工程师、RISC-V 国际基金会大使傅炜分享的主题是
    发表于 07-18 10:55 3869次阅读
    <b class='flag-5'>RISC-V</b> 发展态势与红帽系统适配<b class='flag-5'>进展</b>

    兆松科技发布高性能RISC-V编译器ZCC 4.0.0版本

    近日,兆松科技(武汉)有限公司(以下简称“兆松科技”)宣布正式发布高性能 RISC-V 编译器 ZCC 4.0.0 版本。新版本在性能优化、厂商自定义指令支持和软件库等方面实现全面升级,并同步推出
    的头像 发表于 06-27 14:48 2230次阅读
    兆松科技发布高性能<b class='flag-5'>RISC-V</b><b class='flag-5'>编译器</b>ZCC 4.0.0版本

    RISC-V架构下的编译器自动向量化

    高性能算力生态的建设,正投入编译器自动向量化优化等多项关键技术,全面助力RISC-V的高性能发展。RISC-V向量设计SpacemiT在现代CPU中,向量支持是算力的
    的头像 发表于 06-06 16:59 929次阅读
    <b class='flag-5'>RISC-V</b>架构下的<b class='flag-5'>编译器</b>自动向量化

    明晚开播 |开源芯片系列讲座26:奕斯伟RISC-V GCC工具链实践分享

    简介RISC-V的开放性和模块化设计使得研究人员、开发者和企业能够自由地使用、扩展和优化这一架构,推动了计算机硬件与软件技术的共同进步,RISC-V编译器的开发成为
    的头像 发表于 01-21 08:04 797次阅读
    明晚开播 |开源芯片系列讲座<b class='flag-5'>第</b>26<b class='flag-5'>期</b>:奕斯伟<b class='flag-5'>RISC-V</b> GCC工具链实践分享

    直播预约 |开源芯片系列讲座26:奕斯伟RISC-V GCC工具链实践分享

    分享报告简介RISC-V的开放性和模块化设计使得研究人员、开发者和企业能够自由地使用、扩展和优化这一架构,推动了计算机硬件与软件技术的共同进步,RISC-V编译器的开发
    的头像 发表于 01-14 09:52 903次阅读
    直播预约 |开源芯片系列讲座<b class='flag-5'>第</b>26<b class='flag-5'>期</b>:奕斯伟<b class='flag-5'>RISC-V</b> GCC工具链实践分享

    圣诞特辑 |开源芯片系列讲座25RISC-V架构在高性能领域的进展与挑战

    鹭岛论坛开源芯片系列讲座25RISC-V架构在高性能领域的进展与挑战」圣诞夜(周三)20:00精彩开播期待与您云相聚,共襄学术盛宴!|直播信息报告题目
    的头像 发表于 12-24 08:03 1165次阅读
    圣诞特辑 |开源芯片系列讲座<b class='flag-5'>第</b>25<b class='flag-5'>期</b>:<b class='flag-5'>RISC-V</b>架构在高性能领域的<b class='flag-5'>进展</b>与挑战

    HighTec C/C++编译器套件全面支持芯来RISC-V IP

    德国萨尔布吕肯,2024年12月5日——世界领先的汽车C/C++编译器解决方案提供商HighTec EDV Systeme GmbH宣布全面支持芯来科技的RISC-V IP。HighTec编译器
    的头像 发表于 12-23 09:04 1997次阅读
    HighTec C/C++<b class='flag-5'>编译器</b>套件全面支持芯来<b class='flag-5'>RISC-V</b> IP

    RISC-V架构及MRS开发环境回顾

    的指令集使用模块化的方式进行组织,每一个模块使用一个英文字母来表示。RISC-V最基本也是唯一强 制要求实现的指令集部分是由I字母表示的基本整数指令子集,使用该整数指令子集,便能够实现完整的软件编译器
    发表于 12-16 23:08

    直播预约 |开源芯片系列讲座25RISC-V架构在高性能领域的进展与挑战

    鹭岛论坛开源芯片系列讲座25RISC-V架构在高性能领域的进展与挑战」12月25日(周三)20:00精彩开播期待与您云相聚,共襄学术盛宴!|直播信息报告题目
    的头像 发表于 12-13 17:01 763次阅读
    直播预约 |开源芯片系列讲座<b class='flag-5'>第</b>25<b class='flag-5'>期</b>:<b class='flag-5'>RISC-V</b>架构在高性能领域的<b class='flag-5'>进展</b>与挑战

    HighTec C/C++编译器支持Andes晶心科技RISC-V IP

    汽车编译器解决方案领先供货商HighTec EDV-Systeme GmbH宣布其针对汽车市场的高度优化C/C++编译器支持Andes晶心科技的RISC-V IP。这项支持对汽车软件开发人员来说是一
    的头像 发表于 12-12 16:26 1558次阅读