Converting an Integer to a Decimal String in Under Two Nanoseconds

(onlinelibrary.wiley.com)

26 points | by mpweiher 4 days ago

4 comments

  • xlii 1 hour ago
    I wonder if this can be categorized as galactic algorithm. I can't imagine systems where bulk of processing goes into integer to decimal string conversion but maybe there are such.

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

    • adrian_b 5 minutes ago
      I always use binary interchange formats between programs so I am not familiar with the overhead caused by format conversions. Even when displaying numbers for reading them, in the case of floating-point numbers that are displayed in the "scientific" format, i.e. with exponents, I prefer to have only the exponent as a decimal number, but the significand as a hexadecimal number. So I do not need fast algorithms for number conversions.

      Nonetheless, there are plenty of people who advocate the use of JSON, XML and similar formats, in which case I assume that number conversions can take a non-negligible time, which might be decreased by such fast algorithms.

    • oersted 10 minutes ago
      My understanding of a Galactic Algorithm is that it has better performance scaling based on input size/complexity, but its overhead is such that it will not actually be faster unless you use it for impracticality large inputs.

      I don’t think it has much to do with the case of an algorithm that offers a faster solution to a problem that is rarely a bottleneck (not sure if that’s true in this case anyway).

  • Cold_Miserable 46 minutes ago
    This is just a worse copy of the original ifma method. Sneller is even better for max throughput.
  • jqpabc123 4 days ago
    Our design exploits the AVX-512 instruction set

    AVX-512 is being discontinued in newer Intel consumer CPUs, particularly with the Alder Lake series, where it has been completely disabled through BIOS updates.

    • adrian_b 25 minutes ago
      Your comment is obsolete.

      AVX-512 had been discontinued in the CPU generations from Alder Lake until the Panther Lake, Wildcat Lake and Clearwater Forest CPUs introduced during the first half of 2026, but Intel has committed than all future Intel CPUs will implement the complete 512-bit variant of the AVX-512 a.k.a. AVX10 ISA, starting with the Nova Lake desktop and laptop CPUs, to be launched by the end of this year.

      Obviously, the competition from the AMD Zen 4, Zen 5 and Zen 6 CPUs, all of which implement AVX-512 and easily beat any Intel CPU in any workload that has been updated to use the AVX-512 ISA, has forced Intel to reconsider its previous decision.

    • anematode 1 hour ago
      To the contrary, Nova Lake, coming out this year, will have it.
    • yvdriess 40 minutes ago
      And that's a shame, but the relevant workloads typically run on server class CPUs.
      • adrian_b 19 minutes ago
        From all the workloads that I execute on my laptops or desktops, there is only one where the speed matters yet it is not significantly affected by the use of the AVX-512 ISA: the compilation of big software projects.

        All the other things that I do and which can take a noticeable CPU time (i.e. not time used for waiting on SSDs or other peripherals) can be accelerated by AVX-512. This includes things like computing file hashes, data compression and encryption algorithms, graphics/audio/video algorithms and also EDA/CAD applications.

  • IshKebab 1 hour ago
    Very impressive! But yeah AVX-512 is an awkward requirement.
    • adrian_b 14 minutes ago
      There already exists a large installed base of AMD Zen 4 and Zen 5 CPUs.

      Next year, these AVX-512 supporting CPUs will be joined by AMD Zen 6 and Intel Nova Lake. Starting with Intel Nova Lake, all future Intel CPUs will support AVX-512.