summaryrefslogtreecommitdiff
path: root/deploy/living-village-multiworld.service
diff options
context:
space:
mode:
Diffstat (limited to 'deploy/living-village-multiworld.service')
-rw-r--r--deploy/living-village-multiworld.service40
1 files changed, 40 insertions, 0 deletions
diff --git a/deploy/living-village-multiworld.service b/deploy/living-village-multiworld.service
new file mode 100644
index 0000000..a16544d
--- /dev/null
+++ b/deploy/living-village-multiworld.service
@@ -0,0 +1,40 @@
+# P59 多世界并存压测 systemd --user 单元模板(N 世界 × D 天,逐采样行流式)。
+#
+# 独立于 writer cgroup 运行(transient unit),输出 append 到 acceptance.log、exec 2>&1。
+# 安装示例:
+# TS=$(date -u +%Y%m%dT%H%M%SZ)
+# systemd-run --user --unit=living-village-multiworld \
+# --property=Type=simple \
+# --property=WorkingDirectory=@REPO@ \
+# --setenv=PMW_REPO=@REPO@ \
+# --setenv=PMW_DIR=@REPO@/artifacts/perf-multiworld/$TS \
+# --setenv=PMW_COMMIT=@COMMIT@ \
+# --setenv=PMW_WORLDS=10 --setenv=PMW_DAYS=20 --setenv=PMW_NPCS=30 \
+# --setenv=PMW_SAMPLE_EVERY=2 --setenv=PMW_SEED_BASE=42 \
+# --setenv=PMW_LOG=@REPO@/artifacts/perf-multiworld/$TS/acceptance.log \
+# --property=StandardOutput=append:@REPO@/artifacts/perf-multiworld/$TS/acceptance.log \
+# --property=StandardError=append:@REPO@/artifacts/perf-multiworld/$TS/acceptance.log \
+# --property=Restart=no \
+# /usr/bin/bash @REPO@/scripts/profile-multiworld.sh
+[Unit]
+Description=Living Village multi-world coexistence memory/GC profile
+After=default.target
+
+[Service]
+Type=simple
+WorkingDirectory=@REPO@
+Environment=PMW_REPO=@REPO@
+Environment=PMW_DIR=@REPO@/artifacts/perf-multiworld/@TS@
+Environment=PMW_COMMIT=@COMMIT@
+Environment=PMW_WORLDS=10
+Environment=PMW_DAYS=20
+Environment=PMW_NPCS=30
+Environment=PMW_SAMPLE_EVERY=2
+Environment=PMW_SEED_BASE=42
+Environment=PMW_LOG=@REPO@/artifacts/perf-multiworld/@TS@/acceptance.log
+ExecStart=/usr/bin/bash @REPO@/scripts/profile-multiworld.sh
+StandardOutput=append:@REPO@/artifacts/perf-multiworld/@TS@/acceptance.log
+StandardError=append:@REPO@/artifacts/perf-multiworld/@TS@/acceptance.log
+Restart=no
+TimeoutStartSec=infinity
+TimeoutStopSec=30s