ECS DT Benchmark Sweep — Tue 21 Apr 01:12:15 UTC 2026
=== System Information ===
Date:        2026-04-21 01:12:15 UTC
OS:          Linux 6.12.75+rpt-rpi-2712
Arch:        aarch64
Target CPU:  cortex-a76
Rust:        rustc 1.95.0 (59807616e 2026-04-14)
Cargo:       cargo 1.95.0 (f2d3ce0bd 2026-03-21)

=== CPU Info ===
CPU implementer	: 0x41
CPU part	: 0xd0b
Revision	: c04180

=== Memory ===
MemTotal:        4146896 kB
MemAvailable:    3883072 kB

=== CPU Governor ===
  /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor: performance

=== Isolated cores ===



=== entities=10000 ===
ECS Digital Twin Benchmark — TRANSIT lab / UQAC
entities=10000 | ticks=5000 | warmup=500 | fault_prob=2.0%
[spawn] SensorAsset=7000  EventAsset=2000  ActuatorAsset=1000  total=10000
[warmup] running 500 ticks...
tick=      0 | entities=  10000 (sensor_active=  8817, alerts=   0, act= 1000) | faults=   183 lockouts=  0 | rss=   4.0 MB | tick_mean=    0.0 µs | ingest=  97.0 sim=  27.0 export=  14.0 diag=  0.0 µs | exported=0.08 MB acks=1000
[warmup] done — starting measurement (5000 ticks)
tick=   1000 | entities=  10000 (sensor_active=  4488, alerts=  23, act= 1000) | faults= 92482 lockouts=  0 | rss=   6.3 MB | tick_mean=  284.8 µs | ingest=  97.1 sim=  17.1 export=  14.0 diag=  0.0 µs | exported=40.70 MB acks=501000
tick=   2000 | entities=  10000 (sensor_active=  4425, alerts=  23, act= 1000) | faults=182979 lockouts=  0 | rss=   7.8 MB | tick_mean=  286.0 µs | ingest=  97.1 sim=  17.2 export=  14.1 diag=  0.1 µs | exported=121.92 MB acks=1501000
tick=   3000 | entities=  10000 (sensor_active=  4507, alerts=  27, act= 1000) | faults=273085 lockouts=  0 | rss=   9.3 MB | tick_mean=  286.1 µs | ingest=  97.3 sim=  17.3 export=  14.1 diag=  0.1 µs | exported=203.15 MB acks=2501000
tick=   4000 | entities=  10000 (sensor_active=  4502, alerts=  15, act= 1000) | faults=363376 lockouts=  0 | rss=  10.9 MB | tick_mean=  284.8 µs | ingest=  97.0 sim=  17.2 export=  14.0 diag=  0.1 µs | exported=284.37 MB acks=3501000
tick=   5000 | entities=  10000 (sensor_active=  4527, alerts=  24, act= 1000) | faults=453183 lockouts=  0 | rss=  12.4 MB | tick_mean=  284.6 µs | ingest=  97.1 sim=  17.2 export=  14.0 diag=  0.1 µs | exported=365.59 MB acks=4501000

── Final Summary ──────────────────────────────────────
Total ticks (measurement):  5000
Total wall time:            1.430 s
Sustained tick rate:        3497.7 Hz
Per-tick mean (wall):       28.5 µs

Per-system mean (µs):
IngestSystem:             97.2
SimulationSystem:         17.2
ExportSystem:             14.0
DiagnosticsSystem:        0.1

Fault injection:
Total sensor faults:      498016
Total actuator lockouts:  0

Export totals:
Bytes exported:           406.11 MB
Acks processed:           5000000
Alerts seen:              104943

Memory (RSS at end):        13.1 MB
────────────────────────────────────────────────────────

