bevy icon indicating copy to clipboard operation
bevy copied to clipboard

Add the Bevy OpenXR cubes benchmark to the repo.

Open pcwalton opened this issue 1 year ago • 4 comments

Apparently we're slow on this one, so it would be good to have it in the tree.

pcwalton avatar Feb 09 '24 07:02 pcwalton

The generated examples/README.md is out of sync with the example metadata in Cargo.toml or the example readme template. Please run cargo run -p build-templated-pages -- update examples to update it, and commit the file change.

github-actions[bot] avatar Feb 09 '24 07:02 github-actions[bot]

not sure what is XR in this benchmark, or what it's supposed to test?

and ideally for a benchmark it can be used from the CLI without interactivity to remove any human interaction

mockersf avatar Feb 09 '24 14:02 mockersf

This is offering a slightly different workload from many_cubes

  • 100% of cubes are visible (well, unless there are a lot of cubes)
  • number of cubes is controllable
  • camera does not move

I wonder if we could get this just by adding a few more controllable parameters to many_cubes (camera moving inside vs static outside, number of cubes)

rparrett avatar Feb 09 '24 14:02 rparrett

This was provided by some XR devs who used this to evaluate bevy's performance vs unity and unreal. They cannot dip under 72 fps on the quest, and wanted to determine how many static cubes we can render at a time before the fps starts becoming a problem.

These are the benchmarks they provided for 0.12:

Unity: 50k cubes    
Godot: 70k cubes    
Bevy: 19k Cubes    

Added as a test so we can validate this claim and try to improve it. It's not the most scientific, but FPS is sometimes a performance target and this is a good gauge.

NthTensor avatar Feb 10 '24 03:02 NthTensor