Panic allows only one thread to become the panic thread. In panic mode, logs are only sent to panic-safe output devices. Each call to Panic flushes buffered logs to panic-safe output devices, and flushes panic-safe output devices.
#jira UE-147152
#preflight 62424814292f228e09d8a612
#rb Zousar.Shaker
#fyi Brandon.Schaefer
[CL 19545093 by Devin Doucette in ue5-main branch]
- This restore proper prioritization support that was lost with the new task backend while keeping a sane number of threads
- This helps to prevent latency sensitive tasks from going to efficient cores for Alder Lake
- This fixes performance problems caused by high prio task getting picked up by background threads and being preempted under high-load, causing FPS hiccups.
- SetThreadPriority takes ~20us on average on Windows System and is only paid for background work
- Longer SetThreadPriority can be expected when lowering the priority of a task under heavy load, which might cause the caller to be preempted right away, this is expected.
- Can be A/B tested from command-line with -TaskGraphUseDynamicPrioritization=1/0
#rb Andriy.Tylychko, Arne.Schober, Stefan.Boberg
#preflight 622786a7e83598518f3745a1
[CL 19314282 by danny couture in ue5-main branch]
- this change prevents gauntlet from running tasks on Xbox so I am backing it out
- instance of Horde failure: https://horde.devtools.epicgames.com/job/61f43b2f74510448a686da51?step=72cc
- the XboxConsoleInputReader thread is created and immediately terminates
- this change introduced a null out of Runnable in the Xbox version of FRunnableThreadWin::Run()
- this causes FRunnableThread::SetupCreatedThread() to assert on startup that a valid runnable thread was created but has no Runnable
#rb none
#preflight 61f47fb6801201ab389bb311
[FYI] ionut.matasaru
Original CL Desc
-----------------------------------------------------------------
[Insights]
- Fixed memory tracking for an FRunnableThread to emit a free event when the thread ends.
- Fixed memory tracking for "ProgramSize" of loaded modules (dlls), to emit a free event when dll is unloaded.
#jira UE-140358
#rb Johan.Berg
#preflight 61f40923f628752a568b292b
#ROBOMERGE-AUTHOR: eric.mcdaniel
#ROBOMERGE-SOURCE: CL 18781656 in //UE5/Release-5.0/... via CL 18781895 via CL 18781943
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)
[CL 18781953 by eric mcdaniel in ue5-main branch]
- Fixed memory tracking for an FRunnableThread to emit a free event when the thread ends.
- Fixed memory tracking for "ProgramSize" of loaded modules (dlls), to emit a free event when dll is unloaded.
#jira UE-140358
#rb Johan.Berg
#preflight 61f40923f628752a568b292b
#ROBOMERGE-AUTHOR: ionut.matasaru
#ROBOMERGE-SOURCE: CL 18771801 in //UE5/Release-5.0/... via CL 18771806 via CL 18771881
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)
[CL 18771891 by ionut matasaru in ue5-main branch]
#preflight
#rb Rex.Hill
#ROBOMERGE-AUTHOR: justin.marcus
#ROBOMERGE-SOURCE: CL 18677948 via CL 18679133 via CL 18679189 via CL 18679245 via CL 18681199 via CL 18681228 via CL 18681276
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v902-18672795)
[CL 18681545 by justin marcus in ue5-main branch]
We need to set this define in other platform build files, and since some of them are included on windows (editor) builds as well, we can end up with warnings of redefinition of variable.
#preflight 61e025e11e7c2075bb218b0f
#ROBOMERGE-AUTHOR: johan.berg
#ROBOMERGE-SOURCE: CL 18595866 in //UE5/Release-5.0/... via CL 18595880 via CL 18595890
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Test -> Main) (v899-18417669)
[CL 18596773 by johan berg in ue5-main branch]
- GetVersionEx WinAPI function does not work as expected on Manifested Applications.
#jira UE-136505
#rnx
#preflight 61dc8067aa3e6f269e9791db
#rb Eric.McDaniel
#ROBOMERGE-AUTHOR: david.harvey
#ROBOMERGE-SOURCE: CL 18569901 in //UE5/Release-5.0/... via CL 18569910
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)
[CL 18569914 by david harvey in ue5-release-engine-test branch]
#[fyi] michael.noland
#preflight 61d86fa3c65e66487b36b5c0
#ushell-cherrypick of 18546856 by Andrew.Davidson
#ROBOMERGE-AUTHOR: andrew.davidson
#ROBOMERGE-SOURCE: CL 18552595 via CL 18552601 via CL 18552604 via CL 18553016 via CL 18553035
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)
[CL 18553054 by andrew davidson in ue5-release-engine-test branch]
#ROBOMERGE-AUTHOR: andrew.davidson
#ROBOMERGE-SOURCE: CL 18552107 via CL 18552130 via CL 18552133 via CL 18552520 via CL 18552534
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)
[CL 18552539 by andrew davidson in ue5-release-engine-test branch]
Windows needs to set permissions accordingly.
#rb Brandon.Schaefer
[FYI] Josh.Adams
#preflight 61d79ed84c252480ca31e640
#ROBOMERGE-AUTHOR: jack.porter
#ROBOMERGE-SOURCE: CL 18539045 in //UE5/Release-5.0/... via CL 18539064
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)
[CL 18539081 by jack porter in ue5-release-engine-test branch]
Speculative fix for how a FFileHandleWindows might change from valid to invalid. The unwritten contract is that FFileHandleWindows instances returned from OpenRead are either null or are IsValid() == true.
Also fix FArchiveFileReaderGeneric::FlushCache from possibly dereferning a null handle to do the seek.
#rb Zousar.Shaker
#rnx
#preflight 61d3424e1f62d3ad4d492962
#ROBOMERGE-AUTHOR: matt.peters
#ROBOMERGE-SOURCE: CL 18503371 in //UE5/Release-5.0/... via CL 18503391
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)
[CL 18503412 by matt peters in ue5-release-engine-test branch]
RenderDoc and FTaskTagScope() do not play well together with the latter raising an ensure(). This ensure fires very early, earlier than all of the engine's machinery being reporting and logging are fully initialised, making it somewhat brittle.
#rb perl
#rnx
#jira ue-99840
#preflight 619e026ef70a9e92db5aa83f
#ROBOMERGE-AUTHOR: martin.ridgers
#ROBOMERGE-SOURCE: CL 18280839 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v895-18170469)
#ROBOMERGE[STARSHIP]: UE5-Release-Engine-Staging Release-5.0
[CL 18280857 by martin ridgers in ue5-release-engine-test branch]