Skip to content

Float parsing speed and allocation regressions 2.8.1->2.8.2->2.8.5. Up to 16x slower #205

@jaakkor2

Description

@jaakkor2
using Parsers
using BenchmarkTools
@btime Parsers.parse(Float64, "1.23e-4")
Version Btime
v2.8.1 15.045 ns (0 allocations: 0 bytes)
v2.8.2 43.219 ns (0 allocations: 0 bytes)
v2.8.4 49.748 ns (0 allocations: 0 bytes)
v2.8.5 253.235 ns (9 allocations: 304 bytes)

Measurements with

julia> versioninfo()
Julia Version 1.12.6
Commit 15346901f0 (2026-04-09 19:20 UTC)
Build Info:
  Official https://julialang.org release
Platform Info:
  OS: Windows (x86_64-w64-mingw32)
  CPU: 20 × 13th Gen Intel(R) Core(TM) i7-1370P
  WORD_SIZE: 64
  LLVM: libLLVM-18.1.7 (ORCJIT, alderlake)
  GC: Built with stock GC
Threads: 20 default, 1 interactive, 20 GC (on 20 virtual cores)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions