mirror of
https://github.com/phantomptr/ps5upload.git
synced 2026-10-21 11:23:35 -05:00
Upload, install, convert and manage PS5 game packages over the network. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Bench
This directory now contains the first repo-native benchmark tooling for the 2.0 FTX2 path.
Current contents:
run-ftx2-upload.mjsRuns a real upload benchmark againstps5upload-engineand stores a JSON result snapshot underbench/results/.check-ftx2-baseline.mjsCompares one result JSON against a baseline result JSON and fails on throughput or elapsed-time regression.baselines/Commit known-good result snapshots here when you want a stable comparison target.results/Local benchmark outputs written byrun-ftx2-upload.mjs.
Example flow:
node bench/run-ftx2-upload.mjs \
--spawn-engine \
--ps5-addr=192.168.137.2:9113 \
--source=/path/to/workload
cp bench/results/<new-result>.json bench/baselines/ftx2-upload-main.json
node bench/check-ftx2-baseline.mjs \
--result=bench/results/<new-result>.json \
--baseline=bench/baselines/ftx2-upload-main.json
Notes:
- The benchmark targets the
2.0engine HTTP API, not the legacy app/desktop transfer path. run-ftx2-upload.mjsaccepts either a file or a directory source.- If the engine is already running, omit
--spawn-engine. - Baselines are intentionally captured from real hardware; this repo does not invent threshold numbers ahead of measurement.
- The baseline JSON files in
bench/baselines/were captured against the pre-2.2.0 engine which bound port9114. The current engine binds19113. The capturedengine_urlfield in the older JSONs is a historical record of where the run actually executed, not a current configuration knob —check-ftx2-baseline.mjscompares throughput and elapsed-time, not URLs, so the drift is harmless. When refreshing a baseline against the current engine, generate a new run and overwrite the file rather than patching the URL in place. The throughput numbers themselves remain valid as a regression target across the port change.