Skip to content

1.12 - 2x+ TTFX Regressions #59856

@chris-b1

Description

@chris-b1

Not sure if this is worth investigating/reporting more at the package level, but so far 1.12 has felt generally significantly more sluggish to me on TTFX and a few things I've tested have all confirmed, mostly seeing it packages but also base

setup & versioninfo()

cat > temp.csv <<EOF
a,b,c
1,2,3
4,5,6
EOF

julia> versioninfo()
Julia Version 1.12.0
Commit b907bd0600f (2025-10-07 15:42 UTC)
Build Info:
  Official https://julialang.org release
Platform Info:
  OS: Linux (x86_64-linux-gnu)
  CPU: 16 × 12th Gen Intel(R) Core(TM) i7-1270P
  WORD_SIZE: 64
  LLVM: libLLVM-18.1.7 (ORCJIT, alderlake)
  GC: Built with stock GC
Threads: 1 default, 1 interactive, 1 GC (on 16 virtual cores)

1.11

julia> @time show([1, 2, 3])
[1, 2, 3]  0.072002 seconds (78.65 k allocations: 4.288 MiB, 97.32% compilation time)

julia> @time df = DataFrame(:a => [1, 2, 3], :b => ["a", "b", "c"])
  0.015479 seconds (607 allocations: 27.250 KiB, 97.67% compilation time)

julia> @time CSV.File("temp.csv")
  1.183245 seconds (2.28 M allocations: 138.655 MiB, 14.13% gc time, 99.57% compilation time: 98% of which was recompilation)

1.12

# 3x slower
julia> @time show([1, 2, 3])  
[1, 2, 3]  0.211916 seconds (530.79 k allocations: 28.203 MiB, 99.89% compilation time)

# 4.5x slower
julia> @time df = DataFrame(:a => [1, 2, 3], :b => ["a", "b", "c"])  
  0.068731 seconds (794.13 k allocations: 41.691 MiB, 33.44% gc time, 95.99% compilation time)

# 2.5x slower
julia> @time CSV.File("temp.csv")
  2.761471 seconds (10.10 M allocations: 523.286 MiB, 12.35% gc time, 99.72% compilation time: 99% of which was recompilation)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions