This is desired for data center builds where we only care about one trace at a time, and uniquely naming or rotating the file name just makes for extra complexity and bug risk in calling code. Also, for incremental worker configurations we can leak disk consumption if we use a different file name every time.
Win/Mac/Linux all have the truncate file open flag set, so the platform file code should all allow for this.
Tested on windows.
#rb martin.ridgers, francis.hurteau
[CL 14828368 by geoff evans in ue5-main branch]
Instrument LLM scopes (LLM_SCOPE and LLM_REALLOC_SCOPE) with hooks to memory tracing. Added new trace events for the scopes and for specifying tags. Only available on platforms where allocation tracing is activated.
#rb martin.ridgers
[CL 14819956 by Johan Berg in ue5-main branch]
* Trace all allocation events on channel "MemTrack"
* Index all loaded modules and traces on "Diagnostics" channel.
* Trace all unique callstacks on channel "Callstacks".
#rb martin.ridgers
[CL 14586994 by Johan Berg in ue5-main branch]
1) Fix Visual Studio Profiling PerfAPI build script pathing for modern era of Visual Studio, add IDEDir to UBT for base path of PerfAPI lib/headers
2) Add initial support for Superluminal instrumentation API, if it's installed and -Superluminal is passed on the command line. Dial back color saturation a bit to go easier on the eyes (my eyes!!). This is WIP support, we are technically violating the API rules by feeding in changing strings to the same profile marker. So, with this change you can see the instrumentation markers in the timeline, but using all the event features in Superluminal causes weird artifacts like event strings changing as you use profiler features. Subsequent change will attempt to pry apart static and instance string data in the instrumentation, as this is a common trope across profilers (and non-PC platforms).
Updated FExternalProfiler API to forward along color information from the instrumentation. This is a minor breaking change as it's very unlikely there are direct callers of these APIs.
[CL 14321510 by geoff evans in ue5-main branch]