• LeFantome@programming.dev
    link
    fedilink
    arrow-up
    6
    ·
    edit-2
    6 hours ago

    The best thing about all the C smugness here is how quickly it backfired.

    Out of dozens of utilities in uutils, two were slower than the GNU equivalents. In case the logic escapes some, that means that the others were already as fast or faster. Some are multiples faster. The overall uutils suite is faster then GNU Coreutils already and will only get better. There was nothing for C fans to be smug about to begin with.

    Of the two that were slower, it seems to have only taken a few days to make them faster. The article only tells us about one which is now 50% faster than the GNU version.

    But the promise of Rust is not that Rust is faster anyway. It is that it is easier and safer to refactor. The actual promise of Rust is that you can address issues like performance without as much fear that you will break everything.

    After the reported slowness, both of the two uutils implementations were dramatically sped up in just a couple of days or even hours. They are tested against the GNU test suite and so we know these tests are still passing. That is the promise of Rust. This example proves the Rust claims real. The C smugness did not age well.

    The C versions (GNU) can clearly be sped up as well. The question is who will do that and when. Because speeding up old C code is not nearly as easy or fun. My guess is that it is going to be more than a couple days before we see headlines bragging that GNU has caught up.

    The GNU Coreutils are maintained by Red Hat if we look at who contributes the code and who maintains the dev servers. They are professionally maintained. It is not a rag tag bunch of amateurs. So if uutils is already faster, it does not bode well for the C implementation.

    • Samueru_sama@programming.dev
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 hour ago

      The overall uutils suite is faster then GNU Coreutils already and will only get better

      just did a quick benchmark.

      uutils cat is 2x slower.

      This is the unknown-linux-gnu release, the musl one is likely slower but didn’t check.