Klaus Post

Klaus Post

@klauspost.com

Making Go stuff go brrrrrrrrrrrrrrrrrrr

196 followers53 following142 posts

Preview: New SIMD #compression mode in #golang minlz that uses pivco entropy coding on top of LZ matching. Compression like ZStandard with 2-5x faster decompression. Currently implemented with AVX2, AVX512 and NEON (untested). Independent blocks, giving seekable streams. Silensia, single threaded:

Back in the day Ultra Compressor II (DOS) trickled my interest in compression and data recovery as I was learning about computers. With the knowledge I have now, it was fascinating to look through it with an LLM and also quite nostalgic re-creating the UI I only vaguely remember.

So with an LLM I ported the original Borland to #golang. I tried to make it usable in a modern context, adding utf-8 and 64 bit sizes as an extension. I have cross-compiled binaries for more than 30 platforms.

Working on a #golang compression benchmark comparison site. Deflate speed improvements from latest compression library release... (JSON stream)

Why is #golang now a non-deterministic language with the 1.27 FMA changes? Pure Go code producing different output on different platforms. Avoiding that is why I *moved* to Go.

Klaus Post reposted

🗜️ Compression is all about trade-offs. Smaller payloads, lower bandwidth, faster transfers... but at what cost in CPU, memory, and compatibility? At #GoLab2026, Klaus Post will guide you through the compression landscape in Go and help you choose the right tool for the job golab.io/talks/go-dat...

Search Compressed Data for byte sequences with selective decompression using MinLZ v1.2.0 - available as cli and #golang API. Overhead is a fractional bit per byte, fully customizable and with fixed specification.

New #golang compression release. Big features include #zstd concurrent stream encoding, arm64 decompression assembly and various minor changes.

I must say the ability to test out ideas in less than an hour is so addictive. Also I feel much less "attached" to idea and it is much easier to abandon if it doesn't pan out.

Very excited to be back at @golab.io - super chill and well organised event! I will give a talk on the state of #golang data compression. See you there!

🥳We are extremely glad to announce the Schedule and the Speakers of GoLab 2026! golab.io/schedule

IMO #golang is missing a clean way to send exact typed (and wrapped) errors across the wire between 2 similar binaries. GOB would be ok, but registration isn't really feasible in big applications.