What is spark (spark.lucko.me)?

Updated

spark is a performance profiler for Minecraft clients, servers, and proxies. It helps you diagnose performance problems and bottlenecks, inspect memory usage, and track key health metrics over time. The website at spark.lucko.me serves two purposes: it hosts downloads and documentation, and it acts as an online viewer for the data spark generates.

What spark does

spark is made up of three main components, each targeting a different kind of performance question:

Component What it does Typical use
Profiler Diagnoses performance problems and bottlenecks Finding out why a server tick is slow or where CPU time is going
Memory Inspection Produces full heap dumps, summarizes what is using the most memory, and monitors GC activity Tracking down memory leaks or excessive garbage collection
Health Reporting Monitors and reports a number of key metrics Watching performance trends over time

If your problem is "something is lagging and I don't know what," the profiler is the starting point. If your problem is "memory keeps climbing" or "GC pauses are frequent," memory inspection is the relevant tool. If you want ongoing visibility rather than a one-off diagnosis, health reporting covers that.

Using the online viewer

The viewer on spark.lucko.me is where you read the data spark collects. The workflow described on the site is:

  1. Generate a profile or heap summary using the appropriate spark commands.
  2. After the data has been uploaded, click the link to open the viewer.
  3. Alternatively, generate or export a .sparkprofile or .sparkheap file and open it by dragging it into the box on the page.

The drag-and-drop box accepts only .sparkprofile or .sparkheap files. If you have data in another format, it will not open here.

Where to get spark and learn more

The site points to three resources:

  • Downloads — get the latest version of spark.
  • Documentation — read the documentation and usage guides.
  • GitHub and Discord — more information about spark is on GitHub, and there is a Discord for chatting with the project.

The website and viewer themselves are written in JavaScript using the React framework and are open-source on GitHub, with pull requests welcomed.

When spark is the right tool

spark fits situations where you need to measure rather than guess: a Minecraft server, client, or proxy that is underperforming, memory that behaves unexpectedly, or a need to track metrics over time. It is a diagnostic and monitoring tool, not a fix in itself — you still have to interpret the profile or heap summary and act on what it shows. For that interpretation step, the documentation and the community channels linked from the site are the places to go next.