Commit Graph

299 Commits

Author SHA1 Message Date
Martin Ridgers
be10939dc5 Specifying additional space for a traced event was only necessary if an event had an "attachment" (an arbitrary unstructured blob of data, "<< EventName.Attachment(...)"). Attachments were removed in 17080821. While the API wasn't updated at the time for transition purposes, it soon will be. (Note there is one slightly confusing element here which is that _important_ events do need to have a size specified due to the way they are buffered internally. The ThreadName events here however are not marked important).
#fyi martins.mozeiko

[CL 17365981 by Martin Ridgers in ue5-main branch]
2021-08-31 07:37:29 -04:00
martins mozeiko
bda4797854 Collect process name & id for threads in context switches capture for Insights
#rb Ionut.Matasaru

[CL 17323711 by martins mozeiko in ue5-main branch]
2021-08-26 14:51:07 -04:00
martins mozeiko
27c49fc440 Enable Windows ETW (context switches and stack sampling) and memory tracing on XSX.
Use Perf trace for context switches and stack sampling on PS4 and PS5.

#rb Ionut.Matasaru

[CL 17277312 by martins mozeiko in ue5-main branch]
2021-08-23 17:39:53 -04:00
martins mozeiko
e0dfe250ba Add missing include for non unity build
#rb Ionut.Matasaru

[CL 17141217 by martins mozeiko in ue5-main branch]
2021-08-11 15:41:51 -04:00
martins mozeiko
9ea43924d9 Enabled memory tracking with callstacks for PS4/5
Implementation details:
- PS4 & PS5 uses dwarf symbol format and uses Syms symbol resolver.
- To resolve symbols the path to folder where .self file is built currently must be specified in UE_INSIGHTS_SYMBOL_PATH env variable for Insights.
- Multiple paths can be separated by ; in this variable.
- Build for PS5 does not seem to have PLATFORM_PS5 define, I used defined(__PS5__).
- PS5 runtime collects and sends callstacks, but Syms resolver does not support dwarf v5 format yet, which is used on PS5 toolchain.

#rb none
#preflight 6112ead49c7bb10001bc63fc

[CL 17128247 by martins mozeiko in ue5-main branch]
2021-08-10 20:06:29 -04:00
charles bloom
d681814190 fix read out of bounds in Trace startup
caused crash with -stompmalloc

#rb martin.ridgers

[CL 17107919 by charles bloom in ue5-main branch]
2021-08-09 17:18:12 -04:00
Martin Ridgers
87c08c399f Corrected a spelling mistake.
[CL 17080823 by Martin Ridgers in ue5-main branch]
2021-08-06 04:44:15 -04:00
Martin Ridgers
efee157e02 It is possible that the trace store server binary legitimately doesn't exist. While it is still useful to inform the user that the store couldn't be started, it has be downgraded to a normal log message instead of a warning.
#jira UE-120128
#rnx

[CL 17067220 by Martin Ridgers in ue5-main branch]
2021-08-05 08:59:23 -04:00
Martin Ridgers
6799a4305c There is no guarantee that BinPath ends in a path separator. It is thus more robust to prefix a separator to paths appended to BinPath (two or more subsequent separators is valid and counts as a single separator).
#rnx

[CL 17065128 by Martin Ridgers in ue5-main branch]
2021-08-05 03:55:18 -04:00
aurel cordonnier
dc856801cd Merge from Release-Engine-Test @ 17059716 to UE5/Main
This represents UE4/Main @ 17030256 and Dev-PerfTest @ 17029914

[CL 17060422 by aurel cordonnier in ue5-main branch]
2021-08-04 17:46:20 -04:00
Martin Ridgers
13b3376b51 Load and platform-file tracing migrated away from attachments.
#rb cm
#rnx

[CL 17048386 by Martin Ridgers in ue5-main branch]
2021-08-04 08:07:11 -04:00
Martin Ridgers
1e2c44c08c Convert Stats and Csv tracing to use array/string type trace event fields instead of attachments
#rb cm
#rnx

[CL 17048347 by Martin Ridgers in ue5-main branch]
2021-08-04 08:03:09 -04:00
Catalin Dragoiu
df4e63ebf8 Fix non unity compile error
#rb trivial

[CL 16994685 by Catalin Dragoiu in ue5-main branch]
2021-07-29 08:53:58 -04:00
Martin Ridgers
3393e39965 Removed use of trace event attachments to send the packed CPU enter/exit timestamps in favour of an array-type field.
#rb cm
#rnx

[CL 16981291 by Martin Ridgers in ue5-main branch]
2021-07-28 08:26:51 -04:00
Martin Ridgers
40f6691fb0 Changed bookmarks trace events with an array-type field instead of using attachments.
#rb cm
#rnx

[CL 16981262 by Martin Ridgers in ue5-main branch]
2021-07-28 08:23:30 -04:00
Joe Kirchoff
2c2c2388cc Remove reference to unused header AtomicQueue/AtomicQueue.h. Make it a simple external module in case anyone needs it in the future
#rb trivial
#rnx
#preflight 61009082431c7800012fcdd3

[CL 16977624 by Joe Kirchoff in ue5-main branch]
2021-07-27 21:16:52 -04:00
geoff evans
68961fa528 IterationProfile: Disable trace server via cmdline arg
This change eliminates an intermittent warning print that only seems to happen on the SummarizeTraceCommandlet, and we don't need the trace server for that commandlet to do it's job.

#jira none
#rb francis.hurteau
#preflight 60ff3329b2a55c000130c78a
#robomerge Private-Frosty

[CL 16968260 by geoff evans in ue5-main branch]
2021-07-27 10:01:10 -04:00
Simon Tourangeau
208c0e28d3 Fix path to launch UnrealTraceServer
#jira UE-120128
#rb none
#rnx

[CL 16927478 by Simon Tourangeau in ue5-main branch]
2021-07-22 13:51:18 -04:00
zach bethel
f311bbc7a1 RDG Parallel Execution (disabled by default)
- Refactored RDG to support free-threaded execution of passes.
 - Refactored renderer to use specific RHI command list variants in pass lambda. Immediate command list passes are forced to stay on the render thread, while other variants can be parallelized.

#rb christopher.waters

[CL 16838717 by zach bethel in ue5-main branch]
2021-07-13 12:38:27 -04:00
Martin Ridgers
37b76c8360 UE_APP_NAME is not unique if the build environment is "shared" (such is the case for installed builds). This makes it difficult to identify traces from monolithic builds. Use the project name set by UBT instead if available.
#rb jb
#rnx
#jira UE-100244

[CL 16741479 by Martin Ridgers in ue5-main branch]
2021-06-22 07:33:19 -04:00
Martin Ridgers
a7f9ee9069 - Removed explicit launching of the trace server in a couple of plugins. It was added temporarily to gather more information from CIS.
#rb jb
#rnx

[CL 16741421 by Martin Ridgers in ue5-main branch]
2021-06-22 07:28:43 -04:00
Martin Ridgers
51a8498dc6 Removed extra-size parameters for events that don't need them.
[CL 16739627 by Martin Ridgers in ue5-main branch]
2021-06-22 02:42:51 -04:00
Joe Kirchoff
a1d7a8c3c7 Support VisualStudio2022 as a source code accessor and compilier
Note: _MSC_VER is still 1929 with the VS2022 preview, I expect it to be 1930 eventually when the compiler version is bumped which should match the versioning scheme for every other VS release

#rb none
#preflight 60d0c0d878c3b00001e335d9

[CL 16730633 by Joe Kirchoff in ue5-main branch]
2021-06-21 14:04:04 -04:00
ionut matasaru
16ed95ae22 [Insights]
Updated the name of the Windows event used to force single instance of UnrealInsights.exe (Browser Mode) and to control when to try to auto-connect. This change allows UnrealInsights.exe from UE5 to coexists with a running instance from UE4.
  Also updated the comments to better explain how the Windows event is used.
  Trace auto-connect behavior remains the same: a game runtime (editor excluded) will try to auto-connect with a local trace store (now hosted by the UnrealTraceServer.exe) if UnrealInsights (Browser Mode) is running.

#rb Martin.Ridgers

[CL 16726078 by ionut matasaru in ue5-main branch]
2021-06-21 06:27:51 -04:00
ionut matasaru
36b7e864ce Fix for CIS compile error (-DisableUnity).
#rb none

[CL 16674353 by ionut matasaru in ue5-main branch]
2021-06-15 11:46:01 -04:00