English
Related papers

Related papers: Transcoding Unicode Characters with AVX-512 Instru…

200 papers

In software, text is often represented using Unicode formats (UTF-8 and UTF-16). We frequently have to convert text from one format to the other, a process called transcoding. Popular transcoding functions are slower than state-of-the-art…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-08-16 Daniel Lemire , Wojciech Muła

We often represent text using Unicode formats (UTF-8 and UTF-16). The UTF-8 format is increasingly popular, especially on the web (XML, HTML, JSON, Rust, Go, Swift, Ruby). The UTF-16 format is most common in Java, .NET, and inside operating…

Programming Languages · Computer Science 2023-05-23 Daniel Lemire

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…

Mathematical Software · Computer Science 2026-04-07 Wojciech Muła , Daniel Lemire

UTF-16 is a widely used Unicode encoding representing characters with one or two 16-bit code units. The format relies on surrogate pairs to encode characters beyond the Basic Multilingual Plane, requiring a high surrogate followed by a low…

Other Computer Science · Computer Science 2026-01-13 Robert Clausecker , Daniel Lemire

Modern Intel CPUs reduce their frequency when executing wide vector operations (AVX2 and AVX-512 instructions), as these instructions increase power consumption. The frequency is only increased again two milliseconds after the last code…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-01-16 Mathias Gottschlag , Frank Bellosa

Many common document formats on the Internet are text-only such as email (MIME) and the Web (HTML, JavaScript, JSON and XML). To include images or executable code in these documents, we first encode them as text using base64. Standard…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-01-08 Wojciech Muła , Daniel Lemire

The majority of text is stored in UTF-8, which must be validated on ingestion. We present the lookup algorithm, which outperforms UTF-8 validation routines used in many libraries and languages by more than 10 times using commonly available…

Databases · Computer Science 2026-04-22 John Keiser , Daniel Lemire

This paper investigates the employment of various encoders in text transformation, converting characters into bytes. It discusses local encoders such as ASCII and GB-2312, which encode specific characters into shorter bytes, and universal…

Computation and Language · Computer Science 2023-07-12 Changshang Xue

The majority of online content is written in languages other than English, and is most commonly encoded in UTF-8, the world's dominant Unicode character encoding. Traditional compression algorithms typically operate on individual bytes.…

Information Theory · Computer Science 2017-01-17 Adam Gleave , Christian Steinruecken

We publish an extension of openQCD-1.6 with AVX-512 vector instructions using Intel intrinsics. Recent Intel processors support extended instruction sets with operations on 512-bit wide vectors, increasing both the capacity for floating…

High Energy Physics - Lattice · Physics 2018-11-22 Ed Bennett , Mark Dawson , Michele Mesiti , Jarno Rantaharju

Counting the number of ones in a binary stream is a common operation in database, information-retrieval, cryptographic and machine-learning applications. Most processors have dedicated instructions to count the number of ones in a word…

Data Structures and Algorithms · Computer Science 2018-09-07 Wojciech Muła , Nathan Kurz , Daniel Lemire

Modern processors have instructions to process 16 bytes or more at once. These instructions are called SIMD, for single instruction, multiple data. Recent advances have leveraged SIMD instructions to accelerate parsing of common Internet…

Data Structures and Algorithms · Computer Science 2025-06-05 Daniel Lemire

Converting binary integers to variable-length decimal strings is a fundamental operation in computing. Conventional fast approaches rely on recursive division and small lookup tables. We propose a SIMD-based algorithm that leverages integer…

Data Structures and Algorithms · Computer Science 2026-05-07 Jaël Champagne Gareau , Daniel Lemire

Due to thermal and power supply limits, modern Intel CPUs reduce their frequency when AVX2 and AVX-512 instructions are executed. As the CPUs wait for 670{\mu}s before increasing the frequency again, the performance of some heterogeneous…

Operating Systems · Computer Science 2020-05-05 Mathias Gottschlag , Yussuf Khalil , Frank Bellosa

The modern CPU's design, which is composed of hierarchical memory and SIMD/vectorization capability, governs the potential for algorithms to be transformed into efficient implementations. The release of the AVX-512 changed things radically,…

Mathematical Software · Computer Science 2018-03-13 Berenger Bramas

The dominant data interchange formats encode integers using a variable number of bytes or represent floating-point numbers as variable-length UTF-8 strings. The decoder must inspect each byte for a continuation bit or parse each character…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-04-14 Andrew Sampson , Yuta Saito , Ronny Chan

URLs are fundamental elements of web applications. By applying vector algorithms, we built a fast standard-compliant C++ implementation. Our parser uses three times fewer instructions than competing parsers following the WHATWG standard…

Programming Languages · Computer Science 2024-04-08 Yagiz Nizipli , Daniel Lemire

Multilingual automatic speech recognition (ASR) requires tokenization that efficiently covers many writing systems. Byte-level BPE (BBPE) using UTF-8 is widely adopted for its language-agnostic design and full Unicode coverage, but its…

Computation and Language · Computer Science 2026-02-03 Hyunsik Kim , Haeri Kim , Munhak Lee , Kyungmin Lee

It is possible to interpret text as numbers (and vice versa) if one interpret letters and other characters as digits and assume that they have an inherent immutable ordering. This is demonstrated by the conventional digit set of the…

Cryptography and Security · Computer Science 2023-06-06 Armin Hoenen

We introduce Reverse CAPTCHA, an evaluation framework that tests whether large language models follow invisible Unicode-encoded instructions embedded in otherwise normal-looking text. Unlike traditional CAPTCHAs that distinguish humans from…

Cryptography and Security · Computer Science 2026-03-03 Marcus Graves
‹ Prev 1 2 3 10 Next ›