Commit Graph

100 Commits

Author SHA1 Message Date
jordan cristiano
ca523d6d48 RT polling fixes. Still disabled by default.
- Fixed assertion related to stall queue being used in stalling mode when the RT uses it in polling mode.
- Added csv stat to show the delay between FDrawSceneCommand enqueue and execution on the RT.
- Changed ProcessTasksNamedThread RT check to use ThreadId instead of IsInRenderingThread. This makes it consistent with the RT check in EnqueueFromOtherThread.

#jira UE-91598, FORT-269443
#rb andriy.tylychko
#rnx

#ROBOMERGE-SOURCE: CL 12830260 via CL 12847809 via CL 12847849 via CL 12847913
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v681-12776863)

[CL 12847983 by jordan cristiano in Main branch]
2020-04-16 05:07:47 -04:00
jordan cristiano
0eab7f3011 Disabled render thread polling optimization. Also reverted building actor tick modifications that went along with it.
We're investigating a few potential issues and will target a future release.

#rb
[FYI] andriy.tylychko, arne.schober, chris.bunner, andrew.ladenberger, ben.woodhouse
#rnx

#ROBOMERGE-SOURCE: CL 12644222 via CL 12644307 via CL 12649250 via CL 12649447 via CL 12649494 via CL 12649611
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v675-12543919)

[CL 12649708 by jordan cristiano in Main branch]
2020-04-07 00:50:25 -04:00
jordan cristiano
80780bb53e Changed render thread task graph execution to use a polling configuration vs task wakeup triggers.
The motivation here is to reduce the overhead of ENQUEUE_RENDER_COMMAND. A good chunk of the time was spent in FEvent::Trigger to wake up the render thread to process a small amount of work. The set polling rate is 1ms.

With this change, tests show a 0.2ms decrease in GT avg (tested on switch and ps4). RT avg increased slightly (50us) on ps4, and was unchanged on switch.

Further testing to monitor impact on all platforms will continue. Especially on high end pc configurations with respect to low latency.

To disable, set TaskGraph.DoRenderThreadWakeupTrigger=true

#rb andriy.tylychko, ben.woodhouse, arne.schober
[FYI] chris.bunner, andrew.ladenberger
#rnx

#ROBOMERGE-SOURCE: CL 12580418 via CL 12580427 via CL 12580471 via CL 12580478 via CL 12580483
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v675-12543919)

[CL 12580511 by jordan cristiano in Main branch]
2020-04-02 18:14:14 -04:00
louisphilippe seguin
307f9b3fbf Taskgraph
* Added TaskGraph.ForkedProcessMaxWorkerThreads cvar to directly control number of worker threads spawned on forked processes that enable multithreading

#rb Jason.Adcock, Andriy.Tylychko

#ROBOMERGE-SOURCE: CL 12473694 via CL 12473727 via CL 12473731 via CL 12473738
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v672-12450963)

[CL 12473748 by louisphilippe seguin in Main branch]
2020-03-27 15:17:09 -04:00
louisphilippe seguin
b7d6a20f35 TaskGraph can now multithreaded on a forked server with -PostForkThreading
The Taskgpraph needs to be shutdown and recreated entirely by the forked process for the switch to occur.
The functionnality can be disabled via "TaskGraph.EnableForkedMultithreading 0" if needed.

#rb Ryan.Gerleve, John.Barrett, Andriy.Tylychko

#ROBOMERGE-SOURCE: CL 12466340 via CL 12468404 via CL 12468502 via CL 12468606
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v672-12450963)

[CL 12468689 by louisphilippe seguin in Main branch]
2020-03-27 11:21:21 -04:00
Rolando Caloca
5b82f15def Copying //UE4/Dev-RenderPlat-Staging@11388153 to //UE4/Main
#rb none
#rnx

