Commit Graph

1401 Commits

Author SHA1 Message Date
ryan hummer
b8460946bc Change UnrealBuildException to print as errors
* Give it a unique exit code
* And introduce a new output format MinimalError to give minimal info output, but as an error

#rnx
#jira UE-191956
#rb joe.kirchoff, marc.audy, bryan.johnson

[CL 26823591 by ryan hummer in ue5-main branch]
2023-08-03 15:42:02 -04:00
kirill zorin
0c7d13dd72 UHT: Generating GC write barriers for UFUNCTIONs where needed.
#rb tim.smith
#rb robert.millar

[CL 26770722 by kirill zorin in ue5-main branch]
2023-08-02 10:08:24 -04:00
Ben Marsh
9ffc2fabaf Horde: Invalidate compute buffer pointers when disposed. Will hopefully result in better use-after-free errors.
[CL 26747446 by Ben Marsh in ue5-main branch]
2023-08-01 14:18:25 -04:00
Ben Marsh
3ede1e3a53 Horde: Allocate the correct buffer size before writing output from a child process.
[CL 26747387 by Ben Marsh in ue5-main branch]
2023-08-01 14:17:20 -04:00
Ben Marsh
649f23a41b Horde: Suppress static analysis warning.
[CL 26729721 by Ben Marsh in ue5-main branch]
2023-07-31 22:31:03 -04:00
Ben Marsh
44116adece Horde: Suppress directory not found exception on Linux.
[CL 26729299 by Ben Marsh in ue5-main branch]
2023-07-31 22:07:19 -04:00
Ben Marsh
30d7777e42 Horde: More aggressively terminate remote execution sockets. Now detaches buffers immediately rather than waiting for the receive thread to do so in response to messages received from the remote.
[CL 26729054 by Ben Marsh in ue5-main branch]
2023-07-31 21:45:26 -04:00
Ben Marsh
39ade686ba Horde: Add tests for remote execution agent message loop.
[CL 26699705 by Ben Marsh in ue5-main branch]
2023-07-30 21:26:43 -04:00
Ben Marsh
9a2868477b Horde: Correctly handle IPC message loop termination in compute tasks.
[CL 26697309 by Ben Marsh in ue5-main branch]
2023-07-29 19:20:57 -04:00
Ben Marsh
3dc916b15e Horde: Use async disposer for compute IPC message pump; can cause deadlocks using the synchronous version when running as a continuation on another task.
[CL 26696288 by Ben Marsh in ue5-main branch]
2023-07-29 15:28:03 -04:00
Ben Marsh
af2e93a727 Horde: Prevent timeout exception from propagating to callers of RemoteComputeSocket.CloseAsync().
[CL 26696273 by Ben Marsh in ue5-main branch]
2023-07-29 15:26:43 -04:00
Ben Marsh
a343067900 Horde: Set the UE_HORDE_SHARED_DIR environment variable when running compute jobs.
[CL 26684142 by Ben Marsh in ue5-main branch]
2023-07-28 15:28:11 -04:00
Ben Marsh
860736cdbd EpicGames.Core: Record the .NET activity stack on log events. Can be used to supplement logs with context-specific information allowing more granular information about errors and warnings.
[CL 26683383 by Ben Marsh in ue5-main branch]
2023-07-28 15:10:41 -04:00
Ben Marsh
6280be11d6 Horde: Fix tests.
[CL 26683334 by Ben Marsh in ue5-main branch]
2023-07-28 15:09:47 -04:00
Ben Marsh
705931a7ec Horde: Unifying C#/C++ implementations of remote execution code.
- Handle ref counting in the same way for each implementation.
- Writers now need to be created explicitly, and are marked complete when their last writer is released.
- Added -InProc command line argument to sample app, which runs C# assemblies in the same process when possible.

[CL 26675350 by Ben Marsh in ue5-main branch]
2023-07-28 11:51:34 -04:00
Ben Marsh
f9e052f6bd Horde: Sync C# memory layout of compute buffer with the C++ version.
[CL 26609902 by Ben Marsh in ue5-main branch]
2023-07-26 12:07:12 -04:00
tim smith
db61408b4d Added missing class cast flag
#rb self

[CL 26604864 by tim smith in ue5-main branch]
2023-07-26 09:40:44 -04:00
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