RUST 和 GO那個效能更好?

時間 2022-01-12 14:43:06

1樓:Sunface

Rust在執行效能上各個方面的效能都要比Go好不少,Rust也沒有GC,所以不存在Stop the world`問題,再加上Rust更容易做一些底層優化:

例如Rust可以通過#[repr(align(64))]`這個屬性標記強制進行記憶體對齊,在需要命中CPU快取的場景是非常有用的,具體見[這篇文章]。

不過效能是相對的,很多時候我們並不需要極致的效能,所以在技術選型時,先考慮你的場景最需要的是什麼。

在下文中,有關於各自效能的一些對比資料:

Sunface:碼江湖之決戰紫禁之巔 - Rust Vs Go

2樓:

不限定使用場景就說哪個效能好完全是不負責任的瞎扯淡比如極大量使用攜程的場景go的效能通常不比rust差大量使用大整數的計算往往go效能更好因為go標準庫的大整數是專門拿彙編寫的 rust標準庫不提供

特定場景甚至能找到乙個你沒聽過的指令碼語言比rust go都快指定場景sbcl的common lisp都能比rust快讓rust沒脾氣

所以這問題問的實在沒水平

3樓:ClSlaid

Rust 愛好者,目前處於 Guessing Game 水平;目前打工開發資料庫用 GoLang。

要說效能,那往往是 Rust 更好。更多的編譯期優化、無 GC 等特點加持,開發高效能應用自然是 Rust 效能高。據統計利用 Rust 開發的 RipGrep 效能甚至賽過使用 C 開發的 Grep.

但是效能不是唯一考量,當你糾結 Borrow Check,糾結 unsafe,糾結 copy clone,糾結各種奇怪的型別限制的時候;當你 cargo build 怒草電腦風扇三分鐘的時候;人家 GoLang 可能早就發兩個版了。

同時 Rust 的語法花活眾多,遍歷陣列可以寫迴圈也可以 for_each() 一行流。不像 GoLang 那麼白開水誰寫都差不多乙個味道,經常第一天想到神來之筆快樂 Coding 到半夜第二天爬起來發現昨晚寫的都甚麼東西看不懂不如蜘蛛爬,這是墜痛苦的!

不過俺還是更喜歡 Rust。

4樓:

執行效能肯定是 Rust 不用想了。 Go 的 GC 和排程器都要吃資源。以後也不會超越,因為他們的出發點就不一樣。

但是。。。你真的關心這種效能嗎?

5樓:RustDesk

Rust對標的是C/C++, 當然效能更好。

看看Google的評價。

如果Go更好,Google自然選擇自家的Go作為下一代Android OS開發語言,而不是別人的Rust.

rustdesk/rustdesk

6樓:Spade

Rust沒有gc,沒有複雜的記憶體管理,go的gc經過了這麼多次迭代才提公升得算還能接受,go計算效能上benchmark也跑不過rust,rust甚至好於c++

PS: 學習角度來看,rust很值得學習,不論是設計理念還是語言哲學,但是從職業角度來說,go有更大的生態和成熟的產品背書,整個行業已經開始轉向go了,這個趨勢會遠遠快於rust,畢竟大家都是出來恰飯的。

Go和Python的非同步效能那個對於後端更好?

euphoria 如果單核的話,通道可以最大化效能,如果多核的話,無論哪種語言都有難度。go 語言也很容易掉落坑里,而且並不是所有業務都適合非同步和併發。There s an absolutely amazing library for Haskell called Haxl,that automa...

對比 Go 語言,Rust 有什麼優勢和劣勢?

何志斌 Rust的優勢很多帖子提到了,劣勢我覺得有二 遠不如Go簡單。不要低估這一點,簡單的東西不容易犯錯。Rust背後的Mozilla,比Google差遠了。 茹姐 go定位是雲計算時代的C語言,主要是面向雲計算領域。而rust是系統級語言,更Low level一些 都是強型別語言,go有GC而r...

麒麟9000e和麒麟990哪個效能更好?

張輿 華為是家優秀的公司,從麒麟980開始就有了真正能撼動驍龍8系的能力。首先要對比肯定需要了解麒麟9000e是個什麼概念的產品。如圖所示,9000e在cpu上沒有閹割,gpu少了16 這點效能9000一旦發熱降頻效能差距就幾乎沒有,剩下閹割的ai效能也根本察覺不到。既然這樣,其實麒麟9000e就無...