# Project runners

> How RealHW appears to GitLab.

Source: https://docs.realhw.dev/gitlab/project-runner/
Documentation index: https://docs.realhw.dev/llms.txt

RealHW uses one GitLab project runner identity per customer project. GitLab sees a normal project runner with tags. RealHW is the placement layer behind that runner.

```text
GitLab project job
  -> RealHW project runner
  -> RealHW placement and reservation
  -> matching hardware host
```

The runner tags are the customer-facing contract. Jobs select tags in `.gitlab-ci.yml`; RealHW maps those tags to compatible capacity and reserves resources before container execution.

## What GitLab sees

- A project runner
- A runner token
- A list of runner tags
- Tagged jobs from `.gitlab-ci.yml`

## What RealHW handles

- Hardware inventory
- Job admission
- Fleet placement
- CPU, memory, GPU, NIC, NUMA, SR-IOV, and hugepage reservations
- Usage accounting
