86
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
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 6 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Wasn't rust suppose to both more performant and more memory safe than it's C counterparts?
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.
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.
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".
@Strit @rezad Memory and thread safe yes. Performance was more roughly equal, could be faster or slower depending on use case.
Rust never claimed to be more performant than C. Its performance is equivalent to C.
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.you can still mostly hand-write assembly in rust
Sure, but at that point you can also just write assembly. I'm talking about "idiomatic" code in the language itself.
It's more a thing like in ripgrep vs. grep; new algorithms being vastly faster in most cases except in some.