Show HN: Turbo Base64 library. AVX512 Faster than memcpy and any other base64

by powturboon 6/20/23, 10:35 AMwith 4 comments
by powturboon 6/20/23, 10:36 AM

- 100% C (C++ headers), as simple as memcpy

- No other base64 library encode or decode faster

- Scalar can be faster than other SSE or ARM Neon based base64 libraries

- SSE faster than other SSE/AVX/AVX2! base64 library

- Fastest AVX2 implementation TurboBase64 AVX2 decoding up to ~2x faster than other AVX2 libs.

- TurboBase64 is 3-4 times faster than other libs for short strings

- Fastest ARM Neon base64

- (2023.04) avx512 - 2x faster than avx2, faster than any other implementation

- Dynamic CPU detection and JIT scalar/sse/avx/avx2/avx512 switching

- Base64 robust error checking, optimized for long+short strings

- Portable library, 32/64 bits, SSE/AVX/AVX2/AVX512, ARM Neon, Power9 Altivec

- OS:Linux amd64, arm64, Power9, MacOs+Apple M1, s390x. Windows: Mingw, visual c++

- Big endian + Little endian

- Ready and simple to use library, no armada of files, no hassles dependencies

by jacobnon 6/21/23, 4:01 AM

Neat library, upvoted.

Question: does this business model work well? The GPL+commercial license on request?

I’m hoping the answer is yes, would be great with some nuance/details/exposition, thanks!