Commit Graph

107 Commits

Author SHA1 Message Date
christopher waters
22de0b360d Adding a "deprecation" path for engine includes to allow types to be moved without breaking licensee module builds.
- Non-engine modules/targets will have to specify the "version" of includes via IncludeOrderVersion in TargetRules or ModuleRules.
- This setting will control the value of UE_ENABLE_INCLUDE_ORDER_DEPRECATED_IN_XXX where XXX is the version of the engine.
- When moving types out of a header, users will need to include the new location of the type in the header it was removed from but only if UE_ENABLE_INCLUDE_ORDER_DEPRECATED_IN_XXX is set.
- If a target does not change its IncludeOrderVersion to the latest version, UBT will print out a message telling users how to upgrade.
- This change introduces a new set of SharedPCH permutations to make sure modules with older versions get the PCH with UE_ENABLE_INCLUDE_ORDER_DEPRECATED_IN_XXX set correctly.

#jira none
#rb jonathan.adamczewski, joe.kirchoff
#preflight 623e1d3d196f3ae80b4c37ee

[CL 19518359 by christopher waters in ue5-main branch]
2022-03-25 16:16:30 -04:00
lukas hermanns
ca37394cdc Fix parsing multi-entrypoint arguments for parameter "-entry" in SCW.
#rb Ryan.Vance
#preflight 61df5db86a076ddb5307313a
#jira none
#rnx

#ROBOMERGE-AUTHOR: lukas.hermanns
#ROBOMERGE-SOURCE: CL 18590895 in //UE5/Release-5.0/... via CL 18590921 via CL 18590937
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Test -> Main) (v899-18417669)

[CL 18590955 by lukas hermanns in ue5-main branch]
2022-01-12 18:08:09 -05:00
arciel rekman
2a499437fe Change shader compression method to Oodle Selkie6 by default (UE-136845).
- Provides about 8% runtime memory savings (in local tests).
- Also, adds more compression types for shaders.
- Impact on the shader compilation (in SCWs) seems to be negligible in local tests.

#rb Devin.Doucette, Charles.Bloom
[REVIEW] [at]Devin.Doucette, [at]Charles.Bloom, [at]Jason.Nadro
#jira UE-136845

#ROBOMERGE-AUTHOR: arciel.rekman
#ROBOMERGE-SOURCE: CL 18502862 via CL 18503105 via CL 18503112 via CL 18505939 via CL 18505950
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18505961 by arciel rekman in ue5-release-engine-test branch]
2022-01-04 00:58:30 -05:00
aurel cordonnier
fc542f6cfd Merge from Release-Engine-Staging @ 18081189 to Release-Engine-Test
This represents UE4/Main @18073326, Release-5.0 @18081140 and Dev-PerfTest @18045971

[CL 18081471 by aurel cordonnier in ue5-release-engine-test branch]
2021-11-07 23:43:01 -05:00
arciel rekman
e10b7aa5d0 Shader compiler improvements.
Local shader compiler:
 - Not making 1 job batches (for High prio jobs) on startup
 - Randomizing pending job selection to reduce chance that multiple 60+ sec jobs get into a single batch

 (the above have the most effect on speed up, below is optional/misc)
 - Pushing the completed jobs back to manager before, and not after, pulling new ones to reduce idle time
 - Processing jobs in FIFO rather than LIFO order (change to LIFO seems like an ODSC regression? Hard to say definitively if it's a regression from the numbers, but seems odd to have the earliest jobs processed last)
 - Parallel processing of input and output files (starts sequential by default to reduce the CPU overhead, but is enabled if we ever see too long write/read)
 - More insights scopes

Distributed:
  - Not avoiding local machine for XGE on startup

Both:
 - Input file compression (disabled by default, need to better figure out when it's beneficial in a general case. Mostly for people with really slow I/O and XGE over VPN).
 - More stats, also more dense stat output. Removed an unimportant one, added stats about the batches.

#rb Jason.Nadro, Ben.Ingram
#[review] [at]Jason.Nadro, [at]Ben.Ingram
#preflight 6132ec79bf137d0001ae91ee
#jira UE-125101

#ushell-cherrypick of 17448576 by Arciel.Rekman

#ROBOMERGE-AUTHOR: arciel.rekman
#ROBOMERGE-SOURCE: CL 17448989 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17448996 by arciel rekman in ue5-release-engine-test branch]
2021-09-07 15:49:28 -04:00
guillaume abadie
3f0a1b9fb2 Allows SHADER_USE_PARAMETER_STRUCT() to submit all shader parameters in a single RHISetShaderParameter()
#rb yuriy.odonnell
#preflight 611d572d9db7df000134eb13

#ROBOMERGE-SOURCE: CL 17222098 via CL 17222140
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v855-17104924)

[CL 17222165 by guillaume abadie in ue5-release-engine-test branch]
2021-08-18 16:56:25 -04:00
danny couture
f5eb0e7181 Remove crash reporter thread from shader compiler as -nocrashreports was used anyway
#rnx
#rb Arciel.Rekman
#preflight 60fe98792882e40001e7abda

#ROBOMERGE-SOURCE: CL 16954704 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v838-16927207)

[CL 16954742 by danny couture in ue5-release-engine-test branch]
2021-07-26 07:53:26 -04:00
christopher waters
83f70197d3 Tessellation Removal: Removing RHI Hull/Domain shader types and enums.
#rb lukas.hermanns
#jira UE-94564
#preflight 607f2e11eb4f050001d4655e

[CL 16066223 by christopher waters in ue5-main branch]
2021-04-20 17:00:25 -04:00
christopher waters
874ec853a4 Filling a few gaps in Mesh shader support. Adding ShouldCompilePermutation support to shader pipeline types to guard against unsupported shader types.
#jira none
#rb arciel.rekman
#preflight 60773f1c3f280e0001331ab8

[CL 16012256 by christopher waters in ue5-main branch]
2021-04-14 17:05:02 -04:00
Arciel Rekman
cb6096f6ad Do not downprioritize XGE tasks, also print more info.
#rb none
#jira none
#rnx

#ushell-cherrypick of 15905787 by Arciel.Rekman

[CL 15906219 by Arciel Rekman in ue5-main branch]
2021-04-02 18:08:14 -04:00
Arciel Rekman
6423aaf503 SC: make XGE SCWs non-local, lower their priority, and other changes.
- Increased the number of jobs per XGE worker to reduce the number of times we start them. Since XGE SCWs aren't used for latency-critical jobs, this is expected to not cause user-visible delays.
- Added an ability to detect a hung distributed controller (but the build would be currently broken anyway as the jobs aren't reissued).
- Added a check for XGE system service running to avoid attempting to launch XGE on machines without it.
- Removed the code to even attempt to launch XGE XML interface.
- Also added some more logs about what's happening, and reduced the job cache verbosity.

#rb Jason.Nadro, Ben.Ingram, Danny.Couture
#jira none

#ROBOMERGE-OWNER: Arciel.Rekman
#ROBOMERGE-AUTHOR: arciel.rekman
#ROBOMERGE-SOURCE: CL 15878601 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v786-15839533)
#ROBOMERGE-CONFLICT from-shelf

[CL 15878696 by Arciel Rekman in ue5-main branch]
2021-03-31 14:15:12 -04:00
arciel rekman
d86c6b0df1 Replace "UE4" with UnrealEditor in SCW error message.
#rb none
#jira none
#rnx

#ROBOMERGE-SOURCE: CL 15746917 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v781-15675533)

[CL 15750774 by arciel rekman in ue5-main branch]
2021-03-19 16:20:32 -04:00
Guillaume Abadie
a9e3103abb Fixes crash in shader compile worker due to RDG_BUFFER_ACCESS that doesn't have a shader type
#rb none

[CL 15718481 by Guillaume Abadie in ue5-main branch]
2021-03-17 03:17:06 -04:00
Guillaume Abadie
51824a3a5f Pipedown FShaderParametersMetadata to the shader compile worker
#rb yuriy.odonnell

[CL 15714856 by Guillaume Abadie in ue5-main branch]
2021-03-16 16:19:23 -04:00
Arciel Rekman
d3250fc6f9 Make shader compression a project setting and move to SCWs (UE-73155).
#rb Jason.Nadro, Lukas.Hermanns
[at]Jason.Nadro, [at]Ben.Ingram, [at]Arne.Schober, [at]Rolando.Caloca, [at]Lukas.Hermanns, [at]Danny.Couture
#jira UE-73155
#preflight 604a640053f17f0001953558

#ROBOMERGE-OWNER: Arciel.Rekman
#ROBOMERGE-AUTHOR: arciel.rekman
#ROBOMERGE-SOURCE: CL 15680314 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v781-15675533)
#ROBOMERGE-CONFLICT from-shelf

[CL 15683639 by Arciel Rekman in ue5-main branch]
2021-03-11 21:19:35 -04:00
danny couture
4e05bf7e86 Remove 8 Above Normal IO threads in each shader workers by using -nothreading flag
- This helps with overall system responsiveness when many shader workers are spawned at the same time

#rb Arciel.Rekman

[CL 15580762 by danny couture in ue5-main branch]
2021-03-03 07:52:18 -04:00
Marc Audy
9753392e2b Merge UE5/RES CL# 15462083 to UE5/Main
This represents UE4/Main @ 15414221

[CL 15463811 by Marc Audy in ue5-main branch]
2021-02-18 18:13:28 -04:00
Josh Adams
b0e4357576 - UBT Code changes to remove 32-bit Windows support (C++ code for 32-bit still exists)
#rb marc.audy (concept, not each file)

[CL 15265424 by Josh Adams in ue5-main branch]
2021-01-31 15:09:58 -04:00
Marc Audy
4c1bb11c29 Merge UE5/Release-Engine-Staging to UE5/Main @ 14548662
This represents UE4/Main @ 14525125 + cherrypicked fixes
#skipundocheck

[CL 14551026 by Marc Audy in ue5-main branch]
2020-10-22 19:19:16 -04:00
Marc Audy
50a3d7d368 Merge Release-Engine-Staging to Main @ CL# 14467590
This represents UE4/Main @ 14432125 + some cherrypick fixes

[CL 14468207 by Marc Audy in ue5-main branch]
2020-10-09 22:42:26 -04:00
Marcus Wassmer
3b81cf8201 Merging using //UE5/Main_to_//UE5/Release-Engine-Staging @14384769
autoresolved files
#rb none

[CL 14384911 by Marcus Wassmer in ue5-main branch]
2020-09-24 00:43:27 -04:00
Arne Schober
3bf935d1ce Explicitly tagging IsInRenderingThread, IsInGameThread etc. functions to be able to move them between theads in the future. The old behaviour is still in packe to verify the new system, but will be removed in the future.
#RB Andriy.Tylychko, Jonas.Meyer

[CL 13825935 by Arne Schober in ue5-main branch]
2020-07-02 13:21:15 -04:00
Marc Audy
11f5b21210 Merging //UE5/Release-Engine-Staging @ 13752110 to Main (//UE5/Main)
#rnx

[CL 13753156 by Marc Audy in ue5-main branch]
2020-06-23 18:40:00 -04:00
rolando caloca
d1c7cbbd16 UE4.25 - Disambiguates crashes from inside a platform shader compiler
#rb Lukas.Hermanns
#rnx
#jira UE-79375
#lockdown Marcus.Wassmer

#ROBOMERGE-SOURCE: CL 12872434 in //UE4/Release-4.25/... via CL 12872446 via CL 12872449
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v681-12776863)

[CL 12872452 by rolando caloca in Main branch]
2020-04-16 16:36:56 -04:00
Rolando Caloca
bbb9564388 Copying //UE4/Dev-RenderPlat-Staging@11110326 to //UE4/Main
#rb none
#rnx

[CL 11110369 by Rolando Caloca in Main branch]
2020-01-24 18:07:01 -05:00