638 Commits

Author SHA1 Message Date
Marc Audy
5d2f38437f Fix and silence new PVS 7.33 warnings
#jira none
#rb marc.audy

[CL 37002187 by Marc Audy in 5.5 branch]
2024-10-09 17:43:04 -04:00
matt harris
34bd8e7933 Adding Const to GetCsvID function
#rb ben.woodhouse, tyler.staples
[FYI] richard.smith
#rnx
#tests Built and tested against Win64 Dedicated Server

[CL 36758211 by matt harris in 5.5 branch]
2024-10-01 19:37:03 -04:00
catalin dragoiu
8af4939360 Add more descriptive tooltips to the channels and to the Screenshot,Bookmark and Region menu entries in the Insights Status Bar Widget.
#rb ionut.matasaru
#jira UE-174374

[CL 36439763 by catalin dragoiu in 5.5 branch]
2024-09-19 13:07:01 -04:00
matt harris
90b6e92bf3 GameFeedback adding CustomFields for analytics
Additionally added 'GetCSVID' to the CSVProfiler so we can access the unique GUID for a CSV instance.

#rb andrew.ladenberger, carles.fernandez, Wes.Hunt
[FYI] richard.smith
#tests Tested against Win64 Server Cooked
#rnx

[CL 36429175 by matt harris in 5.5 branch]
2024-09-19 09:35:07 -04:00
tyler staples
b898524aa3 CsvProfiler - Report explicit event wait names as trace scopes.
#rb ben.woodhouse
#tests Replayrun

[CL 36407635 by tyler staples in 5.5 branch]
2024-09-18 16:06:47 -04:00
ionut matasaru
96a680bbb5 [Insights]
- Changed the log message at end of analysis that displayes number of warnings to be a warning (instead of an error).
  - Replaced usage of uint64_t with uint64.

#jira UE-223953
#rb Sebastian.Thomeczek
#rnx

[CL 36329861 by ionut matasaru in 5.5 branch]
2024-09-17 06:14:40 -04:00
anton dunchev
308f25990f [LLM] Fixed extended Assets/AssetClasses tagset Tags report their existance to UnrealInsights, bloating the trace file and tanking the performance of analysis
#rnx
#tests local memory trace capture and analysis
#rb Matt.Peters

[CL 36171948 by anton dunchev in 5.5 branch]
2024-09-10 21:21:22 -04:00
Ryan Hummer
4af2fd066d Updating Dev-Release-5.5 from Main at CL #36144969
#okforversepublic

[CL 36146571 by Ryan Hummer in Dev-5.5 branch]
2024-09-10 10:26:02 -04:00
johan berg
24bc4f8fc8 Enable Trace in shipping: TraceLog
Introduce a new configuration (UE_TRACE_ENABLED_SHIPPING_EXPERIMENTAL) which optionally enables select parts of the TraceLog library in shipping configurations. In this configuration, only a subset of trace events and logs are active. These needs to be de specificially for shipping using a new set of macros. Addtionally this change adds the ability to configure other parts of TraceLog functionality such as the socket based control layer, tracing to sockets or files and if important events are allowed. This is currently an experimental feature.

#rb Catalin.Dragoiu, ionut.matasaru

[CL 36033751 by johan berg in ue5-main branch]
2024-09-05 04:52:59 -04:00
ben woodhouse
e46ed5347c CSV profiler - temporarily disable aggregated task worker stats to fix an issue with custom stat reporting
[CL 35968356 by ben woodhouse in ue5-main branch]
2024-09-03 11:15:35 -04:00
catalin dragoiu
8036a1663e Added the TraceControl window in Insights Session Browser.
Refactored TraceControl widgets to enable them to connect to a specific InstanceId.
Added auto detect selected session functionality to STraceControl.
Removed responsability from TraceController to handle selected session management.
Added InstanceId to the Diagnostics.SessionInfo2 event.

#rb Johan.Berg, ionut.matasaru
#jira UE-222645

[CL 35964645 by catalin dragoiu in ue5-main branch]
2024-09-03 08:23:12 -04:00
ben woodhouse
811238f587 Csv profiler: add a cvar csv.AggregateTaskWorkerStats, defaulted to on. When enabled, stats recorded on task worker threads are aggregated (summed) instead of outputting a single stat per thread. This reduces CSV bloat when there are large numbers of worker threads and makes stat data more intelligible. The stats appear with an AllWorkers prefix instead of the individual thread name.
#rb michael.short
#tests tested on console

[CL 35955760 by ben woodhouse in ue5-main branch]
2024-09-02 10:51:41 -04:00
daniele pieroni
25261b382f Do not use the address of the return address by default with clang windows platforms for backtrace a captured stack.
Clang __builtin_frame_address(0) is not behaving like msvc _AddressOfReturnAddress() on all windows platforms causing issues in the stacktrace tracking.
More investigation is needed to see if we can use the fast unwind path on clang as well.

#jira UE-222509
#rb ben.woodhouse, Wojciech.Krywult

