Initial commit

This commit is contained in:
Valère Plantevin
2026-04-20 21:23:37 -04:00
commit 27c05c982f
38 changed files with 2992 additions and 0 deletions

28
Cargo.toml Normal file
View File

@@ -0,0 +1,28 @@
[package]
name = "ecs_dt_benchmark"
version = "0.1.0"
edition = "2021"
description = "ECS Digital Twin runtime benchmark — TRANSIT lab / UQAC"
# No default features: we do NOT want a window, renderer, audio, or anything
# that requires a display. Pure headless ECS.
[dependencies]
bevy_ecs = { version = "0.18", default-features = false }
rand = { version = "0.8", features = ["small_rng"] }
rand_chacha = "0.3"
[profile.release]
opt-level = 3
lto = "thin" # thin LTO: good balance between link time and perf
codegen-units = 1 # single CGU for max inlining across crate boundary
panic = "abort" # smaller binary, no unwinding overhead
[profile.bench]
inherits = "release"
debug = true # keep symbols so perf/flamegraph works on RPi
# On aarch64 (RPi 5 Cortex-A76) the compiler can use NEON by default.
# Uncomment the line below for the RPi 5 build to also enable SVE if your
# toolchain supports it (most don't yet for aarch64-unknown-linux-gnu):
# [target.aarch64-unknown-linux-gnu]
# rustflags = ["-C", "target-cpu=cortex-a76"]