- -ZenPak used to indicate streaming using pak files instead of Zen loose file streaming
- added pak file hardware decompression on supported platforms
#jira UE-221577
#rb David.Harvey, daniele.pieroni
[CL 36761256 by tomasz obrebski in 5.5 branch]
- disabled by default, enable with CVAR s.IoDispatcherCullCancelledReadRequests = True
#rb pj.kack
#rnx
[FYI] mickael.gilabert
[CL 35708446 by per larsson in ue5-main branch]
- Fix potential deadlock on low core count when all workers are waiting on IO and the IoDispatcher is waiting on decompression tasks
#rb Francis.Hurteau
[RN] Fix potential deadlock on low core count
[CL 35174606 by danny couture in ue5-main branch]
Reduce risk of deadlock if other background worker tasks are waiting for io by allowing decompression tasks to run on both foreground and background workers.
Respect the existing priority cvar "TaskGraph.TaskPriorities.IoDispatcherAsyncTasks".
#rb per.larsson, danny.couture
#tests pc and console replays
[CL 34673303 by pj kack in ue5-main branch]
As part of this change we also promote dynamic resolution and IO/PackageQueueDepth stats to Minimal since they're important for high level performance reporting.
Also fix up a few places that were redundantly using #if CSV_PROFILER around CSV macros.
#rb mickael.gilabert
[CL 34386798 by ben woodhouse in ue5-main branch]
This will make UnrealPak read from and use the project-specific ini files.
This will make UnrealPak write to and use the project-specific Saved directory, e.g. to save the UnrealPak.log file.
In the BuildCookRun/CopyBuildToStagingDirectory scripts always invoke UnrealPak with the .uproject file argument.
Always run UnrealPak itself with -nopak to avoid picking up and mounting any existing pak files in the project directory.
Motivation: When UnrealPak is run with -compressionEnableDDC it needs to use the project's ddc configuration instead of the engine's ddc configuration.
Note: When UnrealPak is invoked without the project argument it will still use the default program directory, and there is no change in behavior when e.g. manually executing inspection commands like list, extract and describe.
Note: All important packaging options are already passed on command line from BuildCookRun/CopyBuildToStagingDirectory, so from that perspective the change should be low risk, but in the future there is a possibility to reduce the number of command line options and rely on the project configuration instead.
#rb per.larsson
#tests identical binary output
[CL 34266589 by pj kack in ue5-main branch]
-> Done because UE disables 32 bit down cast - silently could overflow.
-> General use should automatically work.
-> Deprecate some old 32 bit functions not generally used.
-> Deprecate/rename some ancient flags for future removal.
-> Update CompressorData to uint ptr for future use
-> Remove some stuff deprecated in 4.21 (2018)
#rb fabian.giesen
#jira UE-173911
[CL 31688300 by dan thompson in ue5-main branch]