Background for Skyrim SE
Member of the Debug script
voidfunctionStartStackProfiling()NativeGlobal

Description

Wiki Description

Starts profiling a single Papyrus stack until stopped or until the last function exits. The profile files are stored in "<game folder>/Logs/Script/Profiling". This will also cycle the older profiling logs (so log 0 becomes 1, 1 becomes 2, etc). If the stack is already profiled nothing will change. Profiling requests are not saved and will be reset if you load a save game.

Documentation Comment

Start profiling the calling stack - setting doesn't persist across saves
Will do nothing on release console builds, and if the Papyrus:bEnableProfiling ini setting is off


Caveats

CK Wiki - Notes

Profiling requires the "bEnableProfiling" flag in the "[Papyrus]" section of the ini file to be set to 1. Consoles will never profile in release final builds. If you start profiling in a function that is called multiple times in the same stack and stop profiling at the end of the function, only the most recent calls are saved to disk as the logs will continue to cycle.

The flamegraph visualizer speedscope supports all kinds of profiles that Skyrim produces, including those produced by this function.


Examples

; Starts profiling this current stack
Debug.StartStackProfiling()
; Lots of slow script here

Auto-Generated Example

Debug.StartStackProfiling()

Related Pages


Additional References

View this function’s page on the Skyrim Creation Kit Wiki

Some data provided by the Skyrim Creation Kit Wiki. Licensed under the Creative Commons Attribution-ShareAlike license.