Rust 1.2帶來了更快的編譯速度和并行代碼生成

jopen 9年前發布 | 8K 次閱讀 Rust

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

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 的更多細節請查閱發布說明

來自: InfoQ
 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!