BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

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

| 作者 Sergio De Simone 关注 14 他的粉丝 ,译者 陆志伟 关注 1 他的粉丝 发布于 2015年8月18日. 估计阅读时间: 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读者交流群InfoQ好读者)。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

更新各自为政 by 刘 肖

支持XP毫无意义

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

1 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT