|
139 | 139 | "keywords": ["kubernetes","emulation","kind","kwok","kemu"], |
140 | 140 |
|
141 | 141 | "mainEntityOfPage": "true", |
142 | | - "wordCount": "2568" |
| 142 | + "wordCount": "2577" |
143 | 143 | } |
144 | 144 | </script> |
145 | 145 |
|
@@ -456,7 +456,7 @@ <h1 class="mb-8 mt-0 text-4xl font-extrabold text-neutral-900 dark:text-neutral" |
456 | 456 | <p>Maximizing infrastructure efficiency through optimized scheduling and high-density bin packing is |
457 | 457 | critical for achieving high workload throughput and resource utilization. Introducing scheduler |
458 | 458 | modifications at production scale is risky: configuration errors can render workloads unschedulable, |
459 | | -causing multi-day delays for dozens or hundreds of AI practitioners, idling capacity, wasted on-demand |
| 459 | +causing multi-day delays for dozens or hundreds of ML engineers, idling capacity, wasted on-demand |
460 | 460 | resources, and delayed delivery. It is imperative that scheduler modifications with a big blast |
461 | 461 | radius are tested and verified in a safe environment before shipping to production.</p> |
462 | 462 | <p>This problem is not new, and virtual/emulated clusters for scheduling experimentation and workload |
@@ -1103,9 +1103,9 @@ <h3 id="suboptimal-scheduling-example" class="relative group">Suboptimal schedul |
1103 | 1103 | <p>From the dashboard, we can see that while all jobs are in the <code>Running</code> state, there are pods |
1104 | 1104 | in the <code>Pending</code> state while unallocated capacity remains available.</p> |
1105 | 1105 | <p>What we’re observing is partial admission - a common scheduling problem in Kubernetes |
1106 | | -clusters. Pods created by jobs are not scheduled in batch but rather one-by-one |
1107 | | -resulting in fragmentation and inability to schedule all pods even if there is |
1108 | | -cluster capacity available.</p> |
| 1106 | +clusters. The Kubernetes Scheduler processes pods individually without job-level awareness. |
| 1107 | +Pods created by jobs are not scheduled in batch but rather one-by-one resulting in |
| 1108 | +fragmentation and inability to schedule all pods even if there is cluster capacity available.</p> |
1109 | 1109 | <p>For distributed training workloads that require all workers to start simultaneously |
1110 | 1110 | (all-or-nothing semantics), this partial admission creates a deadlock situation. |
1111 | 1111 | This simple experiment reveals a scheduling issue that would be expensive to discover |
|
0 commit comments