---
title: "StarSling GPU Runners for GitHub Actions"
description: "Your production GPUs should run your product, not your test suite. Drop-in GitHub Actions runners on NVIDIA RTX PRO 6000, RTX 5090 and RTX 4090."
url: https://starsling.dev/products/gpu-runners
canonicalUrl: https://starsling.dev/products/gpu-runners
---

# StarSling GPU Runners

Your production GPUs should run your product, not your test suite. Drop-in GitHub Actions runners on NVIDIA RTX PRO 6000, RTX 5090 and RTX 4090.

## What Partcl measured

| Customer | Speedup | Measured | Change | Statistic |
| --- | --- | --- | --- | --- |
| [Partcl](https://starsling.dev/customers/partcl) | 14x | Shorter wait for a GPU runner | 16m 01s -> 1m 06s | p99 |
| [Partcl](https://starsling.dev/customers/partcl) | 1.8x | Faster full test run | 3m 59s -> 2m 12s | wall p50 |
| [Partcl](https://starsling.dev/customers/partcl) | 1.3x | Faster timing verification | 1m 40s -> 1m 17s | wall p50 |

## The lineup

| Label | GPU | vCPU | Memory | Disk | Price |
| --- | --- | --- | --- | --- | --- |
| `starsling-ubuntu-24.04-gpu` | NVIDIA RTX PRO 6000 | 4 | 16 GB | 100 GB | $0.05922 / min |
| `starsling-ubuntu-24.04-gpu/gpus=rtx-5090:1` | NVIDIA RTX 5090 | 4 | 16 GB | 100 GB | $0.03022 / min |
| `starsling-ubuntu-24.04-gpu/gpus=rtx-4090:1` | NVIDIA RTX 4090 | 4 | 16 GB | 100 GB | $0.02522 / min |
| Coming soon | NVIDIA H100 | - | - | - | - |

The bare `starsling-ubuntu-24.04-gpu` label gives you an RTX PRO 6000. To ask for a
specific GPU, append a selector: `gpus=<sku>:<count>`. Beta runners are
single-GPU, so the count is `1`.

Tell us which GPU you want and what you plan to run on it, and we will open access for your org.

## Use it in a workflow

```yaml
jobs:
  test:
    runs-on: starsling-ubuntu-24.04-gpu
```

```yaml
runs-on: starsling-ubuntu-24.04-gpu/gpus=rtx-5090:1
```

## Spend GPU minutes on the jobs that need them

**Trigger the heavy suite deliberately.** Put the long CUDA builds and model eval suites behind a pull request label or a `workflow_dispatch`, and let every push run the CPU suite. The jobs that need a GPU are usually a small share of the pipeline, and they are the ones worth choosing.

**Run the full matrix nightly.** A `schedule:` trigger at a quiet hour covers the combinations a pull request does not, and the results are waiting when the team starts. Billing runs from job start to finish, so a nightly matrix costs the minutes it runs.

**Filter by path.** Scope the GPU workflow with `paths:` so it fires on the source it actually covers. Our guide on [path filters](/best-practices/github-actions/path-filter-workflows) has the allowlist versus denylist reasoning and the traps.

Weighing a fleet of your own? Our guide to [self-hosted GitHub Actions runners](/self-hosted-github-runners) has the instance cost, the operating surface and the fork-code exposure that comes with running them.

## Other StarSling runners

- [StarSling Runners](https://starsling.dev/products/runners): Drop-in GitHub Actions runners on 5th Gen AMD EPYC

Label reference: https://docs.starsling.dev/configuration/label-reference#gpu-labels

Latest labels and pricing: https://docs.starsling.dev/runners/compute-sizing#gpu-specifications
