Warning: Undefined global variable $debug in /var/www/ourcoders/tiny4cocoa/application/controllers/baseController.php on line 124
开源中国 2019-09-02 00:00:00 发布的技术动态 - OurCoders (我们程序员)
开源中国
2019-09-02 00:00:00 发布
#方舟编译器#【为何要搞 10 年?方舟编译器专家首次回应】网页链接上周六华为正式开源了方舟编译器,一时间引起热议。在方舟技术专家所在的微信群中,关于为何方舟需要研发 10 年的问题被首次回应。方舟专家不闲介绍,首先在构思方舟的时候华为并没有选择 C++,是因为国内生态开发者主要还是 Java/Kotlin 为主,而 Java 本身是动态语言,如果要能够在服务器侧做到静态编译,又不能动手裁剪语言的动态能力,就需要 IR,运行时,编译器以及编程框架一起修改。这还要考虑复杂的兼容问题,导致技术方案选型的困难。其次要想提高流畅度,需要提升内存使用效率、提升 JNI 效率,需要想尽办法控制动态绑定对性能的影响,需要 profile 上有更准确的信息,这是系统工程上的困难。不闲表示,其实二进制编译也只是一种技术路线,简单的 AOT 也是生成二进制,问题的关键是如何提升编译后的代码执行效率,这是当前的主要困难。做出一个可以工作的不难,难在做出世界顶尖性能。“甲骨文、Jetbrains 等很多海外公司都在做类似尝试,如果不是有大牛压台……我们国内能做 IR 设计和内存模型的人很少,大家也都不再用汇编编程了。”欢迎点击链接:网页链接 阅读原文并留言探讨。