Commit Graph

1436 Commits

Author SHA1 Message Date
robert manuszewski
be0fbf1a7f Fixing a crash when launching cooked projects with the Event Driven Loader disabled
#rb none
#jira UE-73368
#lockdown cristina.riveron

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: robert.manuszewski
#ROBOMERGE-SOURCE: CL 6316372 in //UE4/Release-4.22/... via CL 6317373
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 6323637 by robert manuszewski in Dev-Build branch]
2019-05-06 17:11:42 -04:00
Josh Adams
1e4b186150 - Big update to platforms: PlatformExtensions
- This allows for Confidential platforms to exist outside of the engine, and insert themselves in as needed
- Directory structure is, where .... mirrors the directory structure for Engine and projects
     - /Platforms/XXX/....
- Moving to more data driven approach for ShaderPlatforms and PlatformInfo, where they can be read from DataDrivenPlatformInfo.ini files that live in the platform config folders
- Removed platform mentions from UBT, by way of changing some enums to partial classes with static members (see UnrealTargetPlatform)
- Various other UBT/UAT modifications to allow for looking in other locations for files
- THIS IS NOT A COMPLETE AND FINAL SOLUTION. WE WILL CONTINUE WORK IN DEV-BUILD BEFORE ITS READY FOR PRIMETIME
#rb ben.marsh

[CL 6271418 by Josh Adams in Dev-Build branch]
2019-05-03 08:03:23 -04:00
david harvey
093a2a9803 [LLM] another pass over EngineMisc. moves about 15MB out in my test replay, mostly moved to LoadMapMisc and StreamingManager.
#rb anthony.bills

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: david.harvey
#ROBOMERGE-SOURCE: CL 6173661 via CL 6179493 via CL 6179684
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 6210350 by david harvey in Dev-Build branch]
2019-05-01 18:16:40 -04:00
marc audy
a68b24bd8e Merging using //Ocean/Dev-EngineMerge-To-//UE4/Main
#rb
#rnx

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: marc.audy
#ROBOMERGE-SOURCE: CL 5986648 in //UE4/Main/...
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5999131 by marc audy in Dev-Build branch]
2019-04-18 21:22:02 -04:00
johan torp
004a4c3857 Fix race condition in cook -diffonly
The same ubulk file, typically for a texture, was written by two different threads. This caused a fatal SavePackage assert in FAsyncWriteWorker::DoWork(). There was no need to write out these files to disk at all.

Also cleaned up surrounding code a little bit.

#jira ue-72635
#rb robert.manuszewski

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: johan.torp
#ROBOMERGE-SOURCE: CL 5937291 via CL 5937787 via CL 5937827
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5956288 by johan torp in Dev-Build branch]
2019-04-17 17:00:58 -04:00
nick darnell
8fa6917f88 Adding const variants of some of the more common AddReferencedObject(s) functions to allow for FGCObjects to store const pointers to UObjects or collections and report those references easily, otherwise people make the mistake of creating local ptrs that can't be nulled out correctly.
#rb Robert.Manuszewski
[FYI] Dan.Hertzka

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: nick.darnell
#ROBOMERGE-SOURCE: CL 5830834 via CL 5830835 via CL 5835213 via CL 5835996
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5892388 by nick darnell in Dev-Build branch]
2019-04-14 06:45:25 -04:00
pj kack
528180d202 Optimize UPackage::IsFullyLoaded() for cooker.
The editor specific feature of querying the file system to identify newly created packages (not having a corresponding file on disk) is really slow.
Early out from this expensive check when the package already has a known file size.

VTune user-mode cpu sampling time results when cooking a big data set (~200 000 packages):
UCookOnTheFlyServer::MaybeMarkPackageAsAlreadyLoaded() down from 10 sec to 0.1 sec, a 100X speedup.
FLinkerLoad::LoadAllObjects down from 400 sec to 280 sec, a 1.4X speedup, i.e. ~4% (120 sec) of the total load time of 2750 sec.

#rb robert.manuszewski

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: pj.kack
#ROBOMERGE-SOURCE: CL 5818305 via CL 5818901 via CL 5818980
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5850321 by pj kack in Dev-Build branch]
2019-04-12 13:26:36 -04:00
pj kack
34785e82c1 Back out integrated changelist 5586728 (5571078) to resubmit all cook -iterate optimizations implemented on //UE4/Dev-core/... (see 5533504)
New AssetRegistryState::InitializeFromExistingAndPrune temporarily disabled until some bugs have been fixed.

Test Scenario:
1) BuildCookStageAndRun with these arguments: -platform=Win64 -configuration=Development
2) CookIterate with these arguments: -run=Cook -CookCultures=en -TargetPlatform=WindowsClient -unversioned -stdout -unattended -iterate

Wall Time Results (as an average of running step 2) two times):
Before: ~09:40 (580 seconds) cook commandlet time
After: ~02:30 (150 seconds) cook commandlet time
=> 07:10 (430 seconds ) faster, i.e. a ~ 3.9x speedup

Win32 FileSystem Results:
Before: 1.5 million GetFileAttribute calls and 1.2 million FindNextFile calls
After: 35 0000 GetFileAttribute calls and 1.6 million FindNextFile calls
=> ~400 000 calls to FindNextFile replaces ~1.5 million calls to GetFileAttribute

#rb none


(peafour-cherrypick of //UE4/Dev-Core/[at]5645695 by PJ.Kack)

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: pj.kack
#ROBOMERGE-SOURCE: CL 5533504 via CL 5533655 via CL 5536177 via CL 5772728 via CL 5772753 via CL 5772793
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5783689 by pj kack in Dev-Build branch]
2019-04-08 13:38:49 -04:00
bob tellez
f3de402b2b #UE4 Changed the order of the asset load error message to show the referencer first
#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: bob.tellez
#ROBOMERGE-SOURCE: CL 5755606 via CL 5763296 via CL 5763365
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5776264 by bob tellez in Dev-Build branch]
2019-04-08 13:02:18 -04:00
graeme thornton
a3eb4cec27 Edigration of an FLinkerLoad optimization from Dev-Core CL 5709116
Second optimization to a heavily hit function that uses an FArchiveFromStructuredArchive adapter. That class needs optimization, so temporarily use a straight FArchive path when text archive support is compiled out

fyi ben.woodhouse, gil.gribb, per.larsson

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: graeme.thornton
#ROBOMERGE-SOURCE: CL 5716883 via CL 5716884 via CL 5716885 via CL 5716886 via CL 5717811 via CL 5717889
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5728173 by graeme thornton in Dev-Build branch]
2019-04-04 01:06:52 -04:00
bob tellez
a6445134a2 #UE4 Improve logging when assets fail to load. Failing to get the package linker will now produce fewer redundant log messages and all failure messages will include the asset that failed to load as well as the asset that was requesting the linker where possible.
#rb Robert.Manuszewski

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: bob.tellez
#ROBOMERGE-SOURCE: CL 5713888 via CL 5714486 via CL 5714487
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5721555 by bob tellez in Dev-Build branch]
2019-04-03 21:43:23 -04:00
robert manuszewski
ec35509868 Fixing crashes in pkg info commandlet
#rb none

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: robert.manuszewski
#ROBOMERGE-SOURCE: CL 5707932 via CL 5708541 via CL 5708552 via CL 5708563 via CL 5708976 via CL 5709035
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5718534 by robert manuszewski in Dev-Build branch]
2019-04-03 21:04:09 -04:00
bob tellez
b2380e42e1 #UE4 Fix a bug that caused logs about missing assets to not show their referencer
#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: bob.tellez
#ROBOMERGE-SOURCE: CL 5641069 via CL 5641333 via CL 5648075
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5653487 by bob tellez in Dev-Build branch]
2019-03-29 17:04:16 -04:00
bob tellez
18bbe2d40c Back out changelist 5533504. Crash at startup on forking linux servers. (Missing referencer information)
#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: bob.tellez
#ROBOMERGE-SOURCE: CL 5571078 via CL 5572105 via CL 5572109
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5585205 by bob tellez in Dev-Build branch]
2019-03-27 01:36:46 -04:00
daniel lamb
0fd9572f84 Fixed crash in diff cook commandlet.
#rb Andrew.Grant

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: daniel.lamb
#ROBOMERGE-SOURCE: CL 5558994 via CL 5559027 via CL 5560253 via CL 5561251
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5582585 by daniel lamb in Dev-Build branch]
2019-03-27 01:19:37 -04:00
pj kack
bdca04ce2f Copying task stream Dev-cook to Main
Integrate all cook -iterate optimizations from //UE4/Dev-core/...

Test Scenario:
1) BuildCookStageAndRun with these arguments: -platform=Win64 -configuration=Development
2) CookIterate with these arguments: -run=Cook -CookCultures=en -TargetPlatform=WindowsClient -unversioned -stdout -unattended -iterate

Wall Time Results (as an average of running step 2) two times):
Before: ~09:40 (580 seconds) cook commandlet time
After: ~02:30 (150 seconds) cook commandlet time
=> 07:10 (430 seconds ) faster, i.e. a ~ 3.9x speedup

Win32 FileSystem Results:
Before: 1.5 million GetFileAttribute calls and 1.2 million FindNextFile calls
After: 35 0000 GetFileAttribute calls and 1.6 million FindNextFile calls
=> ~400 000 calls to FindNextFile replaces ~1.5 million calls to GetFileAttribute

#rb none

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: pj.kack
#ROBOMERGE-SOURCE: CL 5533504 via CL 5533655 via CL 5536177
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5544723 by pj kack in Dev-Build branch]
2019-03-25 17:30:58 -04:00
marc audy
ca2bf7f352 Fix crash on shutdown depending on order of globals being destroyed
#jira
#rnx

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: marc.audy
#ROBOMERGE-SOURCE: CL 5494625 via CL 5494635 via CL 5494639 via CL 5497857 via CL 5497991
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5512110 by marc audy in Dev-Build branch]
2019-03-22 17:38:27 -04:00
dan oconnor
2090f25a8c Avoid resetting bExportLoadFailed when an object is destroyed, allows exports to stay invalidated after a GC call. Also we now invalidate exports for nodes replaced via ReplaceOldNodeWithNew
#rb Robert.Manuszewski
#jira UE-70904
#lockdown Cristina.Riveron

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: dan.oconnor
#ROBOMERGE-SOURCE: CL 5497598 in //UE4/Release-4.22/... via CL 5497599
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5512019 by dan oconnor in Dev-Build branch]
2019-03-22 17:38:01 -04:00
robert manuszewski
36519ed9a6 Fixing crash when the engine tries to open content saved with a newer engine version
#jira UE-71880
#rb none
#lockdown cristina.riveron

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: robert.manuszewski
#ROBOMERGE-SOURCE: CL 5496341 in //UE4/Release-4.22/... via CL 5496403
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5512003 by robert manuszewski in Dev-Build branch]
2019-03-22 17:37:57 -04:00
marc audy
1082b2d9ca Rework sparse delegate storage to not use uobject annotation and manage its own map and lock state. This eliminates unnnecessary annotation cache overhead and ensures entire operation on map is completed while the lock is in place rather than copying per-object map out of the annotation and then moving modified inner per-object map back in to the annotation as two separately locked actions.
#rnx

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: marc.audy
#ROBOMERGE-SOURCE: CL 5483896 via CL 5483909 via CL 5483913 via CL 5487278 via CL 5487454
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5507511 by marc audy in Dev-Build branch]
2019-03-22 17:12:17 -04:00
steve robb
c79a37a178 Fix for warnings about engine classes being hot reloaded when they haven't even changed.
#jira UE-71581
#rb none
[FYI] jamie.dale
#lockdown cristina.riveron

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: steve.robb
#ROBOMERGE-SOURCE: CL 5459196 in //UE4/Release-4.22/... via CL 5459199
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5475452 by steve robb in Dev-Build branch]
2019-03-20 13:21:47 -04:00
Ben Marsh
07e535411b Merging //UE4/Dev-Main to Dev-Build (//UE4/Dev-Build)
#rb none
#rnx

[CL 5435186 by Ben Marsh in Dev-Build branch]
2019-03-18 16:38:36 -04:00
marc audy
22249c99e0 A second attempt at soothing Linux build errors
#jira UE-71127
#rnx

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: marc.audy
#ROBOMERGE-SOURCE: CL 5335697 via CL 5335698 via CL 5335818 via CL 5335829
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5376147 by marc audy in Dev-Build branch]
2019-03-12 21:19:51 -04:00
jon nabozny
7c69b52d0e Fast TArray Delta Serialization
[REVIEW] [at]Brian.Bekich [at]Ryan.Gerleve [at]Mattias.Hornlund [at]Bart.Hawthorne [at]Peter.Engstrom [at]LouisPhilippe.Seguin
#rb Ryan.Gerleve

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: jon.nabozny
#ROBOMERGE-SOURCE: CL 5334271 via CL 5334273 via CL 5334274 via CL 5335302 via CL 5335303
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5375507 by jon nabozny in Dev-Build branch]
2019-03-12 21:15:12 -04:00
marc audy
47213c4a1c Attempt to fix linux CIS
#jira UE-71127
#rnx

#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: marc.audy
#ROBOMERGE-SOURCE: CL 5334253 via CL 5334255 via CL 5335168 via CL 5335172
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build)

[CL 5375409 by marc audy in Dev-Build branch]
2019-03-12 21:14:37 -04:00