[CL 35796224 by daniele pieroni in ue5-main branch]
2024-08-26 08:24:16 -04:00
ionut matasaru
d8203d42b4 [Insights][CpuProfilerTrace]
- Added FCpuProfilerTrace::OutputEventType(Name, File, Line), with Name as an FName.
  - Added FCpuProfilerTrace::OutputDynamicEventType(Name, File, Line) with Name as ANSICHAR*, TCHAR* or FName.
  - Added FCpuProfilerTrace::OutputDynamicEventTypeWithId(Id, Name, File, Line) with Name as ANSICHAR* or TCHAR*.
  - Added FCpuProfilerTrace::OutputBeginDynamicEventWithId(Id, const ANSICHAR* Name, File, Line), in addition to existing function that receives Name as TCHAR*.
  - Added TRACE_CPUPROFILER_EVENT_MANUAL_END() macro to match TRACE_CPUPROFILER_EVENT_MANUAL_START macro.

#rb Catalin.Dragoiu, Johan.Berg

[CL 35449960 by ionut matasaru in ue5-main branch]
2024-08-12 08:12:38 -04:00
catalin dragoiu
0b639efce3 Fix non-unity error
[CL 35405246 by catalin dragoiu in ue5-main branch]
2024-08-08 15:25:28 -04:00
catalin dragoiu
2e8edb2f74 Add trace status information to the Trace Control Window.
Fix trace stats bandwidth calculations by using runtime timestamps.
Get Engine presets from the runtime via Message Bus in Trace Control Window.
Fix crash when UE_TRACE_ENABLED is off.

#rb ionut.matasaru
#jira UE-215072

[CL 35401088 by catalin dragoiu in ue5-main branch]
2024-08-08 13:29:31 -04:00
sebastian thomeczek
d09c1bc308 [Insights] Extend Timing Regions API to allow closing regions by ID....
#rb ionut.matasaru

[CL 35249037 by sebastian thomeczek in ue5-main branch]
2024-08-01 12:50:46 -04:00
michael atchison
ed2e4c9913 Fix crash when a SlowTask is created before a SlowTask has started.
Add override to PatchCheck to allow patch checking in editor builds.

[REVIEW] [at]eric.day, [at]chris.varnsverry
#rb eric.day

[CL 35091168 by michael atchison in ue5-main branch]
2024-07-25 14:50:09 -04:00
daniele pieroni
dfe3a95947 Input latency stat computation enabled for DX11/DX12 using IDXGISwapChain::GetFrameStatistics and correlate the input reading timestamp to when the frame is handed to the display
Note:
- not enabled in shipping, currently only used to compute the Input latency debug stat as in other RHIs
- computed stats are currently different from Nvidia Reflex PC latency timing reports
- needs extra work to support g-sync/free sync monitors

#rb ionut.matasaru, Luke.Thatcher
#jira none

[CL 35053471 by daniele pieroni in ue5-main branch]
2024-07-24 10:08:59 -04:00
ben woodhouse
334c40e672 Replace the CSV_THREAD_HIGH_PRI define with a -csvProfilerHighPriority commandline option so we can easily enable for testing purposes
[CL 34674453 by ben woodhouse in ue5-main branch]
2024-06-26 10:04:08 -04:00
ben woodhouse
a3ce2a49de Refactor CsvProfiler begin/end capture - move capture start/end logic into dedicated functions to make the logic easier to maintain
- Add metadata for capture duration
#rb john.huelin

[CL 34484069 by ben woodhouse in ue5-main branch]
2024-06-18 18:47:02 -04:00
ben woodhouse
d4460eb484 Add ProgramSizeMB metadata so we can capture this even when LLM isn't running
#rb mickael.gilabert

[CL 34462213 by ben woodhouse in ue5-main branch]
2024-06-18 11:15:43 -04:00
andrew ladenberger
639ccfcc0c [CsvProfiler] Optimized overhead by using the 1/frame cached memory stats, and reducing platform API calls.
#rb ben.woodhouse, dmytro.vovk

[CL 34445047 by andrew ladenberger in ue5-main branch]
2024-06-17 18:37:57 -04:00
ben woodhouse
2ea61ce0c6 Switch to CSV_PROFILER_STATS instead of CSV_PROFILER for various profiling subsystems. This allows them to be compiled out when CSV_PROFILER_MINIMAL is defined.
As part of this change we also promote dynamic resolution and IO/PackageQueueDepth stats to Minimal since they're important for high level performance reporting.
Also fix up a few places that were redundantly using #if CSV_PROFILER around CSV macros.

#rb mickael.gilabert

[CL 34386798 by ben woodhouse in ue5-main branch]
2024-06-14 18:16:47 -04:00
ben woodhouse
39d5c72b3f CsvProfiler: add float and int overloads for RecordCustomStatMinimal
[CL 34378844 by ben woodhouse in ue5-main branch]
2024-06-14 14:25:40 -04:00