D831 - Profiling with Tracy is built in and asked for at run time

Status: assumed Date: 2026-10-14

orbistoun-cli and orbistoun-gui build with the tracy feature by default (D829), and the client stays dormant: a worker starts it only when ORBISTOUN_TRACY=1, on TRACY_PORT, and no port is opened otherwise. Each guest flip also plots its frame time.

Around it, orbistoun-perf holds what every front end shares: finding the Tracy tools (ORBISTOUN_TRACY_TOOLS, the copy installed under the data root, then PATH), installing the pinned version with the host's own curl and tar, recording a run headless with tracy-capture on a free port, and reading the recording back with tracy-csvexport as zones ranked by self time and by total time, with the frame times' percentiles. Two commands use it:

Why: a profiler that has to be built for is not used while a cost is fresh, and a user who wants to say why a title is slow cannot rebuild. Built in, it costs a span one check whether a client runs: three alternating pairs of runs of MDEM00001 and PPSA25872, plain build against dormant client, differed by less than the runs differed among themselves (MDEM00001 173 against 182 fps on average; PPSA25872 148/158 against 150/161 where no other run shared the machine). Ranking by self time names what to make faster; percentiles of frame time name what a player feels, which an average hides - the first perf of MDEM00001 showed a 3.3 ms median frame beside a 308 ms p99 of pipeline builds. Weighing each title equally keeps one long-running title from deciding the order of every other's costs.

Rejected: