Skip to content

Add performance benchmarking setup - #216

Open
rubensworks wants to merge 1 commit into
master-26-ltsfrom
claude/integrated-crafting-benchmarking-cfvc7r
Open

Add performance benchmarking setup#216
rubensworks wants to merge 1 commit into
master-26-ltsfrom
claude/integrated-crafting-benchmarking-cfvc7r

Conversation

@rubensworks

Copy link
Copy Markdown
Member

Measures what Integrated Crafting adds on top of an Integrated Dynamics
network: crafting interfaces, crafting job scheduling and execution, and
the network's recipe index. Mirrors the setup of Integrated Dynamics and
Integrated Tunnels, and reuses ID's measurement infrastructure.

Adds eight benchmark presets on a shared cable grid: three idle presets
that isolate the standing cost of crafting interfaces and of crafting
writers that have nothing to do, three active presets that continuously
craft (flat, dependency-resolving, and with a 2.45x larger recipe index
at constant crafting work), and two topology churn presets.

All presets are also exposed through /integratedcrafting generatecrafting
for manual profiling in a real world.

Every preset asserts after warmup that none of its parts is deactivated
or in an aspect error state, and that every filled recipe slot is valid,
so that a preset cannot silently degrade into an expensive no-op.

Storage chests are deliberately only filled two thirds: a crafting
interface buffers its results until it can push them into network
storage and stops ticking its jobs entirely while that buffer is
non-empty, so full chests jam every interface after a single craft.

Without PERFORMANCE_BENCHMARK_ENABLED, all benchmark game tests succeed
immediately without generating anything.

Co-Authored-By: Claude Opus 5 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01DF81jeWnWNR3ECHzNd9mRh

Measures what Integrated Crafting adds on top of an Integrated Dynamics
network: crafting interfaces, crafting job scheduling and execution, and
the network's recipe index. Mirrors the setup of Integrated Dynamics and
Integrated Tunnels, and reuses ID's measurement infrastructure.

Adds eight benchmark presets on a shared cable grid: three idle presets
that isolate the standing cost of crafting interfaces and of crafting
writers that have nothing to do, three active presets that continuously
craft (flat, dependency-resolving, and with a 2.45x larger recipe index
at constant crafting work), and two topology churn presets.

All presets are also exposed through /integratedcrafting generatecrafting
<preset> <size> for manual profiling in a real world.

Every preset asserts after warmup that none of its parts is deactivated
or in an aspect error state, and that every filled recipe slot is valid,
so that a preset cannot silently degrade into an expensive no-op.

Storage chests are deliberately only filled two thirds: a crafting
interface buffers its results until it can push them into network
storage and stops ticking its jobs entirely while that buffer is
non-empty, so full chests jam every interface after a single craft.

Without PERFORMANCE_BENCHMARK_ENABLED, all benchmark game tests succeed
immediately without generating anything.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DF81jeWnWNR3ECHzNd9mRh
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant