Skip to content

feat: add native support for TPUs and multi-vendor hardware accelerators#6911

Open
Joon-Klaps wants to merge 5 commits intonextflow-io:masterfrom
Joon-Klaps:tpu-k8s
Open

feat: add native support for TPUs and multi-vendor hardware accelerators#6911
Joon-Klaps wants to merge 5 commits intonextflow-io:masterfrom
Joon-Klaps:tpu-k8s

Conversation

@Joon-Klaps
Copy link
Contributor

This PR extends the PodSpecBuilder to natively support a wider range of hardware accelerators, specifically targeting Google TPUs (GKE), AMD GPUs, AWS Neuron (Inferentia/Trainium), and Intel Gaudi devices. It removes the need for manual pod directive overrides by automatically mapping common hardware shorthands to their correct Kubernetes Extended Resource strings.

Previously, the getAcceleratorType logic was heavily biased toward NVIDIA GPUs (nvidia.com/gpu). If a user requested a TPU or an AMD GPU using shorthand (e.g., accelerator: 'tpu'), the builder would either fail to map it correctly or produce an invalid resource string like tpu.com/gpu. This forced AI/ML practitioners to manually override Pod specs to run workloads on non-NVIDIA hardware.

@netlify
Copy link

netlify bot commented Mar 11, 2026

Deploy Preview for nextflow-docs-staging canceled.

Name Link
🔨 Latest commit 163f1c7
🔍 Latest deploy log https://app.netlify.com/projects/nextflow-docs-staging/deploys/69b16a8782a3a00008b3169c

Signed-off-by: Joon-Klaps <joon.klaps@kuleuven.be>
Signed-off-by: Joon-Klaps <joon.klaps@kuleuven.be>
Signed-off-by: Joon-Klaps <joon.klaps@kuleuven.be>
Signed-off-by: Joon-Klaps <joon.klaps@kuleuven.be>
Signed-off-by: Joon-Klaps <joon.klaps@kuleuven.be>
Copy link

@tomiles tomiles left a comment

Choose a reason for hiding this comment

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

It looks great! I like the idea of adding the .toLowerCase() method to the type definition. 👍🏻

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants