perf: hoist ECS store lookups outside realize loops #713

Open
SakulFlee wants to merge 1 commit from perf/realize-hoist-store-locks into main
Owner

In realize_cameras and realize_models, get_component_store calls for
dirty/realization flags were inside the per-entity loop, acquiring
a lock and performing a HashMap lookup on each iteration. Now these
stores are looked up once before the loop and reused.

In realize_cameras and realize_models, get_component_store calls for dirty/realization flags were inside the per-entity loop, acquiring a lock and performing a HashMap lookup on each iteration. Now these stores are looked up once before the loop and reused.
perf: hoist ECS store lookups outside realize loops
Some checks failed
ci/woodpecker/push/linting Pipeline failed
bcfd968182
In realize_cameras and realize_models, get_component_store calls for
dirty/realization flags were inside the per-entity loop, acquiring
a lock and performing a HashMap lookup on each iteration. Now these
stores are looked up once before the loop and reused.
Some checks are pending
ci/woodpecker/push/linting Pipeline failed
ci/woodpecker/pr/test
Required
ci/woodpecker/pr/linting
Required
This pull request has changes conflicting with the target branch.
  • Crates/orbital_app/src/systems/realize.rs
View command line instructions

Manual merge helper

Use this merge commit message when completing the merge manually.

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin perf/realize-hoist-store-locks:perf/realize-hoist-store-locks
git switch perf/realize-hoist-store-locks
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
SakulFlee/Orbital!713
No description provided.