Facebook 使用机器学习优化编译器
Facebook 近日宣布了 CompilerGym 项目,这是一个用于执行编译器优化任务的高性能、易于使用的强化学习 (Reinforcement Learning, RL) 环境库,用于解决生产环境中的编译器优化问题。
CompilerGym 由 Facebook 的 AI 团队在 OpenAI Gym 之上构建,并最终致力于帮助提高代码编译器的性能。他们在公告中表示:“CompilerGym 对重要的编译器优化问题进行了打包,并使它们看起来像强化学习问题。我们引入的编译器优化问题规模很大。例如搜索空间为 104461,远大于围棋的搜索空间。但另一方面,搜索空间又是无限的。得益于强化学习的最新进展,这种规模的问题第一次有可能取得进展。CompilerGym 让任何具有 ML 或编译器背景的人都可以轻松地直接投入并开始解决问题,而无需花费通常需要的数月繁琐配置时间。这是因为我们已经为你完成了这些工作!”
开发团队还补充道,“我们的目标是成为通过 ML 让编译器速度更快的催化剂,因为程序如果优化不当会非常慢,并且消耗过多的计算资源和能源,限制了节能边缘设备的应用,使数据中心不那么环保。”
据介绍,在此项目的第一个版本中,Facebook 为三个编译器问题提供了强化学习环境: 使用 LLVM 进行相位排序、使用 GCC 调整 flag,以及使用 CUDA 循环嵌套生成。他们还提供了用于训练的大量程序数据集、验证结果可重复性的脚本、公共记分榜和 Web 前端。随着时间的推移,他们计划为其他成熟的编译器问题提供支持,包括寄存器分配、窥孔优化 (peephole optimization) 和循环优化。开发团队还希望增加更多的任务、奖励、观察和行动,旨在通过这些举动让编译器和 ML 研究社区更加紧密地联系在一起。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
索尼计划加速对开源/Linux 的贡献
索尼在上周的Linux 基金会开源峰会/嵌入式 Linux 会议上介绍了该公司与开源/Linux 的历史,以及其自去年以来在"加速"开源贡献方面的举措。 索尼公司的 HiroyukiFukuchi 和 KazumiSato 在演讲中介绍了,在过去 20 年里他们在消费电子产品中使用开源软件代码以及 Linux 的方式,以及他们与开源的关系在此期间的演变。同时透露了该公司在建立开源项目办公室的相关工作,并阐述了他们在近期的贡献方面的转变。 根据介绍,索尼方面认为,自 2000 年初开始在数字录像机上使用 Linux 以来,他们的嵌入式 Linux 使用已经超越了成长阶段,从机器人和医疗产品到消费电子的广泛产品中都依赖着 Linux/开源。 近年来,索尼围绕开源建立了很多的内部培训,明确了其工程师对上游开源的贡献政策。现在随着该公司"2020-"阶段的到来,他们则计划"加速贡献"于 Linux;还计划"从电子产品扩展到其他领域",如游戏和电影领域。 目前还没有有关索尼演讲详细会议记录,感兴趣的用户可以查看幻灯片(PDF)以了解更多内容。
- 下一篇
Polar Signals 开源 Parca 以优化代码并减少云账单
Polar Signals宣布推出Parca 项目,一个开源的持续分析存储、查询引擎和一个基于 eBPF 的 profiler。旨在通过系统地测量代码性能将可观察性空间提升到一个新的水平,使每个人都能够优化他们的代码。目前,该项目尚处于非公开测试阶段。 同时 Polar Signals还透露,其已经从 Alphabet 的风险投资部门 GV 和 Lightspeed 筹集了 400 万美元的种子资金。该公司表示,这笔资金将用于加快 Parca 及其托管的持续分析产品的开发,并将用于扩大其工程和技术团队。 Polar Signals 由前 Red Hat 高级首席工程师、前 CoreOS 工程师、活跃的 Prometheus 维护者和活跃的 Kubernetes 技术负责人 Frederic Branczyk 于 2020 年创立。目标是为运行软件带来独特的深度洞察,帮助客户了解资源使用情况,直至源代码行号,例如 CPU 周期、内存分配等。最常见的用例之一是优化代码以节省来自 AWS、Azure 或 Google Cloud 的云账单的能力。 根据介绍,Parca旨在将持续分析技术带给所...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2全家桶,快速入门学习开发网站教程
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- MySQL8.0.19开启GTID主从同步CentOS8
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- Hadoop3单机部署,实现最简伪集群
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7