Chorba: A novel CRC32 implementation (2024)

(arxiv.org)

26 points | by fnands 2 days ago

6 comments

  • Retr0id 1 hour ago
    This repo's readme gives a great overview of the previous-best approaches (as of ~6 years ago): https://github.com/komrad36/CRC
  • fnands 2 days ago
    News to me, but a guy named Sam Russell came up with a new software only CRC32 algorithm that is competitive with hardware accelerated implementations. It's a surprisingly elegant solution.
  • garganzol 1 hour ago
    Anyone can replicate the results? In any case, works like this give me moments of epiphany when I start to believe the humanity is not totally lost.
  • omoikane 1 hour ago
    What are the units on the vertical axes for figures 1 and 2? I might have guessed seconds per TiB but the braiding line doesn't seem to match what's in figure 3.
  • david-gpu 2 hours ago
    In Spain, "chorba" is very informal slang for "gal" [0]. Not vulgar, just very informal vernacular.

    [0] https://dle.rae.es/chorbo

    • woadwarrior01 2 hours ago
      Chorba is also soup in Eastern European languages like Bulgarian and Romanian.

      https://en.wikipedia.org/wiki/Chorba

    • nzeid 51 minutes ago
      All this talk of soup making me wonder if these are Arabic/ME derivatives.

      Then again there are like 10 different ways to refer to soup in the various dialects.

      • wongarsu 16 minutes ago
        The wikipedia article traces it to Persian, which formed it as a compound of words from different East Iranian languages. So you are on the money with Middle Eastern. From there it spread to the Balkan via Ottoman Turkish, and also from Persian to dialectal Arabic, which would explain the occurrences in Northern Africa, and maybe even Spain
    • SalimoS 2 hours ago
      and is a traditional Tunisian soup

      /Edit: actually in all North Africa https://en.wikipedia.org/wiki/Chorba

  • ranger_danger 1 hour ago
    > Dedication

    > This implementation is named after the Serbian singer Bora Đorđević (also known as Bora Čorba) who was born in 1952 and died in 2024. His birth year matches the number of the GZIP standard RFC 1952 that describes a common CRC32 implementation, and the original proof of concept for this method used the polynomial x21 +x15 + x14 + x11 + x10 + x7 + x3 which is x1952×8 mod G(x).

    That is indeed dedication.