[CL 11388545 by Rolando Caloca in Main branch]
2020-02-12 13:27:19 -05:00
Josh Adams
aa9705149b Copying Private-LoadTimes-4.24 stream to Main. Biggest changes are in Materials/Shader memory freezing.
#rb none

[CL 11282608 by Josh Adams in Main branch]
2020-02-06 13:13:41 -05:00
michael noland
2d6847d01a Core: Fixes for various unsafe implicit type conversion warnings in the Core module (WIP; some files still suppress the warning)
- Ptrdiff -> int32
- Float/int confusion and double/float
- size_t stuff; various changes to the algorithms to use a deduced IndexType template argument and/or decltype to use the appropriate size for indicies and counts
- Fixed GetNum(FString) incorrectly returning SIZE_T instead of int32, and GetNum(container) now returns whatever container.Num() does (so usually int32)
#jira UE-86949
#rb marc.audy, steve.robb


#ROBOMERGE-OWNER: michael.noland
#ROBOMERGE-AUTHOR: michael.noland
#ROBOMERGE-SOURCE: CL 11050799 via CL 11050828 via CL 11050837
#ROBOMERGE-BOT: (v637-11041722)

[CL 11051763 by michael noland in Main branch]
2020-01-17 13:49:41 -05:00
ryan durand
0f0464a30e Updating copyright for Engine Runtime.
#rnx
#rb none


#ROBOMERGE-OWNER: ryan.durand
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869210 via CL 10869511 via CL 10869900
#ROBOMERGE-BOT: (v613-10869866)

[CL 10870549 by ryan durand in Main branch]
2019-12-26 14:45:42 -05:00
Robert Manuszewski
7b6f840f7f Copying //UE4/Dev-Core @ 10708550 to Dev-Main (//UE4/Dev-Main)
#rb none

[CL 10708666 by Robert Manuszewski in Main branch]
2019-12-13 11:07:03 -05:00
Stefan Boberg
d2f9a61b06 Copy-up from Dev-Core
#rb none

[CL 10419044 by Stefan Boberg in Main branch]
2019-11-25 12:03:09 -05:00
Stefan Boberg
1f813eb516 Copying //UE4/Dev-Core to Main (//UE4/Main)
#rb many

[CL 9405827 by Stefan Boberg in Main branch]
2019-10-03 16:26:48 -04:00
JeanMichel Dignard
0f9ad96858 Copying //UE4/Dev-Enterprise @ cl 6890376 to Dev-Main (//UE4/Dev-Main)
#lockdown nick.penwarden
#rb none

[CL 6890764 by JeanMichel Dignard in Main branch]
2019-06-07 11:22:52 -04:00
Stefan Boberg
8607ecb30d Copying //UE4/Dev-Core to Dev-Main (//UE4/Dev-Main)
#rb none

[CL 6815521 by Stefan Boberg in Main branch]
2019-06-03 15:32:00 -04:00
Ben Marsh
0cc6e3dca6 Copying //UE4/Dev-Build to Dev-Main (//UE4/Dev-Main)
#rb none
#rnx

[CL 6631504 by Ben Marsh in Main branch]
2019-05-24 11:51:54 -04:00
Martin Ridgers
649c7c0200 Copy up of Unreal Insights from //Tasks/UE4/Dev-Core-Trace.
#rb none

[CL 6426511 by Martin Ridgers in Dev-Core branch]
2019-05-13 09:05:12 -04:00
chris bunner
ce40dc0be5 Backing out changes in CL 6001967 now confirmed unrelated to live issues to re-resolve a common hang.
#rb None

#ROBOMERGE-OWNER: robert.manuszewski
#ROBOMERGE-AUTHOR: chris.bunner
#ROBOMERGE-SOURCE: CL 6010828 via CL 6010829 via CL 6010830 via CL 6010831 via CL 6011286 via CL 6011345
#ROBOMERGE-BOT: CORE (Main -> Dev-Core)

