Skip to content

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

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

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions