写点什么

Go 1.7 大幅缩短了编译时间

  • 2016-08-18
  • 本文字数:801 字

    阅读完需:约 3 分钟

据谷歌工程师 Chris Broadfoot介绍,Go 1.7 大幅缩短了编译时间,提高了运行时性能。它还增加了层次化测试和基准测试,并正式支持运行在IBM z 系统(s390x)上的Linux

正如 InfoQ 之前的报道,Go 1.7 的编译器改进主要是指,Go 有了一个基于静态单一指派(SSA)、面向amd64 平台的新编译器后端。得益于包括边界检查消除通用子表达式删除在内的多项高级优化,这个新的后端可以生成压缩率更高、执行速度更快的代码。谷歌的基准测试显示,运行时速度提升了5-35%,而编译时间和二进制代码大小减少了20-30%。事实上,基本测试可能差别很大,而据一些Hacker News 用户报告,构建速度提高了2 倍。

上面提到,新的SSA 后端只适用于amd64 平台。不过,据谷歌工程师Brad Fitzpatrick介绍,Go 1.8 的主要目标之一就是将其移植到所有支持的体系架构。Fitzpatrick 补充说,舍弃以前的后端应该可以同时简化前端,因为前端的研发目前是以新后端功能弱化为前提,需要做更多的工作。这可能会带来更大的性能提升。Go 1.8计划于2017 年2 月发布。要了解更多细节,请访问 GoLang 开发论坛

Go 1.7 还带来了其他值得注意的变化,包括子测试和子基准测试,让定义层次化测试和表驱动的基准测试成为可能。这是通过为-run-bench标识指定一个由斜杠分隔的正则表达式参数实现的,例如:

复制代码
go test -run Foo # 运行匹配“Foo”的顶层测试
go test -run Foo/A= # 运行匹配“A=”的 Foo 子测试
go test -run /A=1 # 运行所有匹配“A=1”的子测试

最后,Go 1.7 将 context 包纳入了标准库,让后者成为标准库的一部分。在进行有关网络的操作时,该包可以让取消、暂停和传递请求作用域数据变得更容易。Go 1.7 让 vendor 目录的使用成为标准,使开发人员可以使用外部依赖的本地副本,代替自动从 GOPATH或标准库获取。

要全面了解 Go 1.7 带来的新特性、改进和 Bug 修复,请查看发布说明

查看英文原文: Go 1.7 Brings Compiler Improvements and More

2016-08-18 19:003476
用户头像

发布了 1008 篇内容, 共 449.0 次阅读, 收获喜欢 346 次。

关注

评论

发布
暂无评论
发现更多内容

为什么 Go 开发者开始用 AI 写 Java?跨语言代码生成的隐藏技能与行业变革

飞算JavaAI开发助手

VMware ESXi 8.0U3e macOS Unlocker & OEM BIOS Inspur (浪潮) 定制版

sysin

esxi

HarmonyOS 如何获取设备信息(系统、版本、网络连接状态)

网罗开发

HarmonyOS HarmonyOS NEXT

java浅拷贝BeanUtils.copyProperties引发的RPC异常

京东科技开发者

【华为云MySQL技术专栏】Binlog压缩:节省存储,优化网络,提升性能

华为云开发者联盟

华为云 #Mysql

掌握设计模式--策略模式

不在线第一只蜗牛

设计模式

如何写出一份优秀的简历?

Y11

面试 找工作 招聘 找实习

StarRocks Lakehouse 如何重构大数据架构?

镜舟科技

大数据 存算分离架构 LakeHouse StarRocks 物化视图

Easysearch 索引生命周期管理实战

极限实验室

easysearch

如何构建安全可靠的 HarmonyOS 应用

网罗开发

鸿蒙 HarmonyOS HarmonyOS NEXT 实践分享

大数据从业者必知必会的Hive SQL调优技巧

京东科技开发者

Databend 产品月报(2025年4月)

Databend

AI 工具选型误区:为什么 “功能多” 不等于 “适合你”?

飞算JavaAI开发助手

端到端观测分析:从前端负载均衡到后端服务

观测云

可观测性

iVX:全场景数字化转型的技术重构

代码制造者

工业互联网 智慧城市 元宇宙

Go语言入门:(一)环境安装

北桥苏

GO语言编程

泛微亮相鸿蒙生态峰会:共建协同管理基石,助推数智办公“新样板”涌现

最新动态

如何高效使用氛围编程:一种与 AI 协作的新编程范式

baiyutang

编程 AI 开发 AIGC LLM

华为钱包,何以“碰”出未来?

脑极体

AI

《算法导论(第4版)》阅读笔记:p1-p1

codists

算法

谷歌报告:76% 的开发者依赖 AI 工具完成编写、解释代码等任务

飞算JavaAI开发助手

大数据平台与数据仓库的核心差异是什么?

镜舟科技

数据仓库 数据湖 大数据平台 StarRocks 湖仓一体

《高效能人士的七个习惯》中英双语配图

柯杰

高效能人士的七个习惯

蚂蚁百宝箱 3 分钟上手 MCP:6 步轻松构建 Qwen3 智能体应用并发布小程序

猫头虎

智能体 MCP

2025最新TikTok运营IP配置指南

Ogcloud

云手机 tiktok运营 海外IP 原生IP 本地IP

AI 智能体开发框架的特点

北京木奇移动技术有限公司

AI大模型 AI智能体 软件外包公司

AI 时代程序员生存指南:掌握工具者掌控职场主动权

飞算JavaAI开发助手

虚拟云环境中的高性能块设备:并行文件系统比较

Sergey Platonov

storage 高性能计算,

镜舟科技出席工业软件创新暨开源峰会,分享开源创新与生态协同实践

镜舟科技

AI 开源生态 工业软件 镜舟科技 生态协同

蚂蚁数科推出新区块链平台 驱动万亿级新能源资产RWA交易新生态

Lily

Go 1.7大幅缩短了编译时间_语言 & 开发_Sergio De Simone_InfoQ精选文章