kubeflow / kubeflow/trainer

KEP-2903: Support Elastic PyTorch in TrainJob

Open
#2,903 17 comments 8 reactions 1 assignee Assigned to @aniket2405 View on GitHub
area/api area/controller help wanted kind/feature kind/plan-kep
Dominant language
Go
Stars
2.2k
Forks
1.1k
Avg merge
3d 22h
Merged PRs (30d)
39

Description

### What you would like to be added?

As part of [Kubeflow Trainer API](https://github.com/kubeflow/trainer/tree/master/docs/proposals/2170-kubeflow-trainer-v2), we designed [the ElasticPolicy API](https://github.com/kubeflow/trainer/blob/master/pkg/apis/trainer/v1alpha1/trainingruntime_types.go#L219) which should allow users to run PyTorch in elastic mode: https://docs.pytorch.org/docs/stable/elastic/run.html

It would be nice if someone could drive KEP for that, and propose API changes to the next release: Trainer v2.2

```yaml
elasticPolicy:
minNodes: 2
maxNodes: 5
metrics:
- type: Resource
resource:
name: nvidia.com/gpu
target:
type: Utilization
averageUtilization: 75
```

Potentially, we should support elastic JobSet for that: https://github.com/kubernetes-sigs/jobset/issues/463

cc @kubeflow/kubeflow-trainer-team

/area api
/area controller
/help

### Why is this needed?

We should support Elastic TrainJobs like in Training Operator V1 PyTorchJob.

### Love this feature?

Give it a 👍 We prioritize the features with most 👍

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.