sootsim perf

sootsim perf

One profiling group for the three performance surfaces: sampled JS CPU profiles via Chrome DevTools Protocol, React render-cost tables from the tenant worker, and shell-worker frame profiling for the renderer that paints app pixels.

terminal

sootsim perf cpu [options]
sootsim perf react <profile|summary|slow|rerenders|tree|why> [options]
sootsim perf shell <start|stop|transition> [options]

Options

flagdescription
--cdp-port <port>for perf cpu: Chrome DevTools port (default: $SOOTSIM_CDP_PORT or 9222)
--duration <seconds>for perf cpu: recording duration (default: 5)
--match <substring>for perf cpu: pick the page target by URL substring
--output <path>for perf cpu: output .cpuprofile path
--include-propsfor perf react profile start: record shallow prop previews
--limit <n>for perf react: rows to print
--jsonstructured output where supported
--sim <sim>target a specific connected sim

Examples

terminal

sootsim open 8089 --new --driver playwright --cdp-port 9222
sootsim perf cpu --cdp-port 9222 --duration 5
sootsim perf react profile start
sootsim perf react summary --limit 10
sootsim perf shell start
sootsim perf shell stop --json

Profiling Surfaces

perf cpu captures sampled JavaScript CPU profiles through CDP. Open the sim with a CDP port first:

terminal

sootsim open 8081 --new --driver playwright --cdp-port 9222
sootsim perf cpu --cdp-port 9222 --duration 5

perf react reads React render cost from the tenant worker. perf shell records shell-worker frame timing for the renderer that paints app pixels.

Ready to build?

Run your React Native app in the browser. No simulators, no native toolchain, no waiting.

curl -fsSL https://sootsim.com/install.sh | sh