Skip to content
HIPS
  • Earn with your GPU
  • Pricing
  • Docs
Sign inJoin early access
⌘K

Get started

  1. 01Developer hub
  2. 02Quickstart
  3. 03Migrate to HIPS

Guides

  1. 04HIPS SDK
  2. 05Import and run your model
  3. 06Model and task guides
    1. ATask guides
    2. BLanguage (chat)
    3. CClassification
    4. DImage
    5. EVideo
    6. FAudio
    7. GDocument processing
  4. 07Batch jobs
  5. 08Prompt caching
  6. 09Coding-tool setup
    1. AClaude Code
    2. BOther coding tools and editor integrations
  7. 10Command line
    1. ASign in
  8. 11Console
    1. AAccount
    2. BWorkspaces
    3. CAPI keys
    4. DSettings
    5. EUsage
    6. FModels
    7. GPlayground
    8. HDeployments
  9. 12Billing
  10. 13Provider setup
    1. AWhen it works
    2. BCommands
    3. CSettings
    4. DProvider Console
    5. EEarnings
    6. FCrash reports
    7. GData centers
  11. 14Router
  12. 15Guardrails
  13. 16Knowledge

Reference

  1. 17API reference
    1. AAuthentication
    2. BChat completions
    3. CResponses
    4. DMessages
    5. ECount tokens
    6. FModels
    7. GTasks
    8. HEmbeddings and rerank
    9. IJobs
    10. JUploads
    11. KFiles
    12. LBatches
    13. MWebhooks
    14. NVector stores
    15. ODeployments
    16. PRequirements and headers
    17. QErrors
    18. RUsage
    19. SVersioning
  2. 18Operating guidance
    1. ALimits
    2. BErrors
    3. CRetries and billing outcomes
    4. DIdempotency
    5. EStreaming
    6. FData handling
    7. GCompatibility matrix
  3. 19Changelog
Sheet indexProvider setup

Get started

  1. 01Developer hub
  2. 02Quickstart
  3. 03Migrate to HIPS

Guides

  1. 04HIPS SDK
  2. 05Import and run your model
  3. 06Model and task guides
    1. ATask guides
    2. BLanguage (chat)
    3. CClassification
    4. DImage
    5. EVideo
    6. FAudio
    7. GDocument processing
  4. 07Batch jobs
  5. 08Prompt caching
  6. 09Coding-tool setup
    1. AClaude Code
    2. BOther coding tools and editor integrations
  7. 10Command line
    1. ASign in
  8. 11Console
    1. AAccount
    2. BWorkspaces
    3. CAPI keys
    4. DSettings
    5. EUsage
    6. FModels
    7. GPlayground
    8. HDeployments
  9. 12Billing
  10. 13Provider setup
    1. AWhen it works
    2. BCommands
    3. CSettings
    4. DProvider Console
    5. EEarnings
    6. FCrash reports
    7. GData centers
  11. 14Router
  12. 15Guardrails
  13. 16Knowledge

Reference

  1. 17API reference
    1. AAuthentication
    2. BChat completions
    3. CResponses
    4. DMessages
    5. ECount tokens
    6. FModels
    7. GTasks
    8. HEmbeddings and rerank
    9. IJobs
    10. JUploads
    11. KFiles
    12. LBatches
    13. MWebhooks
    14. NVector stores
    15. ODeployments
    16. PRequirements and headers
    17. QErrors
    18. RUsage
    19. SVersioning
  2. 18Operating guidance
    1. ALimits
    2. BErrors
    3. CRetries and billing outcomes
    4. DIdempotency
    5. EStreaming
    6. FData handling
    7. GCompatibility matrix
  3. 19Changelog
13
  1. Docs/
  2. Provider setup/
  3. Data centers
(Detail G)
llms.txt

Data centers

On this sheet12 sections
  1. Install on a server
  2. Many servers
  3. Run it in Docker
  4. The data-center flag
  5. Pause and resume
  6. Exit codes
  7. Hand GPUs back to your own clients
  8. Automate it
  9. Ansible
  10. Slurm
  11. Kubernetes
  12. Monitor it

For operators who sell spare GPU time to HIPS from their own servers and take the GPUs back for their own clients, from a script or a management system. It covers HIPS Provider 0.1.22 and later, on Linux, on the machine itself or in Docker.

Fig. 1, sheet 13Provider setup

Install on a server

The one-line installer picks the package for your distribution. HIPS_DATA_CENTER=1 declares the machine a server before it is linked to your account (see The data-center flag, below).

Shell

00000000000000000000000000000000000000001curl -fsSL https://hips.com/install.sh | sudo HIPS_DATA_CENTER=1 sh
Shell sample

On a server with no screen, link it with sudo hips-provider connect, which shows a code, a QR code and a link to approve in the HIPS Console.

Many servers

For many servers, create an enrollment code in the HIPS Console under Connect many machines. The install line takes it: curl -fsSL https://hips.com/install.sh | sudo HIPS_DATA_CENTER=1 HIPS_ENROLLMENT_CODE=<code> sh. Keep the code in a file only root can read, so it is not typed where the shell's history keeps it, and run this as root:

Shell

00000000000000000000000000000000000000001curl -fsSL https://hips.com/install.sh | HIPS_DATA_CENTER=1 HIPS_ENROLLMENT_CODE="$(cat /root/hips-enrollment-code)" sh
Shell sample

A server already installed is linked from the same file (mode 0600 or 0400, not a link):

Shell

00000000000000000000000000000000000000001sudo hips-provider connect --enrollment-code-file /root/hips-enrollment-code
Shell sample
  • Each server joins your account with nobody approving it, and its GPUs go through the normal checks before they take work.
  • Revoking a code stops new servers joining. Servers it already connected stay connected.
  • You can start the installer on thousands of servers at once. If HIPS asks them to slow down, each server waits and sends its code again, so give your deployment tool's task a timeout of at least ten minutes. If the tool stops the installer early, the server goes on trying and links by itself.

Run it in Docker

Build an image with the installer, and run hips-provider service run as the container's command:

00000000000000000000000000000000000000001FROM ubuntu:24.042RUN apt-get update \3 && apt-get install -y --no-install-recommends ca-certificates curl \4 && curl -fsSL https://hips.com/install.sh | HIPS_NO_LINK=1 HIPS_DATA_CENTER=1 sh \5 && rm -rf /var/lib/apt/lists/*6CMD ["hips-provider", "service", "run"]
Language
  • The state volume keeps the device's identity, its link to your account, its settings and the model cache, so a new container is the same device with the same models. To keep the models on a larger disk, mount that disk at /var/lib/hips-provider/models.
  • The configuration volume keeps /etc/hips-provider/config.toml.
  • --gpus all passes the GPUs to the container and needs the NVIDIA Container Toolkit on the host.
  • --restart unless-stopped brings the container back by itself.
  • --init hands a stop on to HIPS Provider and reaps ended processes.

Note

Always set the container's stop timeout and HIPS_STOP_TIMEOUT to the same number of seconds. A Docker installation can stop a container sooner than its documented default of 10 seconds, and a running job needs time to drain. 125 seconds or more lets a job use the whole default drain window.

Note

Never use docker pause to take the GPUs back. It freezes HIPS Provider in the middle of a job, keeps the GPU memory in use, and HIPS sees a job that stopped answering. HIPS's own pause, below, lets the job finish.

To link the container with an enrollment code, give it the code and HIPS Provider reads it when the container starts, while the container is not yet linked. We recommend a file, since docker inspect shows an environment variable: owned by root and readable by root alone (mode 0600 or 0400), not a link, mounted at /run/secrets/hips-enrollment-code, or at another path named by HIPS_ENROLLMENT_CODE_FILE. Or give the code as the environment variable HIPS_ENROLLMENT_CODE.

00000000000000000000000000000000000000001docker run -d --name hips-provider \2  -v /root/hips-enrollment-code:/run/secrets/hips-enrollment-code:ro \3  ...
Language

A refused code is said in the container's log, and the container keeps running unlinked. On Kubernetes, secret volumes use links, so use the variable from a secretKeyRef, or a subPath mount with mode 0400.

Every command below runs inside the container with docker exec hips-provider hips-provider ....

The data-center flag

A server with the data-center flag is available whenever it is on and healthy. HIPS Provider reads no sign of a person using it, applies no idle or sleep rules, and keeps no daily cap. What stops its work is a pause, a maintenance window you set, its thermal limit, or a driver fault.

Declare the flag before the server is linked: with the installer's HIPS_DATA_CENTER=1, or with sudo hips-provider config set data_center true. A Linux container with no systemd and no desktop declares it by itself. Once the server is linked, only HIPS changes the flag. hips-provider status shows it.

Pause and resume

CommandWhat it does
hips-provider pauseNo new work from HIPS on this server, until resumed
hips-provider pause --for 2hThe same, for two hours; also 30m, 1h30m, 2d
hips-provider pause --until 18:00The same, until a local time, or tomorrow
hips-provider pause --gpu 1One GPU alone, by the index hips-provider gpus lists or its UUID; the others work on
hips-provider pause --reason "client job 4711"The pause with a reason in a few words, at most 200 characters, shown in the status and the HIPS Console
hips-provider pause --waitReturns once the running jobs have drained and the GPU's memory is free
hips-provider pause --wait --timeout 10mThe same, waiting at most ten minutes
hips-provider resumeEnds the pause; --gpu 1 ends one GPU's
  • Command
    hips-provider pause
    What it does
    No new work from HIPS on this server, until resumed
  • Command
    hips-provider pause --for 2h
    What it does
    The same, for two hours; also 30m, 1h30m, 2d
  • Command
    hips-provider pause --until 18:00
    What it does
    The same, until a local time, or tomorrow
  • Command
    hips-provider pause --gpu 1
    What it does
    One GPU alone, by the index hips-provider gpus lists or its UUID; the others work on
  • Command
    hips-provider pause --reason "client job 4711"
    What it does
    The pause with a reason in a few words, at most 200 characters, shown in the status and the HIPS Console
  • Command
    hips-provider pause --wait
    What it does
    Returns once the running jobs have drained and the GPU's memory is free
  • Command
    hips-provider pause --wait --timeout 10m
    What it does
    The same, waiting at most ten minutes
  • Command
    hips-provider resume
    What it does
    Ends the pause; --gpu 1 ends one GPU's

The options combine: hips-provider pause --gpu 1 --wait --timeout 10m --reason "client job 4711".

  • A server's pause lasts until it is resumed, across reboots and restarts of its container. A pause with --for or --until still ends at its time.
  • HIPS sends no new work. A job already running may finish within the drain window, 120 seconds unless drain_window_s says otherwise; one that has not finished by then is stopped and reported to HIPS.
  • Pausing while paused changes the end, and the reason where a new one is given. Resuming while not paused says "Not paused.". Both exit 0, so a script can run them again safely.

Exit codes

CodeMeaning
0Paused (with --wait, also drained), resumed, or not paused
1Another failure, such as a GPU the server does not have; the message says which
2The command line is wrong, such as --timeout without --wait
69The HIPS Provider service is not running here
75--timeout passed before the work drained. The pause stays in force: wait again, or resume
77This account may not use the service: run it as root or with sudo
  • Code
    0
    Meaning
    Paused (with --wait, also drained), resumed, or not paused
  • Code
    1
    Meaning
    Another failure, such as a GPU the server does not have; the message says which
  • Code
    2
    Meaning
    The command line is wrong, such as --timeout without --wait
  • Code
    69
    Meaning
    The HIPS Provider service is not running here
  • Code
    75
    Meaning
    --timeout passed before the work drained. The pause stays in force: wait again, or resume
  • Code
    77
    Meaning
    This account may not use the service: run it as root or with sudo

Hand GPUs back to your own clients

  1. 01

    Pause with --wait: hips-provider pause --wait --timeout 10m --reason "...", with --gpu N for one GPU. When it exits 0, no HIPS work runs and the GPU's memory is free.

  2. 02

    Hand the GPU over and start your client's work.

  3. 03

    Resume once your client is done: hips-provider resume, with --gpu N for one GPU.

Automate it

Ansible

Pause with --wait before a change and resume after. In Docker, put docker exec hips-provider in front of the program. A task that should not fail the play on a slow drain can accept 75 as well: the pause is then in force, with work still finishing.

Ansible

