{
  "experiment": "Dreamtsoft SaaS queue simulation",
  "version": 1,
  "measurement_date": "2026-09-05",
  "time_unit": "simulated milliseconds",
  "assumptions": {
    "workers": 8,
    "tenants": 20,
    "bulk_jobs": 400,
    "quiet_tenants": 19,
    "jobs_per_quiet_tenant": 4,
    "quiet_arrivals_ms": [
      200,
      600,
      1000,
      1400
    ],
    "quiet_service_ms": 100,
    "bulk_service_ms": {
      "equal_jobs": 100,
      "slow_bulk_jobs": 500
    },
    "cap_per_tenant": 2,
    "quiet_percentile_denominator": 76,
    "p95_nearest_rank": 73,
    "ordering": "finish, arrive, dispatch; arrival ties by ascending job ID; tenants in ascending ID order",
    "preemption": false,
    "randomness": false,
    "exclusions": 0
  },
  "limits": [
    "Synthetic workload, not production traffic or a vendor benchmark.",
    "No network, storage, locks, retries, failures, polling or scheduler overhead.",
    "All work is admitted; queues are unbounded in this model.",
    "Round robin is a reference algorithm, not an implementation of any managed queue.",
    "The hard cap does not borrow otherwise idle slots."
  ],
  "runs": [
    {
      "scenario": "equal_jobs",
      "policy": "fifo",
      "jobs": 476,
      "quiet_jobs": 76,
      "bulk_jobs": 400,
      "quiet_p50_wait_ms": 4600,
      "quiet_p95_wait_ms": 4900,
      "quiet_max_wait_ms": 5000,
      "quiet_p95_completion_ms": 5000,
      "bulk_finished_ms": 5000,
      "all_finished_ms": 6000,
      "worker_utilization_pct": 99.17,
      "max_bulk_in_flight": 8
    },
    {
      "scenario": "equal_jobs",
      "policy": "round_robin",
      "jobs": 476,
      "quiet_jobs": 76,
      "bulk_jobs": 400,
      "quiet_p50_wait_ms": 100,
      "quiet_p95_wait_ms": 200,
      "quiet_max_wait_ms": 200,
      "quiet_p95_completion_ms": 300,
      "bulk_finished_ms": 6000,
      "all_finished_ms": 6000,
      "worker_utilization_pct": 99.17,
      "max_bulk_in_flight": 8
    },
    {
      "scenario": "equal_jobs",
      "policy": "capped_round_robin",
      "jobs": 476,
      "quiet_jobs": 76,
      "bulk_jobs": 400,
      "quiet_p50_wait_ms": 100,
      "quiet_p95_wait_ms": 200,
      "quiet_max_wait_ms": 200,
      "quiet_p95_completion_ms": 300,
      "bulk_finished_ms": 20800,
      "all_finished_ms": 20800,
      "worker_utilization_pct": 28.61,
      "max_bulk_in_flight": 2
    },
    {
      "scenario": "slow_bulk_jobs",
      "policy": "fifo",
      "jobs": 476,
      "quiet_jobs": 76,
      "bulk_jobs": 400,
      "quiet_p50_wait_ms": 24600,
      "quiet_p95_wait_ms": 24900,
      "quiet_max_wait_ms": 25000,
      "quiet_p95_completion_ms": 25000,
      "bulk_finished_ms": 25000,
      "all_finished_ms": 26000,
      "worker_utilization_pct": 99.81,
      "max_bulk_in_flight": 8
    },
    {
      "scenario": "slow_bulk_jobs",
      "policy": "round_robin",
      "jobs": 476,
      "quiet_jobs": 76,
      "bulk_jobs": 400,
      "quiet_p50_wait_ms": 300,
      "quiet_p95_wait_ms": 500,
      "quiet_max_wait_ms": 500,
      "quiet_p95_completion_ms": 600,
      "bulk_finished_ms": 26000,
      "all_finished_ms": 26000,
      "worker_utilization_pct": 99.81,
      "max_bulk_in_flight": 8
    },
    {
      "scenario": "slow_bulk_jobs",
      "policy": "capped_round_robin",
      "jobs": 476,
      "quiet_jobs": 76,
      "bulk_jobs": 400,
      "quiet_p50_wait_ms": 100,
      "quiet_p95_wait_ms": 200,
      "quiet_max_wait_ms": 300,
      "quiet_p95_completion_ms": 300,
      "bulk_finished_ms": 100200,
      "all_finished_ms": 100200,
      "worker_utilization_pct": 25.9,
      "max_bulk_in_flight": 2
    }
  ]
}
