Commit Graph

8 Commits

Author SHA1 Message Date
Devin Doucette
436b6a6461 DDC: Added IRequestOwner::LaunchTask
- Added IRequestOwner::LaunchTask to launch a task as a request in the request owner.
- Renamed ExecuteInCacheThreadPool to LaunchTaskInCacheThreadPool.
- Made GCacheThreadPool private to one source file.
- Changed task scheduling throughout DDC to use these functions where appropriate.

#preflight 623b846d8900c14eecd4daa4
#rb Zousar.Shaker

[CL 19485686 by Devin Doucette in ue5-main branch]
2022-03-23 16:56:39 -04:00
Devin Doucette
0a3a6d86c0 DDC: Switched to FLazyEvent to reduce build execution overhead
#rb Zousar.Shaker
#rnx
#preflight 614d5c567684f50001a07c40

[CL 17629838 by Devin Doucette in ue5-main branch]
2021-09-27 09:31:49 -04:00
Devin Doucette
e074999d9a DDC: Renamed Dispatch[Op] to Schedule[Op] and tweaked formatting for consistency
#rb none
#rnx
#preflight 613a336abf5a710001674089

[CL 17474273 by Devin Doucette in ue5-main branch]
2021-09-09 13:36:28 -04:00
Johan Torp
7286b53430 Add DDC2 memory scheduler to limit peak memory consumption
Also:
* Implemented rough memory usage estimate for texture cooking
* Fixed build action -> constant copying bug

#rb devin.doucette

[CL 17470303 by Johan Torp in ue5-main branch]
2021-09-09 06:04:00 -04:00
Devin Doucette
30760f545b DDC: Split DerivedDataRequest.h and rename DerivedDataBuildPolicy.h
#rb none
#rnx

[CL 17086960 by Devin Doucette in ue5-main branch]
2021-08-06 15:49:14 -04:00
Devin Doucette
3513768988 DDC: Replaced FRequest with FRequestGroup to handle nested and chained requests more robustly
Any function that may create a request now has a IRequestOwner& parameter, and uses the Begin and End functions on the owner to manage the lifetime of any requests that it creates, as well as using End to invoke the completion callback for any request which has one.

The new FRequestBarrier may be used to block a group from being considered complete in a scope where more requests may be added to it.

#rb Matt.Peters
#rnx
#preflight 6109b5c403d303000144cce5
#preflight 610acf7103d30300016fda94

[CL 17060470 by Devin Doucette in ue5-main branch]
2021-08-04 17:52:40 -04:00
Devin Doucette
c9ef86c7d2 DDC: Schedule non-blocking builds using tasks
#rb Zousar.Shaker
#rnx

[CL 16870688 by Devin Doucette in ue5-main branch]
2021-07-16 01:23:29 -04:00
Devin Doucette
3d796c5429 DDC: Added UE::DerivedData::IBuildScheduler and UE:::DerivedData::IBuildJob
IBuildScheduler schedules IBuildJob, which are created by the upcoming FBuildSession.

#rb Zousar.Shaker
#rnx

[CL 16452468 by Devin Doucette in ue5-main branch]
2021-05-25 13:27:48 -04:00