Mozilla的Rust提高了速度,並且更加簡潔

2021-08-19 12:23:33 字數 827 閱讀 8843

mozilla優化了rust語言的編譯器,提高了編譯速度和執行效率,型別檢查**更加明確。

更新的內容,上週mozilla已經發布在了部落格上。這次更新,引入了rust的開發者叫它「中間層」(midlevel intermediate representation,mir)的步驟,這是編譯過程中額外的乙個步驟,在分析源**和型別檢查之後,llvm編譯器框架和轉換成機器碼之前。

表面上看起來,這是自相矛盾的——如果mir在編譯的過程增加了額外的步驟,那怎麼能提高編譯速度?

rust的工程師解釋道,mir的目的是去掉rust的語法內容,將其程式設計更簡單的**結構,使編譯器更容易操作。但是這種**對程式設計師來說是不友好的,所以使用mir來自動生成,這意味這編譯器可以處理更加結構化、更容易優化的**。

這種方式也有先例。比如蘋果的swift語言,使用llvm編譯,也有類似的中間層,叫做sil.但不像rust使用mir那樣,swift使用sil的優化並不能簡單地配合llvm實現,比如swift使用引用技術進行記憶體管理等原因。

rust工程師說,使用mir有很多好處。比如,編譯器可以只重新編譯改變了的部分,這樣,通過只處理新的mir語法的**,可以提高速度。

通過mir,可以做很多針對rust的優化(不由llvm實現)。比如一些計畫的優化例如記憶體清理得以實現。

那麼什麼時候可以使用這項特性呢?答案是:很快。因為mir這想工作從提出到實現已經有一年多了,所以現在的展示幾乎是乙個結束的宣告,而不是開始。

rust的開發者說:「等我們crater(rust的編譯測試)對mir的測試結果良好了,我們將會把它設定為預設開啟。」

原文:

Wi Fi 6第2版提高了上傳效能和電源管理

wi fi聯盟剛剛宣布了wi fi 6 release 2程式設計客棧標準。它改進了上行鏈路以及所有受支援頻段 2.4ghz 和6ghz 的電源管理,適用於家庭www.cppcns.com和工作場所的路由器和裝置以及智慧型家庭物聯網裝置 版本2增加了對多使用者mimo上行鏈路的支援 多個連www.c...

碰撞的電子,提高了量子計算機上化學模擬的準確性

量子計算機就其本質而言,非常適合幫助科學家們在化學領域取得突破性發現,因為它可以比經典計算機,更有效地進行分子模擬。隨著量子計算機能力的提公升,以及過程中對其更深入的理解,人類也許很快就能精確地 分子的性質,結果與實際的實驗相比不相上下。要想準確描述分子,需要在許多競爭效應中達到微妙的平衡,而這又需...

想研究一下人才培訓內容,發現英語該提高了

最近想至上而下地看看整個微軟相關的體系架構。現有整體吧。例如,c11 29個庫,c 11有50個庫,其中21個沿用c,13個是stl。win32開發的庫或類的分類。需要整體理解,比較中整理。然後細化,安排自己或學習能力強的人逐個蠶食消化。做這個算是人才培訓方向之前,自己先搞懂技術分類和學習成本,技術...