9月7日,首场方舟编译器开源技术沙龙在华为北京研究所举办。行业专家、高校学者、应用开发者和方舟编译器专家齐聚一堂,以方舟编译器开源为主题,围绕基础软件发展、开源社区构建、开源生态建设等方面进行了深入讨论。这也是8月31日方舟编译器正式开源后,首次面向行业组织的线下技术交流会议。

首场方舟编译器开源沙龙现场

华为消费者业务软件部开源项目主管做了开场致辞,介绍了开源目的、目前的进展以及下一步计划。目前,开源项目组在国内已与数十位行业顶尖编译器学者进行了交流合作;同时,在欧洲进行了多场探索开源共建的研讨会。此外,项目组将在全球开展高校开发者拓展计划,发布系列开源共建课题,希望在校学生和编译器专业科研者都能参与进来;针对专业开发者,项目组将在社区持续公布TODO特性,欢迎开发者分享代码。

十年磨一剑,开源引领行业发展

活动现场,方舟编译器架构师介绍了方舟编译器的研发历程及未来发展路标。他表示,早在2009年华为就创建了编译组,经过10年的研发,方舟编译器正式在今年发布并宣布开源。

被称之为“革命性突破”的方舟编译器,其最大优势是首次在Java领域用方舟编译器替代了语言虚拟机的静态编译器,在软件史上首次将Java/C/C++等混合代码一次编译成机器码直接在手机上运行,彻底告别Java的JNI额外开销,解决安卓生态碎片化造成的代码优化空间有限以及内存回收机制造的间歇性卡顿,从原来的边解释边执行转变为全程机器码高效运行程序,大幅提升了安卓应用的运行效率。

8月31日,方舟编译器开源官网正式上线,开发者可以通过官方网站及代码托管网站获得相关代码和文档,供参考学习、了解方舟编译器的架构和代码。方舟编译器的开源不仅是一种技术的外放,更是华为引领行业共同构建生态与社区,这是中国底层软件开源之路的探索。 方舟编译器的开源工作也将陆续展开,华为将把软件方面的技术能力在社区中不断贡献给行业,与行业一起探寻更好的、更符合时代需求的软件技术。

方舟编译器架构师对方舟编译器的架构、中间语言、Java语言特性以及RC插入的设计和实现进行了深入浅出的讲解。他指出,目前方舟编译器开源的是编译器框架部分源码,包括编译器中间表示(IR)和语言编译实现,同时搭配编译器其他二进制组件,实现Java程序到aarch64汇编指令的编译过程。开发者可基于开源代码+二进制,编译构建出编译器工具链,尝试对Java程序进行编译。未来方舟编译器将针对前端、后端陆续开源,并支持其它语言的编译等。

专家学者共话发展,共建全新移动应用生态

本次活动邀请了清华大学教授陈文光、中科院计算所研究员冯晓兵、北京理工大学副教授计卫星等专家学者进行了专题演讲,分享了他们对方舟编译器开源的生态建设、社区建设及基础软件开发的看法。

清华大学教授陈文光

清华大学教授陈文光作了《稀疏张量编译器初步研究》的主题演讲,分享了他在GPU上初步开展的稀疏张量编译器研究工作和进展,帮助开发者们更好的理解软件开发编译,为开发者们如何高效开发带来新思路。

中科院计算所研究员冯晓兵

以编译系统及相关工具为研究方向的中科院计算所研究员冯晓兵认为,方舟编译器对于国内基础软件开发带来的意义更为深远。此前为软件底层贡献核心技术的公司主要来自于欧美,华为通过多年的持续研发投入推出方舟编译器,让大家在这个领域看到了中国企业的身影,这无疑大大提振了国内开发者们对于基础软件开发的信心。同样,冯晓兵研究员也为开发者介绍了为深度学习网络提出的一种新的数据格式和一些优化技术,可有效利用输入数据的稀疏性,加速神经网络的执行效率,让与会者获益匪浅。

北京理工大学副教授计卫星

北京理工大学副教授计卫星现场对编译器部分开源代码进行了分析,并分享了编译器的初步运行测试结果,从科研和教学两方面探讨了方舟编译器开源社区构建的基本想法。他认为,方舟编译器的开源对高等院校科研方向和软件开发专业人才培养提供了一个契机,一方面是高校可以结合方舟编译器进行更加深入的研究,不断提升科研实力并输出科研成果;另一方面可在教学过程中,引导高校师生关注方舟编译器并参与开源社区的建设,通过互动交流,提升对基础软件开发的投入研究。

方舟持续开源,合力共推实现多方共赢

据华为官方公布的消息,方舟编译器从2019年8月开始,将持续进行开源。目前已对编译器框架部分开放源码之后,预计将在2020年对Java编译器工具链开源,支持Java程序编译。2021年将对JavaScript编译器工具链开源,可用于JS程序的编译。

方舟编译器的持续开源,可以让更多的科研机构、高校院所、第三方厂商和广大开发者参与进来,源码才会在不断地重构和优化中激活、升华,开发者们可以共同分享技术的进步。

坚持开放、合作、共赢的华为,通过持续的开源,将自己在软件方面的技术能力不断贡献给行业,同时在开源社区中,更多的开发者可以参与并贡献自己的力量,不断推进产业创新与开放生态构建。华为期待更多合作伙伴加入方舟阵营,合力共推基础软件的发展。

