Commit Graph

1530 Commits

Author SHA1 Message Date
Brian L 5e59770e4d First try to cull out out of date processing work 2024-03-08 14:21:51 -07:00
Brian L a31290c150 Update stats logging to include main thread queue length 2024-03-08 11:11:17 -07:00
Brian L 36cf86d95f Another warning fix 2024-03-07 11:11:27 -07:00
Brian L 1082b79ab0 Fix up unit tests 2024-03-07 10:04:25 -07:00
Brian L e5f686fe7f Fixes found from unit tests
- Handle completed work for newly dispatched work that completes immediately (like unit tests)
- Add done loading notify for tiles that fail too (but don't count towards used bytes
2024-03-07 10:03:56 -07:00
Brian L 14761c04f5 Fix warning (unused capture) 2024-03-07 08:38:12 -07:00
Brian L 07a05e9bed Add additional chance for tile to be set up for finalization (during processLoadRequests)
Previously this was only happening in dispatchMainThreadTasks, at the beginning of update_view
2024-03-06 16:23:35 -07:00
Brian L 15ec811076 Add chance to dispatch processing before we leave ::processLoadRequests 2024-03-05 11:08:25 -07:00
Brian L 8237ffed7b Fix bug where processing wasn't being handled in priority order 2024-03-01 14:38:12 -07:00
Brian L 7eeb04b1c2 Run immediate continuations for cases we know we're already in a worker thread 2024-02-29 11:20:52 -07:00
Brian L 19409f806a Separate SignalWorkComplete from dispatching new work 2024-02-29 10:56:08 -07:00
Brian L 9eba02ea9e Fix warning 2024-02-28 08:54:40 -07:00
Brian L bd20876c19 Let processing get handled in queued order (first in first out) 2024-02-27 17:00:07 -07:00
Brian L e2fe816046 Remove unneeded "parent waits for child" work logic
Causes some levels to load slower than main, and really isn't needed
2024-02-27 16:38:45 -07:00
Brian L 6a34c4435d Fix shutdown assertion 2024-02-27 16:29:09 -07:00
Brian L f4695e39f8 Fix for shutdown crashes when interrupting a load 2024-02-27 09:35:46 -07:00
Brian L 69cf3bf1ed Merge with main 2024-02-26 09:48:37 -07:00
Janine Liu b723de2e95 Merge branch 'main' into ref-counted-thread-safe 2024-02-26 10:17:30 -05:00
Janine Liu 5f5f726ce6 Revert "Rename member name for clarity"
This reverts commit e16a3e1ac4.
2024-02-26 09:56:14 -05:00
Kevin Ring 23c1cc82fb Merge remote-tracking branch 'origin/main' into ref-counted-thread-safe 2024-02-26 11:33:57 +11:00
Kevin Ring 9f8b011a6e Just one templatized ReferenceCounted class. 2024-02-25 22:44:05 +11:00
Brian Langevin 028fc7cae0
Merge pull request #804 from CesiumGS/image-size-bytes
Track image data size independently of the `pixelData` array size
2024-02-23 11:02:44 -07:00
Brian L e16a3e1ac4 Rename member name for clarity 2024-02-23 10:30:10 -07:00
Brian L 563762ae9d Rename struct member to be more descriptive 2024-02-22 16:46:20 -07:00
Brian L 2818454327 Rename TileProcessingCallback to TileLoaderCallback 2024-02-22 16:38:15 -07:00
Brian L e86746b063 Fix unit test build 2024-02-22 16:32:48 -07:00
Brian L 71dca0cac0 Combine ::thenImmediate continuations 2024-02-22 16:30:59 -07:00
Kevin Ring c341a72806 Revert "Merge pull request #786 from jherico/feature-vcpkg"
This reverts commit 198ed9d4b4, reversing
changes made to 09c1eb76b4.
2024-02-23 09:08:15 +11:00
Brian L 1820aa8780 Fix ::waitUntilIdle
Missed a loading case
2024-02-22 12:44:39 -07:00
Brian L 0d71d62437 Speed up raster loading by letting caller handle main thread continuation logic
For the tile work manager, this means we can requeue work for a request without waiting for main thread processing to complete first.

Also, remove some "current loading" tile tracking we don't need.

Also also, simplify TilesetContentManager::waitUntilIdle. It just needs to talk to the work manager
2024-02-22 11:26:52 -07:00
Brian L b0304d057b Rework tile manager creation into ::createWorkManager 2024-02-22 10:04:38 -07:00
Brian L af9c7154b3 Merge from base branch 2024-02-20 21:48:58 -07:00
Brian L 356518b479 Use ::thenImmediately to respond to completed work faster 2024-02-20 17:42:21 -07:00
Brian L 9927c04297 Merge branch 'request-gap-refactor' into move-dispatch-to-manager 2024-02-20 17:13:09 -07:00
Brian L 255c41f072 Fix unit test warnings 2024-02-20 17:10:22 -07:00
Brian L 712a3ee9ab Put tiles kicked consideration back into ::computeLoadProgress 2024-02-20 17:05:43 -07:00
Brian L 2c25e002dc Warning fixed 2024-02-20 16:03:16 -07:00
Brian L c0be28e322 Move processing work dispatch to work manager 2024-02-20 14:42:02 -07:00
Ashley Rogers 10753a931f
Merge branch 'main' into feature-vcpkg 2024-02-20 13:44:11 -05:00
Brian L 45fdc9cbf7 More renaming for clarity 2024-02-19 21:57:12 -07:00
Brian L e201cadb8e Renaming for clarity 2024-02-19 21:46:32 -07:00
Brian L 88368635da Tweaks for getting work stats 2024-02-19 21:03:59 -07:00
Brian L 96ec82aa31 Turn off debug logging (oops) 2024-02-19 20:43:12 -07:00
Brian L 372c506625 Add better logging
Show pre / post frame stats. Shows better when a stage is starved (like processing)
2024-02-19 20:29:45 -07:00
Brian L e8365aacd7 Formatting 2024-02-19 12:29:52 -07:00
Brian L 8a68f1dbd2 Throttle incoming processing work (this was missing) 2024-02-19 12:03:37 -07:00
Brian L 983889858f Move some assertions to #define code
I don't want these on all the time
2024-02-15 16:00:20 -07:00
Brian L 5743b85546 Skip adding order work if order already exists
Without this a assert is triggered in the work manager. Saw this case when viewing Unreal sample level 6
2024-02-15 15:57:05 -07:00
Brian L c46915ee72 More warning fixes 2024-02-15 14:36:07 -07:00
Brian L 710010a845 Fix for release build warnings 2024-02-15 13:56:20 -07:00