Skip to main content

Chronon

High-Performance Tick-Based Simulation Framework

Tick-Based Simulation

Define simulation units as simple state machines with a tick() method. Chronon handles scheduling, parallelization, and communication automatically.

Automatic Parallelization

Dependency-driven lookahead scheduling powered by stdexec. Advance independent units in parallel without manual thread management.

Type-Safe Ports

Communicate between units with OutPort<T> and InPort<T>. Connection delays define delivery timing; topology selects same-thread, SPSC or MPSC queues.

YAML-Driven Configuration

Build simulations from YAML with the factory system. Use SimulationApp for a one-line entry point with full CLI support.

Built-in Observability

Macro-free API for counters, timeline events, and logs. Perfetto protobuf output for interactive timeline visualization.

C++20 Modern Design

Built on sender/receiver (P2300), concepts, and compile-time string formatting. Single include: #include "chronon/Chronon.hpp".