00000000000000000000000000000000000000001- name: Take the GPUs back from HIPS2  ansible.builtin.command:3    argv: [hips-provider, pause, --wait, --timeout, 10m, --reason, "{{ hips_pause_reason }}"]4  register: hips_pause5  changed_when: true6  failed_when: hips_pause.rc != 07 8# Your change goes here.9 10- name: Give the GPUs back to HIPS11  ansible.builtin.command:12    argv: [hips-provider, resume]13  register: hips_pause_end14  changed_when: "'Not paused.' not in hips_pause_end.stdout"
Ansible sample

Slurm

A prolog pauses with --wait, and an epilog resumes. A prolog that exits with anything but 0 sets the node to DRAIN, so give --timeout room for the drain window. On nodes that run several Slurm jobs at once, pause the job's own GPUs with --gpu, after checking that the indices hips-provider gpus lists match your gres.conf.

00000000000000000000000000000000000000001#!/bin/sh2# Prolog: take this node's GPUs from HIPS for the Slurm job.3exec hips-provider pause --wait --timeout 5m --reason "Slurm job ${SLURM_JOB_ID}"
Language

Kubernetes

When HIPS Provider runs on a node beside your cluster, the node moves between the two with a pause and a cordon: the pause before the uncordon when the cluster takes the node, and the resume after the cordon when HIPS takes it back. Where HIPS Provider runs as a pod on the node, run the same commands with kubectl exec into that pod, and set its terminationGracePeriodSeconds to the value of HIPS_STOP_TIMEOUT.

00000000000000000000000000000000000000001ssh "$NODE" sudo hips-provider pause --wait --timeout 10m --reason "cluster workloads"2kubectl uncordon "$NODE"
Language

Monitor it

hips-provider status --json prints one JSON object for each server's state, its GPUs, any pause with its reason, and the work running.

FieldWhat it holds
stateready, working, paused, in_use, offline, needs_you or updating
lineThe status in words
status.pauseThe machine's pause, or null: reason, lasting, drained, until_unix_ms, since_unix_ms, source
status.gpus[]Each GPU: index, key, paused, pause_reason, pause_lasting, drained, attempts
status.data_centerThe data-center flag
  • Field
    state
    What it holds
    ready, working, paused, in_use, offline, needs_you or updating
  • Field
    line
    What it holds
    The status in words
  • Field
    status.pause
    What it holds
    The machine's pause, or null: reason, lasting, drained, until_unix_ms, since_unix_ms, source
  • Field
    status.gpus[]
    What it holds
    Each GPU: index, key, paused, pause_reason, pause_lasting, drained, attempts
  • Field
    status.data_center
    What it holds
    The data-center flag

For example, whether a server is paused and drained:

Shell

00000000000000000000000000000000000000001hips-provider status --json | jq '{state, pause: .status.pause}'
Shell sample

Related sheets

  • Earn with your GPU
Previous sheetCrash reports
Next sheetRouter
Sheet
13 of 19
Detail
G
Updated
2026-11-11
Sign in to the Console

On this sheet

  1. Install on a server
  2. Many servers
  3. Run it in Docker
  4. The data-center flag
  5. Pause and resume
  6. Exit codes
  7. Hand GPUs back to your own clients
  8. Automate it
  9. Ansible
  10. Slurm
  11. Kubernetes
  12. Monitor it

Product

  • Inference
  • Models
  • Deploy your model
  • Always-on GPU capacity
  • How it works
  • Use cases
  • Pricing

Developer

  • Docs
  • Quickstart
  • Migrate to HIPS
  • HIPS SDK
  • Batch jobs
  • API reference

Provider

  • Earn with your GPU
  • Register GPU interest
  • Download for Mac
  • Download for Windows
  • Download for Linux

Resource

  • Security and Data
  • Resources
  • llms.txt

Compare

  • OpenRouter alternatives
  • Together AI alternatives
  • Groq alternatives
  • All comparisons

Company

  • About
  • Contact
  • Affiliate program
  • HIPS Payments

Legal

  • Legal
  • Consumer Health Data Privacy Policy
  • Report content
  • Cookie preferences

Support

  • Contact HIPS
  • Looking for payments support?

HIPS. AI inference for builders.

hips.com

Hyperscale Inference Processing Systems OÜ