> ## Documentation Index
> Fetch the complete documentation index at: https://starforge.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# 资源是怎么申请的

> 硬件 profile 与卡型 series、配额、时段窗口、多资源池

StarForge 的资源声明只有一个入口：**`--profile` 表达式**。你说「哪种卡、几张」，拓扑细节（几节点 × 每节点几卡、并行度调优、NCCL 环境）由服务端注册表补齐——客户端与服务端不可能写出互相矛盾的资源声明。

## Profile 与 Series

| 概念             | 含义                                               | 例子                                     |
| -------------- | ------------------------------------------------ | -------------------------------------- |
| **Series（卡型）** | 一类算力卡的规格：算力权重、显存、Ray 资源 pin、Slurm constraint、总卡数 | `h200`、`h100`                          |
| **Profile**    | 卡型 + 默认形状 + 该形状下的调优覆盖（并行度、vLLM 显存比等）             | `h200`（1×8）、`h200-2g`（1×2）、`h100`（1×1） |

```bash theme={"theme":{"light":"github-light","dark":"github-dark-dimmed"}}
sf status                        # 查看你可用的 profile 与集群水位
sf submit my-exp --profile h200          # 注册表默认形状（1 节点 8 卡）
sf submit my-exp --profile h200:4        # 4 张卡
sf submit my-exp --profile h200:16       # 16 卡 = 2 满节点
```

Profile 注册表由管理员维护（内置默认 + `FORGE_HARDWARE_SERIES` / `FORGE_CLUSTER_PROFILES` 覆盖），随 profile 下发的还有进程环境（NCCL / Ray 内存阈值 / PyTorch 分配器）与框架覆盖项（并行度全 1、vLLM `gpu_memory_utilization` 等）——这些**不在**实验 config 里，换卡型不用改实验。

## 多资源池（异构训练）

RL 训练的 train 与 rollout 可以钉在不同卡型上（如 H100 训练 + H20 采样），`--profile` 重复出现并带角色前缀：

```bash theme={"theme":{"light":"github-light","dark":"github-dark-dimmed"}}
sf submit my-exp \
  --profile train=h200:8 \
  --profile rollout=h100:2
```

装配层按后端翻译：**kuberay** 每池一个 worker group（nodeSelector 按卡型标签，Ray 自定义资源 pin）；**slurm** 每池一个 hetjob 组件，`--constraint` 来自卡型的 `slurm_constraint`。各池 `gpus_per_node` 必须一致。Slurm 遇到没声明 constraint 的卡型直接拒。`local` 和 `agent`（Phase 1，一作业一节点）不支持多池。

## 配额

管理员按用户设置软配额，提交与出队时执法：

| 维度              | 说明                |
| --------------- | ----------------- |
| **并发 GPU 上限**   | 运行中 + 排队保留的总卡数    |
| **并发作业上限**      | 同时活跃的作业数          |
| **每日 GPU-时**    | 按天累计的用量上限（0 = 不限） |
| **允许的 profile** | 限定可用卡型（空 = 全部）    |
| **优先级**         | 排队顺序权重            |

超配额的提交会进入队列等待（而不是直接拒绝），控制台 **用量** 页与 `sf status` 都能看到当前水位。

## 时段窗口

管理员可按卡型设置每日可运行时段（如白天推理优先、夜间训练放开）。窗口关闭时：

* 新作业不出队（窗口剩余时间不足配置阈值也不放行）；
* 运行中的作业收到宽限期后被暂停，**保留 checkpoint**；
* 窗口再次打开后自动恢复续训。

## GPU 台账

每个作业记录 `gpu_seconds`（实际占卡时长 × 卡数），日报与用量页按此计量。仿真模式（无 GPU 的测试环境）下记账语义不变——见 [E2E 闭环测试](/zh-Hans/ops/e2e-testing)。