=== entities=25000 ===
ECS Digital Twin Benchmark — TRANSIT lab / UQAC
entities=25000 | ticks=5000 | warmup=500 | fault_prob=2.0%
[spawn] SensorAsset=17500  EventAsset=5000  ActuatorAsset=2500  total=25000
[warmup] running 500 ticks...
tick=      0 | entities=  25000 (sensor_active= 22049, alerts=   0, act= 2500) | faults=   451 lockouts=  0 | rss=   6.0 MB | tick_mean=    0.0 µs | ingest= 236.0 sim=  81.0 export=  36.0 diag=  0.0 µs | exported=0.20 MB acks=2500
[warmup] done — starting measurement (5000 ticks)
tick=   1000 | entities=  25000 (sensor_active= 11440, alerts=  49, act= 2500) | faults=231419 lockouts=  0 | rss=  11.6 MB | tick_mean=  812.9 µs | ingest= 243.3 sim=  43.2 export=  35.1 diag=  0.0 µs | exported=101.74 MB acks=1252500
tick=   2000 | entities=  25000 (sensor_active= 11301, alerts=  43, act= 2500) | faults=456552 lockouts=  0 | rss=  15.5 MB | tick_mean=  812.1 µs | ingest= 244.1 sim=  43.2 export=  35.1 diag=  0.1 µs | exported=304.78 MB acks=3752500
tick=   3000 | entities=  25000 (sensor_active= 11421, alerts=  58, act= 2500) | faults=681247 lockouts=  0 | rss=  19.2 MB | tick_mean=  811.6 µs | ingest= 243.6 sim=  43.0 export=  35.1 diag=  0.1 µs | exported=507.82 MB acks=6252500
tick=   4000 | entities=  25000 (sensor_active= 11157, alerts=  48, act= 2500) | faults=906865 lockouts=  0 | rss=  23.1 MB | tick_mean=  814.2 µs | ingest= 244.0 sim=  43.3 export=  35.1 diag=  0.1 µs | exported=710.88 MB acks=8752500
tick=   5000 | entities=  25000 (sensor_active= 11216, alerts=  49, act= 2500) | faults=1131163 lockouts=  0 | rss=  26.9 MB | tick_mean=  811.4 µs | ingest= 243.6 sim=  43.2 export=  35.1 diag=  0.1 µs | exported=913.91 MB acks=11252500

── Final Summary ──────────────────────────────────────
Total ticks (measurement):  5000
Total wall time:            4.066 s
Sustained tick rate:        1229.7 Hz
Per-tick mean (wall):       81.3 µs

Per-system mean (µs):
IngestSystem:             244.0
SimulationSystem:         43.2
ExportSystem:             35.1
DiagnosticsSystem:        0.2

Fault injection:
Total sensor faults:      1243639
Total actuator lockouts:  0

Export totals:
Bytes exported:           1015.22 MB
Acks processed:           12500000
Alerts seen:              254654

Memory (RSS at end):        28.8 MB
────────────────────────────────────────────────────────

=== entities=50000 ===
ECS Digital Twin Benchmark — TRANSIT lab / UQAC
entities=50000 | ticks=5000 | warmup=500 | fault_prob=2.0%
[spawn] SensorAsset=35000  EventAsset=10000  ActuatorAsset=5000  total=50000
[warmup] running 500 ticks...
tick=      0 | entities=  50000 (sensor_active= 44082, alerts=   0, act= 5000) | faults=   918 lockouts=  0 | rss=   9.4 MB | tick_mean=    0.0 µs | ingest= 528.0 sim= 211.0 export=  73.0 diag=  0.0 µs | exported=0.41 MB acks=5000
[warmup] done — starting measurement (5000 ticks)
tick=   1000 | entities=  50000 (sensor_active= 22364, alerts= 118, act= 5000) | faults=462345 lockouts=  0 | rss=  20.1 MB | tick_mean= 1918.9 µs | ingest= 497.0 sim=  94.6 export=  70.9 diag=  0.0 µs | exported=203.46 MB acks=2505000
tick=   2000 | entities=  50000 (sensor_active= 22510, alerts=  97, act= 5000) | faults=912440 lockouts=  0 | rss=  27.7 MB | tick_mean= 1922.8 µs | ingest= 496.6 sim=  94.4 export=  71.0 diag=  0.1 µs | exported=609.56 MB acks=7505000
tick=   3000 | entities=  50000 (sensor_active= 22512, alerts=  90, act= 5000) | faults=1361728 lockouts=  0 | rss=  35.3 MB | tick_mean= 1924.0 µs | ingest= 497.0 sim=  94.7 export=  71.0 diag=  0.1 µs | exported=1015.66 MB acks=12505000
tick=   4000 | entities=  50000 (sensor_active= 22519, alerts=  98, act= 5000) | faults=1812084 lockouts=  0 | rss=  43.0 MB | tick_mean= 1922.6 µs | ingest= 496.6 sim=  94.5 export=  70.8 diag=  0.1 µs | exported=1421.74 MB acks=17505000
tick=   5000 | entities=  50000 (sensor_active= 22355, alerts= 101, act= 5000) | faults=2261407 lockouts=  0 | rss=  50.6 MB | tick_mean= 1921.7 µs | ingest= 496.7 sim=  94.5 export=  70.9 diag=  0.1 µs | exported=1827.82 MB acks=22505000

