this post was submitted on 16 Sep 2025
86 points (97.8% liked)

Linux

58306 readers
1029 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 6 years ago
MODERATORS
 

Ubuntu 25.10's transition to using Rust Coreutils in place of GNU Coreutils has uncovered a few performance issues so far with the Rust version being slower than the C-based GNU Coreutils. Fortunately there still are a few weeks to go until Ubuntu 25.10 releases as stable and upstream developers are working to address these performance gaps.

you are viewing a single comment's thread
view the rest of the comments
[–] Strit@lemmy.linuxuserspace.show 12 points 3 days ago (6 children)

Wasn't rust suppose to both more performant and more memory safe than it's C counterparts?

[–] savvywolf@pawb.social 71 points 3 days ago

Rust and C are the same "tier" of performance, but GNU coreutils has the benefit of several decades of development and optimization that the Rust one needs to catch up with.

[–] ptmb@lemmy.zip 39 points 3 days ago* (last edited 3 days ago) (1 children)

Language isn't everything. While Rust provides some features and safety that C doesn't while being roughly equivalent in performance, the algorithms that developers choose will dominate the performance impact on the program.

GNU core utils has decades of accumulated knowledge and optimisation that results in the speed it has. The Rust core utils should in theory be able to achieve equivalent performance, but differences in the implementation choices between one and another, or even something as simple as the developers not having prioritised speed yet and still focusing on correctness could explain the differences that are being reported.

[–] TMP_NKcYUEoM7kXg4qYe@lemmy.world 1 points 12 hours ago

Well the entire point of the project is that they used algorithms/features of Rust that make it easier to write fast code. This article basically reports on a "bug". Uutils are in many ways already faster than Coreutils.

Correctness is really more of a byproduct of using Rust. Coreutils have had only a few CVEs in their lifetime so it would be sort of redundant to rewrite them in Rust for "correctness".

[–] mark@social.cool110.xyz 18 points 3 days ago

@Strit @rezad Memory and thread safe yes. Performance was more roughly equal, could be faster or slower depending on use case.

[–] communism@lemmy.ml 6 points 3 days ago

Rust never claimed to be more performant than C. Its performance is equivalent to C.

[–] balsoft@lemmy.ml 8 points 3 days ago (1 children)

Rust is fundamentally more limiting than C, even with unsafe. It is often faster if you write naive code (because the Rust compiler can optimize more aggressively due to those same limitations), but an experienced developer with a lot of time for optimization will probably be able to squeeze more performance out of C than they would out of Rust - as you can see in this example. Rust is still better because those limitations all but guarantee that the resulting code will be safer, and the performance differences would be negligible all things considered.

[–] jumping_redditor@sh.itjust.works 2 points 3 days ago (1 children)

you can still mostly hand-write assembly in rust

[–] balsoft@lemmy.ml 7 points 3 days ago

Sure, but at that point you can also just write assembly. I'm talking about "idiomatic" code in the language itself.

[–] MonkderVierte@lemmy.zip 4 points 3 days ago

It's more a thing like in ripgrep vs. grep; new algorithms being vastly faster in most cases except in some.