Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Feature matrix

Syren has no default features. Enable the ones your model needs. Features are additive: enabling one never removes capability, and combinations compose.

Features

FeatureEnablesImplies
(none)Core ECS: components, queries, systems, scheduler.
agentsAgent templates and lifecycle hooks.
environmentTyped model-wide environment values.
messagingThe four message specialisations.
modelThe ModelBuilder layer.agents, environment
gpuGPU state mirroring and compute dispatch (wgpu).
messaging_gpuGPU-resident message buffers.messaging, gpu
profilingTracing spans and Chrome Trace output.
gpu_profilingConvenience aggregate.gpu, profiling
allEverything above.all

The space module (discrete grid and continuous space) is available with the environment feature, and therefore with model.

Combinations checked in CI

The continuous-integration pipeline checks each of these explicitly:

  • no features
  • agents
  • environment
  • messaging
  • model
  • model messaging
  • gpu
  • model messaging_gpu
  • all

Test runs cover the no-features build, model messaging, and the all-features library. Integration tests are compiled with all features.

Choosing features

  • A model that uses ModelBuilder, agents, and environments: model.
  • Add message passing: model messaging.
  • Run systems on the GPU: add gpu (or messaging_gpu for GPU messages).
  • Capture profiles: add profiling.