Open access research
publication repository

Faster Base64 Encoding and Decoding Using AVX2 Instructions [r-libre/1362]

Muła, Wojciech, & Lemire, Daniel (2018). Faster Base64 Encoding and Decoding Using AVX2 Instructions. ACM Transactions on the Web, 12 (3). https://doi.org/10.1145/3132709

File(s) available for this item:
[img]  PDF - base64.pdf
Content : Accepted Version
License : Creative Commons Attribution.
Item Type: Journal Articles
Refereed: Yes
Status: Published
Abstract: Web developers use base64 formats to include images, fonts, sounds and other resources directly inside HTML, JavaScript, JSON and XML files. We estimate that billions of base64 messages are decoded every day. We are motivated to improve the efficiency of base64 encoding and decoding. Compared to state-of-the-art implementations, we multiply the speeds of both the encoding (~10x) and the decoding (~7x). We achieve these good results by using the single-instruction-multiple-data (SIMD) instructions available on recent Intel processors (AVX2). Our accelerated software abides by the specification and reports errors when encountering characters outside of the base64 set. It is available online as free software under a liberal license.
Depositor: Lemire, Daniel
Owner / Manager: Daniel Lemire
Deposited: 17 Jan 2018 21:25
Last Modified: 04 Jan 2019 18:17

Actions (login required)