── Final Summary ──────────────────────────────────────
Total ticks (measurement):  5000
Total wall time:            9.617 s
Sustained tick rate:        519.9 Hz
Per-tick mean (wall):       192.0 µs

Per-system mean (µs):
IngestSystem:             496.0
SimulationSystem:         94.5
ExportSystem:             70.8
DiagnosticsSystem:        0.2

Fault injection:
Total sensor faults:      2486121
Total actuator lockouts:  0

Export totals:
Bytes exported:           2030.46 MB
Acks processed:           25000000
Alerts seen:              511654

Memory (RSS at end):        54.3 MB
────────────────────────────────────────────────────────

=== entities=75000 ===
ECS Digital Twin Benchmark — TRANSIT lab / UQAC
entities=75000 | ticks=5000 | warmup=500 | fault_prob=2.0%
[spawn] SensorAsset=52500  EventAsset=15000  ActuatorAsset=7500  total=75000
[warmup] running 500 ticks...
tick=      0 | entities=  75000 (sensor_active= 66146, alerts=   0, act= 7500) | faults=  1354 lockouts=  0 | rss=  13.6 MB | tick_mean=    0.0 µs | ingest= 713.0 sim= 383.0 export= 112.0 diag=  0.0 µs | exported=0.61 MB acks=7500
[warmup] done — starting measurement (5000 ticks)
tick=   1000 | entities=  75000 (sensor_active= 33877, alerts= 142, act= 7500) | faults=693165 lockouts=  0 | rss=  28.7 MB | tick_mean= 3016.1 µs | ingest= 735.8 sim= 156.6 export= 110.8 diag=  0.0 µs | exported=305.18 MB acks=3757500
tick=   2000 | entities=  75000 (sensor_active= 33696, alerts= 166, act= 7500) | faults=1367793 lockouts=  0 | rss=  40.1 MB | tick_mean= 3021.4 µs | ingest= 735.8 sim= 156.7 export= 110.8 diag=  0.1 µs | exported=914.34 MB acks=11257500
tick=   3000 | entities=  75000 (sensor_active= 33889, alerts= 159, act= 7500) | faults=2042643 lockouts=  0 | rss=  51.5 MB | tick_mean= 3024.8 µs | ingest= 736.4 sim= 156.9 export= 110.8 diag=  0.1 µs | exported=1523.51 MB acks=18757500
tick=   4000 | entities=  75000 (sensor_active= 33657, alerts= 166, act= 7500) | faults=2717674 lockouts=  0 | rss=  63.0 MB | tick_mean= 3022.6 µs | ingest= 735.3 sim= 156.9 export= 110.8 diag=  0.2 µs | exported=2132.66 MB acks=26257500
tick=   5000 | entities=  75000 (sensor_active= 33573, alerts= 155, act= 7500) | faults=3393495 lockouts=  0 | rss=  74.4 MB | tick_mean= 3021.8 µs | ingest= 735.2 sim= 156.5 export= 110.8 diag=  0.2 µs | exported=2741.79 MB acks=33757500

── Final Summary ──────────────────────────────────────
Total ticks (measurement):  5000
Total wall time:            15.118 s
Sustained tick rate:        330.7 Hz
Per-tick mean (wall):       302.3 µs

Per-system mean (µs):
IngestSystem:             736.2
SimulationSystem:         156.6
ExportSystem:             110.7
DiagnosticsSystem:        0.3

Fault injection:
Total sensor faults:      3730093
Total actuator lockouts:  0

Export totals:
Bytes exported:           3045.74 MB
Acks processed:           37500000
Alerts seen:              773395

Memory (RSS at end):        80.1 MB
────────────────────────────────────────────────────────

