Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 8 additions & 7 deletions keps/sig-scheduling/4671-gang-scheduling/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@ apiVersion: v1
kind: Pod
spec:
...
workload:
workloadRef:
name: job-1
...
```
Expand All @@ -151,8 +151,9 @@ spec:
completionMode: Indexed
template:
spec:
workload:
workloadRef:
name: job-1
podGroup: pg1
restartPolicy: OnFailure
containers:
- name: ml-worker
Expand All @@ -173,7 +174,7 @@ The `Workload` core resource will be introduced. A `Workload` does not create an

It does not affect pod creation by Job or any other controller. A sample resource looks like this:
```yaml
apiVersion: scheduling/v1alpha1
apiVersion: scheduling.k8s.io/v1alpha1
kind: Workload
metadata:
namespace: ns-1
Expand Down Expand Up @@ -222,7 +223,7 @@ usecases. You can read more about it in the [extended proposal] document.
### Naming

* `Workload` is the resource Kind.
* `scheduling` is the ApiGroup.
* `scheduling.k8s.io` is the ApiGroup.
* `spec.workload` is the name of the new field in pod.
* Within a Workload there is a list of groups of pods. Each group represents a top-level division of pods within a Workload. Each group can be independently gang scheduled (or not use gang scheduling). This group is named `PodGroup`.
* In a future , we expect that this group can optionally specify further subdivision into sub groups. Each sub-group can have an index. The indexes go from 0 to N, without repeats or gaps. These subgroups are called `PodSubGroup`.
Expand Down Expand Up @@ -265,7 +266,7 @@ treat it as a blocker.
The example below shows how this could look like for with the following `Workload` object:
Copy link
Member

@macsko macsko Dec 8, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fix the pod spec below as well:

apiVersion: v1
kind: Pod
metadata:
  name: jobset-job-1-abc123
spec:
  ...
  workloadKey:
    name: jobset
    podGroup: job-1
    podGroupReplicaKey: key-2
  ...

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done.


```yaml
apiVersion: scheduling/v1alpha1
apiVersion: scheduling.k8s.io/v1alpha1
kind: Workload
metadata:
name: jobset
Expand All @@ -285,10 +286,10 @@ metadata:
name: jobset-job-1-abc123
spec:
...
workload:
workloadRef:
name: jobset
podGroup: job-1
podGroupReplicaIndex: 2
podGroupReplicaKey: key-2
...

```
Expand Down