MLabs Publications

The many minds at MLabs present news, case studies, editorials, tutorials, whitepapers, Cardano Catalyst proposals, and more.

Haskell, Optimisations Koz Ross Haskell, Optimisations Koz Ross

The 'A' is for 'Accelerated': Checking ASCII with SWAR

In this post, discover how to push Haskell’s performance boundaries by using SWAR (“SIMD Within A Register”) techniques to validate ASCII data in bulk. You’ll see how packing bytes into registers—using bit masking to flag non-ASCII values in parallel—and unrolling loops to leverage the CPU’s superscalar engine both drive down overhead. By the end, we'll transfer a simple foldl'-based ASCII detecting function into a version running 10x faster.

Read More