=== entities=100000 ===
ECS Digital Twin Benchmark — TRANSIT lab / UQAC
entities=100000 | ticks=5000 | warmup=500 | fault_prob=2.0%
[spawn] SensorAsset=70000  EventAsset=20000  ActuatorAsset=10000  total=100000
[warmup] running 500 ticks...
tick=      0 | entities= 100000 (sensor_active= 88228, alerts=   0, act=10000) | faults=  1772 lockouts=  0 | rss=  16.3 MB | tick_mean=    0.0 µs | ingest= 948.0 sim= 607.0 export= 157.0 diag=  0.0 µs | exported=0.81 MB acks=10000
[warmup] done — starting measurement (5000 ticks)
tick=   1000 | entities= 100000 (sensor_active= 45396, alerts= 218, act=10000) | faults=924085 lockouts=  0 | rss=  36.7 MB | tick_mean= 4126.0 µs | ingest= 986.9 sim= 218.2 export= 150.2 diag=  0.0 µs | exported=406.92 MB acks=5010000
tick=   2000 | entities= 100000 (sensor_active= 44998, alerts= 212, act=10000) | faults=1823730 lockouts=  0 | rss=  51.9 MB | tick_mean= 4197.8 µs | ingest= 987.7 sim= 236.6 export= 152.8 diag=  0.1 µs | exported=1219.14 MB acks=15010000
tick=   3000 | entities= 100000 (sensor_active= 45132, alerts= 187, act=10000) | faults=2723608 lockouts=  0 | rss=  67.2 MB | tick_mean= 4132.4 µs | ingest= 986.1 sim= 217.8 export= 150.1 diag=  0.1 µs | exported=2031.31 MB acks=25010000
tick=   4000 | entities= 100000 (sensor_active= 45039, alerts= 209, act=10000) | faults=3624295 lockouts=  0 | rss=  82.4 MB | tick_mean= 4132.1 µs | ingest= 986.5 sim= 217.8 export= 150.1 diag=  0.1 µs | exported=2843.48 MB acks=35010000
tick=   5000 | entities= 100000 (sensor_active= 45069, alerts= 187, act=10000) | faults=4525217 lockouts=  0 | rss=  97.7 MB | tick_mean= 4132.9 µs | ingest= 985.3 sim= 217.1 export= 150.0 diag=  0.1 µs | exported=3655.69 MB acks=45010000

── Final Summary ──────────────────────────────────────
Total ticks (measurement):  5000
Total wall time:            20.732 s
Sustained tick rate:        241.2 Hz
Per-tick mean (wall):       413.0 µs

Per-system mean (µs):
IngestSystem:             985.7
SimulationSystem:         217.2
ExportSystem:             150.1
DiagnosticsSystem:        0.2

Fault injection:
Total sensor faults:      4974449
Total actuator lockouts:  0

Export totals:
Bytes exported:           4060.97 MB
Acks processed:           50000000
Alerts seen:              1029861

Memory (RSS at end):        105.3 MB
────────────────────────────────────────────────────────

=== entities=150000 ===
ECS Digital Twin Benchmark — TRANSIT lab / UQAC
entities=150000 | ticks=5000 | warmup=500 | fault_prob=2.0%
[spawn] SensorAsset=105000  EventAsset=30000  ActuatorAsset=15000  total=150000
[warmup] running 500 ticks...
tick=      0 | entities= 150000 (sensor_active=132379, alerts=   0, act=15000) | faults=  2621 lockouts=  0 | rss=  24.5 MB | tick_mean=    0.0 µs | ingest=1444.0 sim= 884.0 export= 251.0 diag=  0.0 µs | exported=1.22 MB acks=15000
[warmup] done — starting measurement (5000 ticks)
tick=   1000 | entities= 150000 (sensor_active= 67721, alerts= 306, act=15000) | faults=1385323 lockouts=  0 | rss=  54.3 MB | tick_mean= 6453.6 µs | ingest=1517.1 sim= 381.6 export= 226.7 diag=  0.0 µs | exported=610.34 MB acks=7515000
tick=   2000 | entities= 150000 (sensor_active= 67238, alerts= 279, act=15000) | faults=2736064 lockouts=  0 | rss=  77.2 MB | tick_mean= 6469.3 µs | ingest=1517.2 sim= 381.6 export= 226.8 diag=  0.1 µs | exported=1828.57 MB acks=22515000
tick=   3000 | entities= 150000 (sensor_active= 67728, alerts= 317, act=15000) | faults=4087020 lockouts=  0 | rss= 100.1 MB | tick_mean= 6473.9 µs | ingest=1519.6 sim= 382.4 export= 227.0 diag=  0.1 µs | exported=3046.87 MB acks=37515000
tick=   4000 | entities= 150000 (sensor_active= 67533, alerts= 320, act=15000) | faults=5437256 lockouts=  0 | rss= 123.0 MB | tick_mean= 6470.4 µs | ingest=1518.3 sim= 381.8 export= 226.7 diag=  0.1 µs | exported=4265.17 MB acks=52515000
tick=   5000 | entities= 150000 (sensor_active= 67700, alerts= 323, act=15000) | faults=6786973 lockouts=  0 | rss= 145.8 MB | tick_mean= 6470.2 µs | ingest=1518.6 sim= 382.0 export= 226.7 diag=  0.1 µs | exported=5483.48 MB acks=67515000