方舟编译器官方渠道:

官方网站:https://www.openarkcompiler.cn

代码托管网站:https://code.opensource.huaweicloud.com/HarmonyOS/OpenArkCompiler

码云镜像仓库地址:https://gitee.com/harmonyos/OpenArkCompiler

方舟编译器开源技术沙龙北京站首秀:让开源激活软件开发的潜力相关推荐

  1. 物联网开放平台全面赋能生态伙伴,电信“天翼物联开发者大赛”技术沙龙北京站如期举行...

    物联网开放平台全面赋能生态伙伴,电信"天翼物联开发者大赛"技术沙龙北京站如期举行 [中国▪北京]12月7日,中国电信携手华北地区生态伙伴齐聚京城,共话物联网产业生态未来.本次沙龙以 ...

  2. Gluten 首次开源技术沙龙成功举办,更多新能力值得期待

    2023年2月17日,由 Kyligence 主办的 Gluten 首次开源技术沙龙在上海成功举办,本期沙龙特邀来自 Intel.BIGO.eBay.阿里.华为和 Kyligence 等行业技术专家齐 ...

  3. 麒麟信安出席开源技术沙龙发表主题演讲

    为加快培育本地开源生态,搭建开源领域交流合作平台,9月20日,在长沙市工业和信息化局的指导下,开放原子开源基金会的支持下,长沙市软件和信息技术服务业促进会举办开源技术沙龙活动,旨在共同探讨开源事业,共 ...

  4. 源聚一堂 | 开源技术沙龙(深圳站)顺利举办

    12月2日,由开放原子开源基金会主办,深圳市优博讯科技股份有限公司承办的源聚一堂开源技术沙龙(深圳站)顺利举办.本次活动是「源聚一堂」开源技术沙龙系列活动的第四站,旨在普及开源理念.传播开源知识,搭建 ...

  5. Spring Cloud 中国社区一周年技术沙龙-北京站

    一.活动介绍 随着云计算.互联网公司云化基础设施.标准化代码管理等日趋成熟,DevOps.持续交付等概念深入人心,为传统IT系统的微服务云化扫清了技术和文化障碍,微服务在企业IT架构或云转型过程中发挥 ...

  6. 错过“复联4”在所不惜,迅雷链技术沙龙北京站有哪些更精彩的地方?

    整理 | 传神 出品 | 区块链大本营(blockchain_camp) 4月27日,由迅雷集团主办的"链创未来--迅雷链技术沙龙"在北京中关村创业大街车库咖啡如期举行.本期沙龙作 ...

  7. 采用开源技术的好处_采用开源的6个技巧

    采用开源技术的好处 开源代码以较低的成本推动了更多开发人员的协作创新,这就是联邦机构采用"开源优先"模式的原因. 实际上,总务管理局(General Services Admini ...

  8. 技术大牛总结的Github与华为软件开发云完整对比

    http://www.jianshu.com/p/e17c7abb3bde 华为软件开发云配置管理 服务和Github是国内外比较有代表性的代码托管平台,它们以git作为版本管理工具,使项目中身处各地 ...

  9. 从零开始学习音视频编程技术(二十一) 录屏软件开发之最终完善

    原文地址:http://blog.yundiantech.com/?log=blog&id=28 上面我们已经生成了录屏的视频,然而这个视频并不是理想中的那样,随时时间的增加,音视频会越来越不 ...

最新文章

  1. gitee使用svn_Gitee SVN支持
  2. E-MapReduce上如何升级EMR-Core
  3. Mysql union联合查询_Mysql联合查询union和union all的使用介绍
  4. virtual hust 2013.6.20 数论基础题目 E - Uniform Generator
  5. CMD-NET命令详解
  6. oracle+in条件优化,Oracle语句优化30个规则详解
  7. Html 中的特殊符号表示
  8. Python学习报告
  9. 我失窃的信用卡资料在4500英里外被使用,我试图找出它是怎么发生的
  10. 如何在H5页面上添加音乐播放
  11. 不放弃每一个节日,植树节也能玩H5营销
  12. CISSP-D2-资产安全
  13. c# 实现金山词霸一样的屏幕取词
  14. Docker初级:Docker常用命令总结
  15. 【考研政治】马哲常考的50个成语哲学原理总结 快码上!
  16. 【持续更新】java多线程面试题整理
  17. MySQL查询最大值(最小值)或前n个最大(最小)值的方法分析
  18. 2020蓝桥杯C-B组模拟赛—有趣的数字
  19. 写给想要开始跑步的人
  20. 项目规划中的Epic、Feature、Story和Task的关系

热门文章

  1. 如何编写一个好的测试用例
  2. 正则表达式和Java编程语言1zz
  3. 《Linux编程》课堂测验 ·002【Shell编程】
  4. ROS学习——3 roslaunch的使用
  5. pip install 到指定的目录下,查看pip包位置
  6. python建立虚拟环境付款_python 创建虚拟环境(virtualenv)
  7. c++求矩阵的秩_一文搞定矩阵相关概念 使用Excel矩阵计算不用愁
  8. Flutter基础—布局模型之水平垂直
  9. 中国近红外成像行业市场供需与战略研究报告
  10. 中国抗生素骨水泥行业市场供需与战略研究报告