Skip to content

0.19 Performance Regression #24448

Description

@AlephCubed

Bevy version

  • Original: 0.18.1
  • Current: 0.19.0-rc.2

Relevant system information

  • Mostly using 1.97.0-nightly (4d1f98451 2026-05-15), but I did briefly test 1.95.0 (f2d3ce0bd 2026-03-21) and the performance was similar.
  • M1 MacBook Air (16GB), MacOS Tahoe 26.5.

What's performing poorly?

I went from stable 60fps in both dev and release builds to ~25fps in dev and ~45fps in release.
My project is a voxel engine where meshes are generated from the voxel grid. However, I am taking these measurements when nothing is happening (after the meshes initially load, I have very little code running).

Source code is available here, with a 0.19 branch that just updates and patches deps. The world will not render until the camera is moved for some reason, so press M to lock the cursor and move it a little.

Before and After Traces

I have tried to do some profiling, but I don't really know what I'm looking for. Some regressions that looked notable are:

Name 0.18 (Mean Time) 0.19 RC 2 Diff
schedule{Render} 16.31ms 21.79ms +5.47ms (+33%)
sub app{RenderExtractApp} 15.49ms 19.71ms +4.22ms (+27%)
schedule{PostUpdate} 470.52μs 1.63ms +1.16ms (+245%)
system{prepare_preprocess_bind_groups} 33.28μs 1.03ms +992.21μs (+2980%)

If anyone has any ideas as to what to look for, I am happy to do more profiling. Otherwise, the full traces are here:

I also tried to do a frame capture in XCode, but XCode just crashes.

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-RenderingDrawing game state to the screenC-BugAn unexpected or incorrect behaviorC-PerformanceA change motivated by improving speed, memory usage or compile timesP-RegressionFunctionality that used to work but no longer does. Add a test for this!S-Waiting-on-SMEThis is currently waiting for an SME to resolve something controversial

    Type

    No type
    No fields configured for issues without a type.

    Projects

    Status
    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions