Commit Graph

1384 Commits

Author SHA1 Message Date
Tim Smith
031cfd5742 Fixed issue where UBT would fail with a concurrency error when doing log once logging.
#rb Josh.Adams

[CL 26541238 by Tim Smith in ue5-main branch]
2023-07-24 09:03:11 -04:00
Ben Marsh
1f60ee0824 Horde: Unifying C#/C++ implementations of remote execution API.
- Abstract out platform specific implementation details into ComputePlatform.cpp/h.
- Add an overridable transport implementation of ComputeSocket, similar to what is available in C#.
- Add some local tests for C++ implementation.
- Various refactoring to converge implementation details/names/etc...

[CL 26535754 by Ben Marsh in ue5-main branch]
2023-07-22 14:17:04 -04:00
Ben Marsh
d5ff27ac33 Horde: Change IComputeBuffer to a concrete base class.
[CL 26516778 by Ben Marsh in ue5-main branch]
2023-07-21 12:57:00 -04:00
Ben Marsh
52ecb3a14a Horde: Change IComputeSocket to a concrete base class.
[CL 26508737 by Ben Marsh in ue5-main branch]
2023-07-21 08:49:43 -04:00
Ben Marsh
9addb084a3 Horde: Change IComputeChannel to a concrete implementation.
[CL 26508557 by Ben Marsh in ue5-main branch]
2023-07-21 08:26:18 -04:00
Ben Marsh
ea8344fcf4 Horde: Missing file.
[CL 26508369 by Ben Marsh in ue5-main branch]
2023-07-21 08:14:48 -04:00
Ben Marsh
5f611a31ab Horde: Change IComputeTransport into a concrete base class, to align with C++ implementation.
[CL 26508360 by Ben Marsh in ue5-main branch]
2023-07-21 08:14:31 -04:00
joe kirchoff
f5b1ae85ab Fix PATH separator on non-Windows platforms
#rnx
#jira UE-190551
#rb Ryan.Hummer

[CL 26469790 by joe kirchoff in ue5-main branch]
2023-07-19 16:32:44 -04:00
tim smith
a15f38417e Fix new C# warning messages in UHT
#rb self
#rnx

[CL 26438364 by tim smith in ue5-main branch]
2023-07-18 13:05:32 -04:00
Ben Marsh
8529a1d46c Horde: Rename IStorageClient.FindNodesAsync() to FindAliasAsync().
[CL 26419511 by Ben Marsh in ue5-main branch]
2023-07-17 18:11:53 -04:00
tim smith
d98aa77cc7 Fixed issue where invalid code would be generated if all FieldNotify properties in class were marked as editor only data.
#rb self

[CL 26411808 by tim smith in ue5-main branch]
2023-07-17 14:01:09 -04:00
tim smith
930e3d0324 Fixed issue where if export code threw an exception, the build will not display the error message or fail the build.
#rb self

[CL 26411529 by tim smith in ue5-main branch]
2023-07-17 13:53:22 -04:00
dan oconnor
cd239e8e9c Allow _DEPRECATED properties in sparse class data to not be marked as VisibleDefaultsOnly or EditDefaultsOnly
#rb Ben.Zeigler
#jira

[CL 26348381 by dan oconnor in ue5-main branch]
2023-06-30 13:25:18 -04:00
Ben Marsh
413326ba48 Horde: Use multi-threaded Blake3 hash computation for large objects.
[CL 26319402 by Ben Marsh in ue5-main branch]
2023-06-29 13:32:14 -04:00
carl bystrom
615e66f5c0 EpicGames.Perforce: Replace thread pool queue with new async-based one (with concurrency limits)
This should address I/O issues seen during job batch init, where ManagedWorkspaces are set up and synced. Prior to this CL, ThreadPoolWorkQueue could monopolize the shared thread pool which would starve other I/O operations, such as network traffic. Now these operations have a max concurrency of 4.

[CL 26282087 by carl bystrom in ue5-main branch]
2023-06-28 08:12:37 -04:00
Josh Adams
cb55033c0a - Disallow SDK.json reading if the platform isn't enabled on the platform
- If no DDPI.ini exists, mark the SDK as not usable on the platform (default the UEBuildPlaformSDK to disabled until the DDPI.ini file is read)
#rb joe.kirchoff
#jira UE-189549

[CL 26271235 by Josh Adams in ue5-main branch]
2023-06-27 17:19:49 -04:00
Ben Marsh
2fb6142ee2 Horde: Disable max concurrency test. This is not thread safe (on the uniqueTaskIds set), nor deterministic (there is no guarantee that the same task ids will be used for each spawned task).
[CL 26271132 by Ben Marsh in ue5-main branch]
2023-06-27 17:15:22 -04:00
Ben Marsh
a0e00b2992 Horde: Fix IDE2001 warnings about multiple statements on one line.
#fyi Carl.Bystrom

[CL 26271060 by Ben Marsh in ue5-main branch]
2023-06-27 17:10:34 -04:00
carl bystrom
4c79f390eb EpicGames.Core: Add AsyncThreadPoolWorkQueue
[CL 26255939 by carl bystrom in ue5-main branch]
2023-06-27 09:32:14 -04:00
robert manuszewski
b5e73242e3 Experimental support for Incremental Reachability Analysis (second attempt)
Disabled by default. gc.AllowIncrementalReachability controls if it's enabled or not.
gc.IncrementalReachabilityTimeLimit controls time limit (defaults to 0.005 = 5ms)
gc.VerifyNoUnrachableObjects (defaults to 0) controls additional GC assumption verification that no unreachable objects are reachable after RA is complete
gc.ContinuousIncrementalGC (defaults to 0) is a new GC stress test that runs incremental GC continuously
TObjectPtr barrier (Obj->MarkAsReachable()) is also currently disabled (compiled out with a macro) until we have all the places (ARO/BPVM) properly running barriers
EngineTest tests can and will run Incremental Reachability Analysis tests even if all the above is disabled

#rb Johan.Torp, Zousar.Shaker

[CL 26252569 by robert manuszewski in ue5-main branch]
2023-06-27 01:44:30 -04:00
Ben Marsh
6ee7312e16 Horde: Prevent exceptions being trapped and replaced with generic exceptions when reading from storage.
[CL 26238837 by Ben Marsh in ue5-main branch]
2023-06-26 13:57:14 -04:00
robert manuszewski
d5c2c7bc97 Undo changelist 26229717
#rb none

[CL 26237963 by robert manuszewski in ue5-main branch]
2023-06-26 13:26:02 -04:00
Thomas Sarkanen
ed25d80d16 Enable object pins in RigVM
#rb Helge.Mathee,Sara.Schvartzman,Nicholas.Frechette

[CL 26230325 by Thomas Sarkanen in ue5-main branch]
2023-06-26 05:58:36 -04:00
robert manuszewski
5800b6b608 Experimental support for Incremental Reachability Analysis
Disabled by default. gc.AllowIncrementalReachability controls if it's enabled or not.
gc.IncrementalReachabilityTimeLimit controls time limit (defaults to 0.005 = 5ms)
gc.VerifyUnrachableObjects (defaults to 0) controls additional GC assumption verification that no unreachable objects are reachable after RA is complete
gc.ContinuousIncrementalGC (defaults to 0) is a new GC stress test that runs incremental GC continuously
TObjectPtr barrier (Obj->MarkAsReachable()) is also currently disabled (compiled out with a macro) until we have all the places (ARO/BPVM) properly running barriers
EngineTest tests can and will run Incremental Reachability Analysis tests even if all the above is disabled

#rb Johan.Torp, Zousar.Shaker

[CL 26229728 by robert manuszewski in ue5-main branch]
2023-06-26 04:38:56 -04:00
Ben Marsh
31a83fc628 Horde: Move bundle implementation into a separate namespace.
[CL 26226699 by Ben Marsh in ue5-main branch]
2023-06-24 16:37:55 -04:00