Commit Graph

16614 Commits

Author SHA1 Message Date
dan elksnitis
92c56f938f [ShaderCompileWorker] minor fixes:
- allow 0 TimeToLive to be specified explicitly on commandline (useful when debugging single-job debug worker input files, without this it keeps running the same job repeatedly) and modify single job worker input commandline txt file to use this instead of 0.5f
- change config-conditional behaviour serializing to memory instead of file on disk to be conditional on an optional cmdline argument instead, and move file copy into the block that does the file writing (otherwise it repeatedly tries and fails to copy the nonexistent file)

#preflight 6377fed033774509008c42c6
#rb Jason.Nadro

[CL 23234934 by dan elksnitis in ue5-main branch]
2022-11-22 09:42:02 -05:00
Martin Ridgers
d4af074fe0 Removed OpStart for clarity
#preflight none
#rnx
(git:06eb61a - Martin Ridgers - 2022-11-22 11:08:02 +0100)

[CL 23233913 by Martin Ridgers in ue5-main branch]
2022-11-22 08:15:55 -05:00
Martin Ridgers
4ae563d2a3 Split parsing of .utrace magic into its own method
#rnx
#preflight none
(git:31963c2 - Martin Ridgers - 2022-11-22 11:03:03 +0100)

[CL 23233767 by Martin Ridgers in ue5-main branch]
2022-11-22 08:02:11 -05:00
Martin Ridgers
63c40dc2a4 Have the recorder relay create the trace itself
#rnx
#preflight none
(git:e317541 - Martin Ridgers - 2022-11-22 09:39:12 +0100)

[CL 23233602 by Martin Ridgers in ue5-main branch]
2022-11-22 07:39:38 -05:00
Martin Ridgers
b063c16470 Split op IDs across multiple lines
#preflight none
#rnx
(git:2ca2101 - Martin Ridgers - 2022-11-22 09:29:54 +0100)

[CL 23233591 by Martin Ridgers in ue5-main branch]
2022-11-22 07:39:15 -05:00
Martin Ridgers
c97877ca57 Moved socket keep-alive modification into the relay as it is the socket owner
#preflight none
#rnx
(git:8f63330 - Martin Ridgers - 2022-11-21 10:03:07 +0100)

[CL 23233583 by Martin Ridgers in ue5-main branch]
2022-11-22 07:38:47 -05:00
paul chipchase
c9735099a8 UnrealVirtualizationTool can now be given the path of a package or the path of a directory of packages to virtualize in addition to previous functionality. NOTE that all existing functionality should continue to work but using -Mode=Changelist or -Mode=Packagelist will result in a warning prompting the future use of the new versions for those commands.
#rb Per.Larsson
#jira UE-170657, UE-160396
#rnx
#preflight 637c9232fa348e8480bdc7e2

- When the rehydration functionality was added it started to look like more functionality would be added to the tool than originally thought so I started to add the new functionality via a command system. This change now moves the older legacy functionality to the coommand system as well.
- Added a new FVirtualizeCommand which can accept package paths, directory paths, packagelist files or changelists as the input.
-- Unlike the legacy commands, virtualizing via changelist does not require the client spec to be provided on the commandline, although doing so will avoid several perforce commands and speed up the call. It is expected that people calling the tool on the commandline will probably opt to not supply a clientspec and let the tool workout which workspace a changelist is under, where as calls from other tools (such as P4VUtils) can provide it if already known to speed things up.
-- FVirtualizeLegacyChangeListCommand replicates the functionality of the old -Mode=Changelist command.
-- FVirtualizeLegacyPackageListCommand replicates the functionality of the old -Mode=Packagelist command.
-- The new command will only try to submit the results if a changelist was provided as the input and even then it will not do so by default. The tool now requires people to opt into submitting the changelist via the command line option -submit. NOTE: Other versions of the command maybe allow submission in the future but the virtualization process needs to be improved so that it can check out package files before this really makes sense.
- The rehydration command no longer requires a clientspec on the command line, it wasn't using the value anyway.
- Moved the source control code from the app code files to CommandBase. If we add more commands in the future we might want to factor this out to its own base class so commands can opt into source control functionality.
- In the future we should probably move the package -> project sorting code (FUnrealVirtualizationToolApp::TrySortFilesByProject) into the command base code as well.

[CL 23233456 by paul chipchase in ue5-main branch]
2022-11-22 07:23:08 -05:00
chris caulfield
6bab3880ea Chaos - various gather optimizations
- collision solver manifold points now allocated separately (previously there was a fixed array of 4 manifold points)
- no default initialization of low-level solver structs
- remove SolverBodyAdapter and CollisionSolverAdapter (now have simple C-style gather methods)
- seprarate collision results from friction anchors
- add over-allocating array growth policy to solvers
- add prefetch to collision gather
- reduce size of SolverBody slightly (V and W in floats)
- move collision activation to run in parallel
- optimize search for friction anchor (AssignSavedManifoldPoints)
- clean up material property resetting following contact modification
- begin deprecation of FParticleUtilities (WIP)

#rb jaco.vandyk, vincent.robert, benn.gallagher
#preflight 63782333170bc34a938bacec
#preflight 637c25c3170bc34a93551f7e

[CL 23232043 by chris caulfield in ue5-main branch]
2022-11-22 02:00:17 -05:00
calvin zheng
6e8536c5b4 5.1 QFE
This QFE addresses multiple issues with Mac builds in UE 5.1:

* Removed Apple Silicon from default build architectures if installed from Epic Games Launcher, as it is not yet supported in UE 5.1 as a default option.
   * Apple Silicon native build will be available in UE 5.1 through Epic Games Launcher at a later time, but for now please build from GitHub (URL for linking here - https://github.com/EpicGames/UnrealEngine/tree/5.1)
* Fixed a Mobile Preview crash on Mac when Mobile Deferred is enabled and Preview Rendering Level set to iOS Shader 3.1
* Fixed issue that was preventing movable lights from properly casting light on Mac

#jira n/a
#preflight n/a
#rb Ryan.Hummer, Rolando.Caloca

[CL 23230900 by calvin zheng in ue5-main branch]
2022-11-21 20:38:48 -05:00
tim smith
d86795f60a Fixed performance issue with shadow detection and symbol lookup.
#rb self
#preflight 637bcb3acc307d6fa56f99d9

[CL 23228048 by tim smith in ue5-main branch]
2022-11-21 17:19:05 -05:00
Ben Marsh
e2efc4b1f3 Horde: Allow configuring OIDC tokens to be set via the agent type.
#preflight none
#fyi Joakim.Lindqvist

[CL 23222670 by Ben Marsh in ue5-main branch]
2022-11-21 12:08:34 -05:00
carl bystrom
6bf3b1f95a EpicGames.Perforce.Managed: Add tests for syncing without have-table and cache files
Also add stricter verification of digests after sync
#preflight 637b9365f514e1ded98f4921

[CL 23220725 by carl bystrom in ue5-main branch]
2022-11-21 10:07:07 -05:00
carl bystrom
236d80afa3 Horde: Ensure instance data is copied in tests to avoid leaking state
#preflight none

[CL 23220500 by carl bystrom in ue5-main branch]
2022-11-21 09:50:34 -05:00
Ben Marsh
c6ac15444f Horde: Fix NamespaceId parameters no longer being validated correctly.
#preflight none
#fyi Joakim.Lindqvist

[CL 23220253 by Ben Marsh in ue5-main branch]
2022-11-21 09:21:32 -05:00
Rafa Lecina
908cc56236 Remove some customizations from iOS and TvOS builds
#review-23193114 @Sam.Zamani, @Bertrand.Carre, @Josh.Adams
#preflight

[CL 23218558 by Rafa Lecina in ue5-main branch]
2022-11-21 04:28:08 -05:00
Ben Marsh
310fc58d6d Horde: Prevent users being able to modify logs if they only have view session permissions.
#preflight none

[CL 23217805 by Ben Marsh in ue5-main branch]
2022-11-20 19:17:48 -05:00
Ben Marsh
8f5942b1bf Horde: Support indexed searches for new log storage format. Persisted data is indexed using ngram tries, tail data is converted to plain text and searched directly.
#preflight none

[CL 23217803 by Ben Marsh in ue5-main branch]
2022-11-20 19:15:21 -05:00
Ben Marsh
bf9f42bcdd Horde: Fix line count returned using new logger backend.
#preflight none

[CL 23215892 by Ben Marsh in ue5-main branch]
2022-11-19 14:30:54 -05:00
Ben Marsh
08a5142fef Horde: Support for log tailing with new storage backend.
* Once a log is retrieved, server adds an entry with this log id to a sorted set in Redis, scored by expiry time and broadcasts it to any other server instances.
* If a log is being tailed, server keeps the total number of lines in a Redis key and appends chunks of log data to a sorted set for that log scored by index of the first line.
* Chunks are split on fixed boundaries, in order to allow older entries to be purged by score without having to count the number of lines they contain first.
* Agent polls for requests to provide tail data via LogRpcService.UpdateLogTail, which calls LogTailService.WaitForTailNext. WaitForTailNext returns the index of the total line count for this log if it is being tailed (indicating the index of the next line that the agent should send to the server), or blocks until the log is being tailed.
* Once data is flushed to persistent storage, the number of flushed lines is added to LogRpcService._trimQueue and the line data is removed from Redis after LogRpcService.TrimAfter.
* Log node contains a "complete" flag indicating whether it is necessary to check for tail data.

#preflight none

[CL 23215856 by Ben Marsh in ue5-main branch]
2022-11-19 14:15:32 -05:00
Alejandro Arango
347ae86ac0 SwitchboardListener: Fixed returning config path with double slash.
This double slash doesn't work in file explorer when copy pasting, so the user has to edit it out every time.

#rb
#jira
#preflight 6378b2a9cc307d6fa5fef51a

[CL 23215333 by Alejandro Arango in ue5-main branch]
2022-11-19 05:43:35 -05:00
josh adams
523b4f0318 - Moved a utility function from two (copy/pasted) places into ConfigHierarchy - GetStructKeyValuePairs(), which will return a Dictionary that contains the keys and values from a standard UE struct definition (almost always loaded from a .ini file). Similar in nature to GetStructEntry(), but will entries in the struct
#rb tim.smith
#preflight 6377efaf815e4b9b7564d565

[CL 23212737 by josh adams in ue5-main branch]
2022-11-18 20:39:31 -05:00
Josh Adams
dabd16bc46 - Removed special case Android logic, because it was adding /arm64/ into the path that was being looked for with InstalledBuilds. This change was tested in 5.1 stream with Android plugins
#rb tested-live
#jira none
#preflight 6377f286cc307d6fa5d99c86

[CL 23205040 by Josh Adams in ue5-main branch]
2022-11-18 16:15:29 -05:00
Ben Marsh
2588651cc3 Horde: Remove byte offset-based addressing for log data.
#preflight none

[CL 23199028 by Ben Marsh in ue5-main branch]
2022-11-18 13:35:05 -05:00
Joe Kirchoff
85e3b6fe46 UnrealBuildTool: Compiling Microsoft platforms with Clang when using VS2022 runtime requires Clang 14
#rnx
#jira UE-170540
#rb trivial
#preflight 6377beee337745090079d37a

[CL 23198054 by Joe Kirchoff in ue5-main branch]
2022-11-18 12:39:33 -05:00
Ben Marsh
529b815b6d Horde: Add an option to return log data from the new log storage backend. Does not currently implement search.
#preflight none

[CL 23197938 by Ben Marsh in ue5-main branch]
2022-11-18 12:34:37 -05:00