Minecraft spark profile analyzer
Server setup
Inspect threads and hot methods by self timeLearn more
Inspect a spark execution profile without an external viewer. Read SamplerData protobuf or gzip, filter threads, compare self and total method time, view thread percentages and export a CSV report.
My Game select version
Save your preferences in this browser and apply them to supported tools. Settings in a shared link take priority. Wiki version labels are not affected.
How to use the result
- Unload the exec profile spark and download .sparkprofile, raw protobuf or gzip.
Specify part of the flow name; empty filter analyses all flows.
What to know
- Export execution profile spark and upload .sparkprofile, raw protobuf, or gzip. Specify a thread name filter; an empty filter analyzes all threads.
- Self time is calculated as node time minus direct children, then aggregated using the method. Percentages relate to the time of a specific thread; the number of stack nodes is not the number of calls.
- Modern execution SamplerData up to 24 MB after decompression is supported. Old JSON, allocation, and lock profiles are not parsed. Wait time does not equal CPU time; the report does not prove the cause of lag.
Frequently asked questions
How to open a saved .sparkprofile without an external viewer?
Inspect a spark execution profile without an external viewer. Read SamplerData protobuf or gzip, filter threads, compare self and total method time, view thread percentages and export a CSV report.
How are self time and spark method percentages calculated?
Export execution profile spark and upload .sparkprofile, raw protobuf, or gzip. Specify a thread name filter; an empty filter analyzes all threads.
Can you immediately diagnose the cause of lag using the hot method?
Modern execution SamplerData up to 24 MB after decompression is supported. Old JSON, allocation, and lock profiles are not parsed. Wait time does not equal CPU time; the report does not prove the cause of lag.
