Skip to content

5en5e1/parameter-golf-visualizer

Repository files navigation

⛳ Parameter Golf Log Visualizer

A dark-themed, interactive dashboard for analyzing and comparing training runs from OpenAI's Parameter Golf challenge. Drop your log files in, get instant visual feedback on convergence, quantization impact, and efficiency — all in one place.

Live tool: farcas.dev/golf

Parameter Golf Log Visualizer Dashboard

What it does

  • Multi-run comparison — Load multiple .txt / .log files (or entire folders) and compare them side by side.
  • Val BPB & Loss curves — Track bits-per-byte and validation loss over training steps with zoomable, brushable charts.
  • Step time analysis — Spot throughput regressions across architectures.
  • Quantization impact view — See pre-quant vs post-quant BPB at a glance and identify how much each run loses to INT8+zlib roundtrip.
  • Params vs BPB scatter — Visualize the efficiency frontier: which architectures get the most out of their parameter budget.
  • Detailed comparison table — Architecture, params, steps, ms/step, wall-clock time, artifact size, 16MB budget compliance, and peak VRAM in one sortable view.
  • Baseline pinning — The official baseline run is always highlighted in red with a dashed reference line for quick delta reads.

How to use

  1. Open the tool.
  2. Drag and drop one or more .txt or .log files (you can also drop entire folders).
  3. Click run cards to toggle visibility. Use the chart tabs and controls to explore.

⚠️ Important: Log Format Compatibility

This tool is built to parse the default log format produced by the official Parameter Golf training codebase. It will only work correctly if your logs follow that exact format. Specifically, the parser expects lines matching these patterns:

Training steps:

step:1000/5000 train_loss:2.3456 train_time:12345ms step_avg:123.45ms

Validation steps:

step:1000/5000 val_loss:1.8765 val_bpb:1.2345 train_time:12345ms step_avg:123.45ms

Final evaluation:

final_int8_zlib_roundtrip_exact val_loss:1.8900 val_bpb:1.2400

Config lines (optional but parsed if present):

model_params:46000000
architecture:ETD_Hybrid_UniT ...
world_size:8 ...
train_batch_tokens:524288
quantization:int8_zlib

If you've customized the logging format, added extra fields, changed delimiters, or restructured the output in any way, the visualizer will not parse your runs correctly — you'll either see missing data or empty charts.

TL;DR — Keep the logging exactly as it ships in the official Parameter Golf baseline code. Don't modify the print statements.


Project structure

├── assets/           # Repository images (e.g., ss.png)
├── public/           # Static assets (baseline.txt goes here)
├── src/
│   └── App.jsx       # Main application component
├── index.html        # Entry point
├── package.json      # Dependencies & scripts
├── vite.config.js    # Vite configuration
└── README.md

Running locally

Prerequisites: Node.js v18+ (which includes npm).

# Clone the repo
git clone https://github.com/5en5e1/parameter-golf-visualizer.git
cd parameter-golf-visualizer

# Install dependencies
npm install

# Start the dev server
npm run dev

The app will be available at http://localhost:5173. To build for production:

npm run build

The output goes to dist/ — static files you can deploy anywhere (Vercel, Netlify, GitHub Pages, your own server).


Built with

React + Recharts + Vite. No backend, everything runs client-side in your browser. Your log data never leaves your machine.


Author

Built by farcas.dev — born out of needing a faster way to compare dozens of experimental runs during the Parameter Golf competition.

About

Visualize and compare Parameter Golf training runs — BPB curves, quant impact, efficiency scatter, all client-side

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors