# Methodology

## 1. 实验设计

本 benchmark 用于比较同一 Azure Linux VM、同一 Python runtime、同一 workload 输入下，
1 worker 与 2 workers 两种执行模式的运行表现。

固定 workload 参数：

- signal count: `32`
- duration per signal: `10.0 s`
- sample rate: `250 Hz`
- deterministic seed: `202607`
- total samples per invocation: `80,000`
- worker configurations: `1` and `2`

Python runtime：

- CPython `3.12.3`
- NumPy `2.5.2`

没有为公开作品集重新运行 workload，也没有重新 benchmark。

## 2. 执行计划

正式 execution 共完成 `12 / 12` 次 invocation：

- warm-up: `2` 次，总计每个 worker configuration 1 次
- measured: `10` 次
  - workers=1: `5` 次
  - workers=2: `5` 次

warm-up 不计入最终统计。

## 3. 计时与吞吐量

workload 使用单调高精度计时器 `time.perf_counter()` 测量批处理执行时间。

每次 invocation 的 throughput 定义为：

`throughput_signals_per_second = signal_count / elapsed_seconds`

最终公开表格保留每种模式 5 次 measured runs 的：

- minimum
- maximum
- mean
- median
- sample standard deviation

## 4. 正式统计

### Single-process / 1 worker

- mean elapsed: `0.1372885618 s`
- median elapsed: `0.136807406 s`
- min elapsed: `0.136412832 s`
- max elapsed: `0.139612820 s`
- stdev elapsed: `0.0013177470937973 s`
- mean throughput: `233.1026732 signals/s`

### Multi-process / 2 workers

- mean elapsed: `0.1464722926 s`
- median elapsed: `0.147337201 s`
- min elapsed: `0.143455379 s`
- max elapsed: `0.147882955 s`
- stdev elapsed: `0.0018139651281368 s`
- mean throughput: `218.4984844 signals/s`

Derived comparison:

- speedup = `single mean elapsed / multi mean elapsed`
- observed speedup = `0.937300559×`
- 2-worker mean elapsed delta = `+6.689363%`
- 2-worker mean throughput delta = `-6.265131%`

因为 speedup < 1，本次结果属于 **slowdown**，而不是并行加速。

## 5. 确定性与证据边界

正式 benchmark execution 报告：

- measured execution: `10 / 10 PASS`
- formal invocations: `12 / 12`
- deterministic verification: `PASS`
- raw evidence status: `PASS`
- workload exit codes: all zero
- automatic retry: not performed
- automatic repair: not performed

公开包只复制必要的统计结论，不复制 raw logs、主机身份、账户身份、路径或凭据。

## 6. 结果解释

当前 workload 很小：每次只处理 32 条、每条 10 秒的合成信号。
在这种规模下，2-process execution 的固定开销可能高于并行计算带来的收益，
因此 2-worker 的平均 elapsed time 比 1-worker 高约 `6.69%`。

这不是“多进程无效”的一般结论，而是一个有边界的工程观察：
**是否值得并行化取决于单任务计算量、任务数量、进程启动与 IPC 开销以及运行环境。**

## 7. 限制

本结果不用于：

- 推断其他 Azure VM SKU 的性能
- 云厂商之间的性能排名
- 成本/性能结论
- 网络、磁盘或数据库性能结论
- 临床 ECG 算法评价
- 医疗器械性能评价

**synthetic ECG-like workload 仅为确定性合成工程数据；没有真实患者数据；不用于临床诊断；不代表医疗器械性能。**
