LeVCS/bench/reference-hardware.toml

123 lines
3.5 KiB
TOML

schema_version = 1
frozen_at = "2026-07-24"
notes = "A result is comparable only when every required field matches or the deviation is explicitly archived and the result is not promoted to the named gate."
[[profile]]
name = "minimum-30k"
purpose = "P4/P5 minimum batch-1 gate"
[profile.cpu]
model = "AMD Ryzen 7 9800X3D"
physical_cores = 8
threads = 16
architecture = "x86_64"
governor = "performance"
turbo = true
numa_nodes = 1
microcode = "0x0b404023"
[profile.memory]
installed_gib = 64
cgroup_limit_gib = 60
swap_enabled = false
[profile.nvme]
model = "Samsung SSD 990 PRO 1TB"
firmware = "4B2QJXD7"
namespace_count = 1
scheduler = "none"
write_cache = "enabled"
power_loss_protection = false
discard = "async"
[profile.filesystem]
type = "btrfs"
mount_options = ["rw", "noatime", "compress=zstd:3", "ssd", "discard=async", "space_cache=v2"]
data_profile = "single"
metadata_profile = "dup"
barriers = "enabled"
data_mount_must_be_persistent = true
# Contract review 2026-07-24-B. btrfs is copy-on-write, checksummed, and
# compressing; all three interact with a hand-rolled WAL. The journal and
# segment directories run nodatacow so appends are in-place, zstd does not
# burn CPU on incompressible frames, and the frame digest is the sole
# integrity check (which it already is). A profile that permitted two
# different on-disk configurations for the files carrying the throughput
# would not be frozen, so this is part of the profile rather than per-bundle
# metadata; store-bench reads the flags back at startup and refuses on
# mismatch.
store_directory_attributes = "nodatacow"
store_directories = ["shards/*/active", "shards/*/segments"]
[profile.network]
nic = "Realtek RTL8125"
driver = "r8169"
link_mbps = 1000
mtu = 1500
[profile.software]
kernel = "Linux 6.18.30-p1-gentoo-dist"
proxy = "Caddy 2.10.0"
tls = "TLS 1.3"
service_manager = "systemd"
[[profile]]
name = "release-60k"
purpose = "P4/P5 deployed release gate with network headroom"
[profile.cpu]
model = "AMD Ryzen 7 9800X3D"
physical_cores = 8
threads = 16
architecture = "x86_64"
governor = "performance"
turbo = true
numa_nodes = 1
microcode = "0x0b404023"
[profile.memory]
installed_gib = 64
cgroup_limit_gib = 60
swap_enabled = false
[profile.nvme]
model = "Samsung SSD 990 PRO 1TB"
firmware = "4B2QJXD7"
namespace_count = 1
scheduler = "none"
write_cache = "enabled"
power_loss_protection = false
discard = "async"
[profile.filesystem]
type = "btrfs"
mount_options = ["rw", "noatime", "compress=zstd:3", "ssd", "discard=async", "space_cache=v2"]
data_profile = "single"
metadata_profile = "dup"
barriers = "enabled"
data_mount_must_be_persistent = true
# Contract review 2026-07-24-B. btrfs is copy-on-write, checksummed, and
# compressing; all three interact with a hand-rolled WAL. The journal and
# segment directories run nodatacow so appends are in-place, zstd does not
# burn CPU on incompressible frames, and the frame digest is the sole
# integrity check (which it already is). A profile that permitted two
# different on-disk configurations for the files carrying the throughput
# would not be frozen, so this is part of the profile rather than per-bundle
# metadata; store-bench reads the flags back at startup and refuses on
# mismatch.
store_directory_attributes = "nodatacow"
store_directories = ["shards/*/active", "shards/*/segments"]
[profile.network]
nic = "Intel Ethernet Controller X710"
driver = "i40e"
link_mbps = 10000
mtu = 1500
[profile.software]
kernel = "Linux 6.18.30-p1-gentoo-dist"
proxy = "Caddy 2.10.0"
tls = "TLS 1.3"
service_manager = "systemd"