【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

Rust 1.2 带来了更快的编译速度和并行代码生成

  • 2015-08-17
  • 本文字数:859 字

    阅读完需:约 3 分钟

Rust 核心团队宣布了 Rust 1.2 稳定版和 1.3 测试版的发布。Rust 1.2 主要集中在工具化、编译器性能的提高和引入并行代码生成。此外,引入了对 MSVC 工具链的支持。

以下是主要相关更新:

  • 更快的编译速度:Rust 1.2 的 benchmark compilation 使开发者的编译速度提升了大约 30%。在实际项目中,由于借鉴了 Rust 包存储库、 Crates ,其性能可以提升 1.16x–1.62x 倍,这一提升取决于目标项目。
  • 并行代码生成:主要对调试构建有用,当并行代码生成在 4 核机器上自举时,其提升了 33% 的编译速度。开启激活并行代码生成等同于使用 -O1 标记,将会阻碍一些优化。
  • Cargo:Rust 的包管理器同样得到了性能上的提升,特别是以下两种情况:当实施一个构建时不再需要任何重编译;和当在大型项目中使用共享目标目录时,可以缓存通用依赖包。
  • MSVC 工具链的支持:使用 Rust 1.2 时,Rust 编译器能够链接使用本地 Windows 工具链,然而, mingw 在以前的版本中就实现了这一功能。此外,如今 MSVC 是第一层平台,也就意味着所有 rust-lang crates 的测试都会在上面完成。
  • 语言的变化:随着强制添加的动态调整大小类型,增加了对动态调整大小类型的全面支持。动态调整大小类型是指那些在编译时大小未知的类型,比如 [T],表示 T 实例的顺序排列;比如 Trait, 表示某种实现了特征 Trait 的类型 T。动态调整大小类型在 Rust 1.0 时就已经存在了,通过使智能指针适用于现有类型,比如 [T] 和 Trait,使动态调整大小类型在 Rust 1.2 中完成实施。

至于 Rust 1.3 测试版本,它同样也带来了更好的性能,主要是标准库的提升。此外,尽管 Windows XP 不是首要考虑的对象,但 Rust1.3 将初步支持Windows XP

Rust1.2 的更多细节请查阅发布说明

查看英文原文: Rust 1.2 Brings Faster Compilation, Parallel Code Generation, and More


感谢张龙对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-08-17 01:512771
用户头像

发布了 92 篇内容, 共 22.9 次阅读, 收获喜欢 4 次。

关注

评论

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

【写给初发论文的人】撰写综述性科技论文常见问题

左手の明天

论文阅读 论文 论文写作 研究论文 论文撰写

Linux 下的传统 IPC 通信原理

北洋

Andriod 7月月更

云原生混部最后一道防线:节点水位线设计

阿里巴巴中间件

阿里云 云原生 中间件 混部

架构实战营模块 6 作业

Roy

架构实战营

1500万员工轻松管理,云原生数据库GaussDB让HR办公更高效

华为云开发者联盟

数据库 后端

当 Knative 遇见 WebAssembly

阿里巴巴中间件

阿里云 容器 云原生 Knative WebAssenbly

ServiceMesh主要解决的三大痛点

阿泽🧸

Service Mesh 7月月更

【刷题记录】2. 两数相加

WangNing

7月月更

牛客java选择题每日打卡Day8

京与旧铺

7月月更

Web开发小妙招:巧用ThreadLocal规避层层传值

华为云开发者联盟

Java 前端 web开发

华为小米互“抄作业”

科技新知

leetcode 53. Maximum Subarray 最大子数组和(中等)

okokabcd

LeetCode 动态规划 数据结构与算法

抖音或将推出独立种草社区平台:会不会成为第二个小红书

石头IT视角

解密函数计算异步任务能力之「任务的状态及生命周期管理」

阿里巴巴中间件

阿里云 中间件 异步 函数计算

SchedulX V1.4.0及SaaS版发布,免费体验降本增效高级功能!

星汉未来

DevOps 运维 k8s IT FinOps

阿里云易立:云原生如何破解企业降本提效难题?

阿里巴巴中间件

阿里云 架构 云原生

组织实战攻防演练的5个阶段

穿过生命散发芬芳

攻防演练 7月月更

offer如何选择该考虑哪些因素

KEY.L

7月月更

从解析HTML开始,破解页面渲染时间长难题

华为云开发者联盟

html 前端 web开发 网页

企业数字化转型,低代码是“趋势”还是“陷阱”?

云智慧AIOps社区

大前端 低代码 云开发

java零基础入门-Scanner类

喵手

Java’ 7月月更

Flutter3.0了,小程序不止于移动应用跨端运行

Speedoooo

flutter 小程序 移动开发 小程序容器 跨端运行

小程序能运行在自有App中,且实现直播和连麦?

Speedoooo

小程序 直播 移动开发 小程序容器 连麦

用头像模仿天狗食月

急需上岸的小谢

7月月更

阿里云中间件开源往事

阿里巴巴中间件

阿里云 开源 中间件

张平安:加快云上数字创新,共建产业智慧生态

华为云开发者联盟

云计算 后端 SaaS 华为云

HAVE FUN | “飞船计划”活动最新进展

SOFAStack

微服务架构 开源软件 新手引导

“去虚向实”大潮下,百度智能云向实而生

科技新知

从0开始创建小程序

小恺

7月月更

枚举通用接口&枚举使用规范

靠谱的程序员

枚举 企业应用 企业级应用

企业中台建设新路径——低代码平台

力软低代码开发平台

Rust 1.2带来了更快的编译速度和并行代码生成_语言 & 开发_Sergio De Simone_InfoQ精选文章