12 comments

[ 4.0 ms ] story [ 34.8 ms ] thread
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.

To the contrary, Nova Lake, coming out this year, will have it.
And that's a shame, but the relevant workloads typically run on server class CPUs.
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.

Very impressive! But yeah AVX-512 is an awkward requirement.
This is just a worse copy of the original ifma method. Sneller is even better for max throughput.
> Sneller is even better for max throughput.

I see https://sneller.ai/blog/avx512-itoa/, which reports ~0.75ns/number for <=7 bytes (compared to ~1ns/n for Champagne-Lemire, I would assume on 3 year newer hardware), but ~2.6ns/number for >=8 bytes (vs ~1.3ns/n for Champagne-Lemire). Perhaps it has improved in the 3 years since the blog post was written? Their main GitHub repository is no longer public, so I don't see a good way to test it myself.

Sounds familiar. If one of the authors Lemire? Of course.

SIMD-accelerated integer-to-string conversion https://lemire.me/blog/2026/05/18/simd-accelerated-integer-t...

Other speedy things:

On-Demand JSON: A Better Way to Parse Documents? https://lemire.me/en/publication/arxiv231217149/

Parsing Millions of URLs per Second https://lemire.me/en/publication/arxiv231110533/

Transcoding Unicode Characters with AVX-512 Instructions https://lemire.me/en/publication/arxiv221205098/

What will be the lifetime of AVX512? There have been many similar extensions before it. So it's a great result, but heavily marked by the target platform. I have the hope that RISC-V vector extensions will prove to be the more durable substrate to develop on, and a result there would be much more relevant for the future.
Decimal strings are for human consumption, I suppose. Not sure if the nanosecond timescale is relevant then (unless you send these numbers to billions of people which is unlikely). Sounds like a pointless exercise, or maybe they should have picked a better example.