Skip to content

[Feature]: Allow listing available key resources such as gpu, region, and backends #2142

Open
@peterschmidt85

Description

@peterschmidt85

Problem

Problem 1 (major): listing available GPUs per region and backend

As a user, sometimes, I want to know which GPUs are available within my project (and in which regions). Currently, I either have to specify a wide range in YAML and then try dstack apply and explore offers, or check it via specific backends' console UI (e.g. I do it often with RunPod - because they have a great and convenient UI for that).
It would be great if I could list available GPUs per region and backend and their availability (if this information is available) via the CLI.

Also, a minor yet related issue is when I don't know how certain GPUs are named with specific backends. This issue though should be better addressed by ensuring that dstack uses unified GPU names across all vendors and backends. But this may not be very easy to implement. That's why this issue is also related.

Note, the SSH backend is also relevant here as I may want to see what fleets are available (if I use dstack heavily on-pem machines).

Problem 2 (medium): listing available regions per backend

As a user, I may often want to see what regions are available so I can configure the backend or run accordingly, or to create volumes. Currently, I always have to either read the backend's documentation or use their console UI.

Overall, if I have to use backend's UI to work with backends, this isn't very productive nor convenient. We strive to make dstack the most simple way to work with multiple clouds. For that, we need to ensure all is possible without using backends' console UI.

Problem 3 (minor): listing available backends

As a user, sometimes I may want to know what backends are available. Currently, this information is only available via UI or the YAML files if you're a server admin. It would be a lot more convenient if I could access it via the CLI.

Solution

$ dstack list gpu [--backend BACKEND] [--region REGION] [--name NAME] [--all]

| <backend> | <GPU name/memory> | GPU vendor | <region> | <availability/quota information> |
$ dstack list region [--backend BACKEND] 

| <backend> | <region> |
$ dstack list backend

| <backend> |

Workaround

No response

Would you like to help us implement this feature by sending a PR?

Yes

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions