mirror of
https://github.com/harvard-edge/cs249r_book.git
synced 2026-07-17 08:28:07 -05:00
54 lines
2.2 KiB
Plaintext
54 lines
2.2 KiB
Plaintext
# solvers.OrchestrationModel { #mlsysim.solvers.OrchestrationModel }
|
|
|
|
```python
|
|
solvers.OrchestrationModel()
|
|
```
|
|
|
|
Analyzes Cluster Orchestration and Queueing (Little's Law).
|
|
|
|
**Caveat:** This model uses a pedagogical M/D/1 queue (single server, deterministic
|
|
service) to establish macroscopic wait-time bounds for dedicated, monolithic cluster workloads.
|
|
For detailed multi-tenant job packing and preemption, a discrete-event M/G/c
|
|
scheduler simulation would be required.
|
|
|
|
This model simulates the 'Wait Wall' in shared research clusters,
|
|
calculating job completion times and researcher wait times based on
|
|
cluster utilization and arrival rates.
|
|
|
|
Literature Source:
|
|
1. Little (1961), "A Proof for the Queuing Formula: L = λW."
|
|
2. Barroso et al. (2018), "The Datacenter as a Computer" (Cluster Mgmt).
|
|
3. Jeon et al. (2019), "Analysis of Large-Scale Multi-Tenant GPU Clusters."
|
|
|
|
## Methods
|
|
|
|
| Name | Description |
|
|
| --- | --- |
|
|
| [solve](#mlsysim.solvers.OrchestrationModel.solve) | Solves for cluster wait times and utilization. |
|
|
|
|
### solve { #mlsysim.solvers.OrchestrationModel.solve }
|
|
|
|
```python
|
|
solvers.OrchestrationModel.solve(
|
|
fleet,
|
|
arrival_rate_jobs_per_day,
|
|
avg_job_duration_days,
|
|
)
|
|
```
|
|
|
|
Solves for cluster wait times and utilization.
|
|
|
|
#### Parameters {.doc-section .doc-section-parameters}
|
|
|
|
| Name | Type | Description | Default |
|
|
|---------------------------|--------|------------------------------------------------------------------|------------|
|
|
| fleet | Fleet | The hardware cluster configuration. | _required_ |
|
|
| arrival_rate_jobs_per_day | float | λ: Rate at which new training jobs are submitted. | _required_ |
|
|
| avg_job_duration_days | float | The average time a job takes to run if it has the whole cluster. | _required_ |
|
|
|
|
#### Returns {.doc-section .doc-section-returns}
|
|
|
|
| Name | Type | Description |
|
|
|--------|------------------|----------------------------------------------------|
|
|
| | Dict\[str, Any\] | Wait time, system length, and utilization metrics. |
|