Performance bottleneck on large amount of objects
- Dominant language
- Rust
- Stars
- 1.8k
- Forks
- 194
- Avg merge
- 1d 14h
- Merged PRs (30d)
- 2
Description
I just tried to use cube.rs example with 10_000+ cubes in a single scene
[cube.rs](https://github.com/sebcrozet/kiss3d/blob/master/examples/cube.rs)
The great surprise was that bottleneck for smooth rendering was not GPU but CPU:
Ubuntu 18.04,
i7-6700K,
intel HD 530.
The ratio of utilization was CPU-100% single thread, GPU - 30%.
I'm poor nooby in Rust, but tried to dig a bit deeper and I was a bit confused about this recursive loop
[scene_node.rs](https://github.com/sebcrozet/kiss3d/blob/master/src/scene/scene_node.rs#L116)
are there any room for optimizations like "batch" rendering instead of the need to compute conditions for every element ?
Contributor guide
No contributing guide indexed for this repository
Research direction
Reproduce the report with the cube.rs example and 10,000+ cubes on a comparable setup. Read the recursive traversal around src/scene/scene_node.rs:116 and profile the single-threaded CPU path before evaluating possible batching or other rendering changes. Done means a measured improvement in large-scene rendering without breaking existing behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- computer-graphics, performance
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100