[CL 6014658 by chris bunner in Dev-Core branch]
2019-04-19 13:02:01 -04:00
chris bunner
b41b816aa0 Backing out changes in CL 6001967 now confirmed unrelated to live issues to re-resolve a common hang.
#rb None


#ROBOMERGE-SOURCE: CL 6010828 via CL 6010829 via CL 6010830 via CL 6010831 via CL 6011286

[CL 6011345 by chris bunner in Main branch]
2019-04-19 08:21:59 -04:00
chris bunner
3fd703e80b Partially backing out 5830553 which resolved a major hang but is suspected of causing a new major hitch.
[REVIEW]

#ROBOMERGE-OWNER: robert.manuszewski
#ROBOMERGE-AUTHOR: chris.bunner
#ROBOMERGE-SOURCE: CL 6001373 via CL 6001967 via CL 6001991 via CL 6005905 via CL 6005947 via CL 6006820 via CL 6006845
#ROBOMERGE-BOT: CORE (Main -> Dev-Core)

[CL 6009254 by chris bunner in Dev-Core branch]
2019-04-19 01:16:51 -04:00
chris bunner
f43aab02fd Partially backing out 5830553 which resolved a major hang but is suspected of causing a new major hitch.
[REVIEW]


#ROBOMERGE-SOURCE: CL 6001373 via CL 6001967 via CL 6001991 via CL 6005905 via CL 6005947 via CL 6006820

[CL 6006845 by chris bunner in Main branch]
2019-04-18 22:48:40 -04:00
chris bunner
8bd07babe5 Pump platform messages when clearing out task graphs that rely on other threads, e.g. GT GC event waiting on RT which is blocked in Present waiting for messages to be handled.
Includes fix for stat task causing an infinite loop on development server config.
Gil.Gribb, Matt.Kuhlenschmidt

#ROBOMERGE-OWNER: robert.manuszewski
#ROBOMERGE-AUTHOR: chris.bunner
#ROBOMERGE-SOURCE: CL 5830544 via CL 5830551 via CL 5830553 via CL 5835142 via CL 5835714
#ROBOMERGE-BOT: CORE (Main -> Dev-Core)

[CL 5875349 by chris bunner in Dev-Core branch]
2019-04-12 21:07:22 -04:00
chris bunner
f420ec7f9b Pump platform messages when clearing out task graphs that rely on other threads, e.g. GT GC event waiting on RT which is blocked in Present waiting for messages to be handled.
Includes fix for stat task causing an infinite loop on development server config.
Gil.Gribb, Matt.Kuhlenschmidt


#ROBOMERGE-SOURCE: CL 5830544 via CL 5830551 via CL 5830553 via CL 5835142

[CL 5835714 by chris bunner in Main branch]
2019-04-12 10:03:13 -04:00
bob tellez
c627be0607 Back out changelist 5824471. Causes windows server to freeze at startup
[FYI] Chris.Bunner


#ROBOMERGE-SOURCE: CL 5826025 via CL 5826026 via CL 5826027 via CL 5830113

[CL 5830242 by bob tellez in Main branch]
2019-04-11 10:33:20 -04:00
chris bunner
9da7219374 Pump platform messages when clearing out task graphs that rely on other threads, e.g. GT GC event waiting on RT which is blocked in Present waiting for messages to be handled.
Gil.Gribb, Matt.Kuhlenschmidt, Jian.Ru


#ROBOMERGE-SOURCE: CL 5824471 via CL 5824474 via CL 5824476 via CL 5829221

[CL 5829336 by chris bunner in Main branch]
2019-04-11 10:17:13 -04:00
anthony bills
a4dbacea38 Revert stats fix 5554525 as it made comparing RT times difficult and also includes time stalled on the rhithread.
[REVIEW]


#ROBOMERGE-SOURCE: CL 5735961 via CL 5735966 via CL 5735970 via CL 5735971 via CL 5737382

[CL 5737397 by anthony bills in Main branch]
2019-04-04 10:19:53 -04:00