Skip to content
OpenTrain AIFor AI Companies

Number Parsing at a Gigabyte per Second

Daniel LemirePublished Jan 11, 2021
arXiv PDF DOI
Researcher verdict
Starting point
Use as implementation starting point
Benchmark evidence
Thin evidence
Verify before relying
Time to first repro
A few days
Plan setup time
Risk flags
1
Review before use

Abstract

Domain fit: AI-adjacent · Paper appears method- or tooling-adjacent to AI workflows with partial ecosystem coverage.

With disks and networks providing gigabytes per second, parsing decimal numbers from strings becomes a bottleneck. We consider the problem of parsing decimal numbers to the nearest binary floating-point value. The general problem requires variable-precision arithmetic. However, we need at most 17 digits to represent 64-bit standard floating-point numbers (IEEE 754). Thus we can represent the decimal significand with a single 64-bit word. By combining the significand and precomputed tables, we can compute the nearest floating-point number using as few as one or two 64-bit multiplications. Our implementation can be several times faster than conventional functions present in standard C libraries on modern 64-bit systems (Intel, AMD, ARM and POWER9). Our work is available as open source software used by major systems such as Apache Arrow and Yandex ClickHouse. The Go standard library has adopted a version of our approach.

Results and benchmarks

Freshness tier: cold
With disks and networks providing gigabytes per second, parsing decimal numbers from strings becomes a bottleneck.

Implementation

Best maintained implementation now

Recommended
Confidence: High
Reproducibility: Moderate

Fast and exact implementation of the C++ from_chars functions for number types: 4x to 10x faster than strtod, part of GCC 12, MySQL, DuckDB, Chromium, Redis and WebKit/Safari

2,087 stars · 192 forks · Last push Aug 24, 2026 · Apache-2.0 license

  • License
  • CI
  • Dependencies
  • Docker

Official implementation from Papers with Code · Repository link is mentioned in the paper metadata · Partial overlap with paper title keywords

Why this implementation
Confidence: high

fastfloat/fast_float is the strongest maintained implementation based on ranking signals. CI workflows are present. License is declared (Apache-2.0).

Open fastfloat/fast_float
Reproduction risks
  • Dependency manifest is missing
  • Selected fastfloat/fast_float as the strongest maintained implementation for new work.
  • Includes CI workflow signals.
  • Repository activity is within the last 24 months.
  • Official repository is preserved separately as historical context.

Compare implementation paths

Compare maintenance quality, reproducibility coverage, and evidence confidence before choosing a reproduction baseline.

fastfloat/fast_float
best maintained
Maintenance
Active
Confidence
High
Reproducibility
Moderate
Stars
2,087
Last push
Aug 24, 2026 (2d)

Official implementation from Papers with Code · Repository link is mentioned in the paper metadata

  • No Docker setup
  • Dependency manifest missing
CarlVerret/csFastFloat
historical official
Maintenance
Recently updated
Confidence
High
Reproducibility
Moderate
Stars
205
Last push
Jul 15, 2026 (41d)

Official implementation from Papers with Code · Repository link is mentioned in the paper metadata

  • No Docker setup
  • Dependency manifest missing
Maintenance
Stale
Confidence
High
Reproducibility
Moderate
Stars
292
Last push
Dec 2, 2022 (1363d)

Official implementation from Papers with Code · Repository link is mentioned in the paper metadata

  • No push in 12+ months
  • No Docker setup
  • Dependency manifest missing

Reproduction readiness

Time to first repro: days
Last checked: Aug 24, 2026

Major work

No dependency manifest, manual reconstruction required

  • fastfloat/fast_float has no requirements.txt, environment.yml, pyproject.toml, or Dockerfile.
  • You will need to reverse-engineer dependencies from import statements in the source code.
Open fastfloat/fast_float

Hardware requirements

  • Expect multi-day setup/compute for meaningful reproduction based on current guidance.

Repositories and ecosystem

Official

Community

  • C/C++ number ↔︎ string benchmark

    75 stars · 9 forks · Last push Dec 5, 2025 · MIT license

Hugging Face artifacts

No trustworthy direct or curated related Hugging Face artifacts were found yet. Use targeted searches to quickly locate candidate models, datasets, and demos.

Tip: start with models, then check datasets and spaces if you need evaluation data or demos.

Research context

2

Citations

28

References

Tasks

Decimal, Computer science, Parsing, Arithmetic, IEEE floating point, Bottleneck, Floating point, Binary number

Methods

Algorithm

Domains

Computational Theory and Mathematics

Evaluation and human feedback data

Open this paper in HFEPX to review benchmark signals, evaluation modes, and human-feedback protocol context.

Open in HFEPX
Explore similar papers

Jump to Paper2Code search queries derived from this paper's research context.

Data includes links from Papers with Code ( CC-BY-SA-4.0 ).