百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
B

base64

> 编程语言
开源

基于 C99 的快速 Base64 流编码器/解码器,具有 SIMD 加速

1.0K stars0 点赞1 次浏览
访问官网GitHub

工具介绍

基于 C99 的快速 Base64 流编码器/解码器,具有 SIMD 加速

速度快的 Base64 流编码/解码器 这是一个在 C99 中实现了基64 流编码/解码库,具有 SIMD (AVX2, AVX512, NEON, AArch64/NEON, SSSE3, SSE4.1, SSE4.2, AVX) 和 OpenMP 加速。它还包含用于编码/解码简单的长度限定字符串的封装函数。此库旨在实现:

在 x86 上,库会进行运行时功能检测。第一次调用时,库会确定适合该机器的编码/解码例程。然后,它会将它们保存起来,直到程序运行结束。如果您的处理器支持 AVX2、SSSE3、SSE4.1、SSE4.2 或 AVX 指令,库会选择一个优化的编解码器,使其一次可编码/解码 12 或 24 个字节,这比"纯"字节级的编解码器快了四倍或更多。

NEON 支持在编译时就被硬编码为开启或关闭,因为 ARM 上无法检测可移植的运行时功能。即使您的处理器不支持 SIMD 指令,这也是一个非常快速的库。回退例程可以在一次循环中处理 32 或 64 位的输入,具体取决于处理器的字长,这仍然比原生的字节级实现要快得多。在某些 64 位机器上, 64 位的例程甚至比 SSSE3 例程更快。

据作者所知,在原始发布时,这是唯一一款提供 SIMD 加速的 Base64 库。作者撰写了一篇文章,解释了一种可能的 SIMD 方法来编码/解码 Base64。该文章可以帮助您了解代码的运作方式以及原因。

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

C

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言