branchrust_reboot/main/optim_jobs2_builddepchainscancel
6 Commits over 0 Days - ∞cph!
Update(tests): adding Perf_BuildSnapshotDependencyChains
Basic test churning throuhg 1 snapshot queue of 1k entities. Mostly shallow hierarchies are fast (20% parented -> 0.15ms), but dense hierarchies are slower(200% parented -> 0.6ms).
Tests: ran perf test
Update(tests): add BuildSnapshotDependencyChains unit tests
- DummyServer now automatically cleans up spawned entities in CleanTestState
Tests: ran unit tests
Clean: refactor some of unit tests
- take out DummyServer and move bot, player creation logic into it
- move out Measuring utils to it's own file
Tests: ran occlusiongroup tests, all pass
Optim: Jobs 2 - rewrite BuildSnapshotDependencyChains
- fix a bug that caused more snapshots to be sent than necessary (causing massive inflation)
- add a couple fast paths, rewrote it to be a single-pass algo
- reduced number of pooled lists usage
Need to write unit tests for this
Tests: with useplayerupdatejobs 2 set from start, loaded craggy and 2.5k procgen world in editor, visited ferry terminal - didn't see anything missing, npcs had weapons and were shooting