How to Read a Spark Report of Your Minecraft Server

1. Open Minecraft


2. Log In to Your Server With Your Admin Account

If you don’t know how to be an admin on your server, you can view our How To Make a Player OP (Operator) in Minecraft article.


3. Enter the Command /spark profiler start

Command to start a profile in spark

3.1. Wait Between 5 to 10 Minutes


4. Enter the Command /spark profiler stop

Command to stop a profile generation in spark

4.1. Copy the Generated Report Link

Generated spart report link

5. Open Your Generated Spark Report Link in Your Browser

Interface of a spark report in the browser

5.1. Expand the Server Thread Line

Server thread line outlined with arrow

5.2. Analyze the Process Tree in Your Report

Server thread (100%): This is the main thread which will always be at 100% as it represents all the sampled time.

MinecraftServer.runServer(): This is the line containing the server’s game loop. This is the function that repeatedly calls the ‘tick’ function and manages the server’s startup/shutdown.

This line will always be nearly 100% because the server is running continuously.

MinecraftServer.recordTaskExecutionTimeWhileWaiting(): This is the function that manages CPU idle time or waiting. In our case, the 93.77% means that during the total sampling time, the server was idle and this indicates there was no lag on the server.

MinecraftServer.processPacketsAndTick(): This is the function that performs the actual work of Minecraft within each tick. Here you can find: processing player network packets, physics updates, moving entities (mobs), loading and unloading chunks and executing plugins (if any are present).

Spark Process Tree Report

If you want to learn in depth how to read a Spark report, you can view the official documentation on their website.

Minecraft Server Hosting

Starts at $1.99

External link icon
Was this article helpful?
Please Share Your Feedback
How Can We Improve This Article?
Table of Contents