── Final Summary ──────────────────────────────────────
Total ticks (measurement):  5000
Total wall time:            32.355 s
Sustained tick rate:        154.5 Hz
Per-tick mean (wall):       646.7 µs

Per-system mean (µs):
IngestSystem:             1517.3
SimulationSystem:         381.4
ExportSystem:             226.6
DiagnosticsSystem:        0.2

Fault injection:
Total sensor faults:      7460636
Total actuator lockouts:  0

Export totals:
Bytes exported:           6091.41 MB
Acks processed:           75000000
Alerts seen:              1538845

Memory (RSS at end):        157.2 MB
────────────────────────────────────────────────────────

=== entities=200000 ===
ECS Digital Twin Benchmark — TRANSIT lab / UQAC
entities=200000 | ticks=5000 | warmup=500 | fault_prob=2.0%
[spawn] SensorAsset=140000  EventAsset=40000  ActuatorAsset=20000  total=200000
[warmup] running 500 ticks...
tick=      0 | entities= 200000 (sensor_active=176493, alerts=   0, act=20000) | faults=  3507 lockouts=  0 | rss=  30.0 MB | tick_mean=    0.0 µs | ingest=1907.0 sim=1336.0 export= 349.0 diag=  0.0 µs | exported=1.62 MB acks=20000
[warmup] done — starting measurement (5000 ticks)
tick=   1000 | entities= 200000 (sensor_active= 90145, alerts= 405, act=20000) | faults=1847083 lockouts=  0 | rss=  69.5 MB | tick_mean= 8788.2 µs | ingest=2023.3 sim= 582.9 export= 300.9 diag=  0.0 µs | exported=813.81 MB acks=10020000
tick=   2000 | entities= 200000 (sensor_active= 90392, alerts= 396, act=20000) | faults=3647521 lockouts=  0 | rss= 100.0 MB | tick_mean= 8805.3 µs | ingest=2023.3 sim= 582.9 export= 300.5 diag=  0.1 µs | exported=2438.20 MB acks=30020000
tick=   3000 | entities= 200000 (sensor_active= 90372, alerts= 408, act=20000) | faults=5447700 lockouts=  0 | rss= 130.5 MB | tick_mean= 8805.5 µs | ingest=2023.7 sim= 582.7 export= 300.4 diag=  0.1 µs | exported=4062.57 MB acks=50020000
tick=   4000 | entities= 200000 (sensor_active= 89452, alerts= 444, act=20000) | faults=7247668 lockouts=  0 | rss= 161.1 MB | tick_mean= 8808.2 µs | ingest=2024.8 sim= 583.4 export= 300.7 diag=  0.2 µs | exported=5686.94 MB acks=70020000
tick=   5000 | entities= 200000 (sensor_active= 89914, alerts= 429, act=20000) | faults=9047286 lockouts=  0 | rss= 191.6 MB | tick_mean= 8804.6 µs | ingest=2022.3 sim= 582.4 export= 300.7 diag=  0.1 µs | exported=7311.36 MB acks=90020000

── Final Summary ──────────────────────────────────────
Total ticks (measurement):  5000
Total wall time:            44.034 s
Sustained tick rate:        113.5 Hz
Per-tick mean (wall):       880.6 µs

Per-system mean (µs):
IngestSystem:             2022.7
SimulationSystem:         582.0
ExportSystem:             300.7
DiagnosticsSystem:        0.2

Fault injection:
Total sensor faults:      9946420
Total actuator lockouts:  0

Export totals:
Bytes exported:           8121.94 MB
Acks processed:           100000000
Alerts seen:              2059136

Memory (RSS at end):        206.8 MB
────────────────────────────────────────────────────────
