File size: 2,710 Bytes
0d00bbe
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
# 部署文档

## 环境信息

| 组件 | 版本 |
|---|---|
| CUDA Driver | 570.133.20 |
| CUDA Runtime | 12.4 |
| Python | 3.10 |
| PyTorch | 2.6.0+cu124 |
| Transformers | 4.53.3 |
| lm-eval | 0.4.4 |

## 构建 Docker 镜像`tracy/` 目录下执行:

```bash
cd /root/tracy
docker build -t pangu1b-hif8:latest .
```

首次构建需下载基础镜像并编译 quant_cy CUDA 扩展,约需 10–20 分钟。

## 启动容器

### 训练

```bash
docker run --gpus all \
    -v /data0/dataset:/data0/dataset \
    -v /root/tracy/checkpoints:/workspace/tracy/checkpoints \
    -v /root/logs:/workspace/tracy/logs \
    --shm-size=64g \
    pangu1b-hif8:latest \
    bash pangu_hif8_pretrain/run_train.sh
```

参数说明:
- `--gpus all`:挂载所有 GPU
- `-v /data0/dataset`:挂载本地数据集缓存,避免重复下载
- `-v checkpoints / logs`:持久化训练结果和日志到宿主机
- `--shm-size=64g`:DataLoader 多进程需要足够的共享内存

### 评测

```bash
docker run --gpus all \
    -v /root/tracy/checkpoints:/workspace/tracy/checkpoints \
    -v /root/tracy/evaluate_benchmarks/results:/workspace/tracy/evaluate_benchmarks/results \
    pangu1b-hif8:latest \
    bash -c "cd evaluate_benchmarks && bash run_eval.sh"
```

### 交互式调试

```bash
docker run --gpus all -it \
    -v /root/tracy:/workspace/tracy \
    -v /data0/dataset:/data0/dataset \
    --shm-size=64g \
    pangu1b-hif8:latest \
    bash
```

## 目录结构

```
tracy/
├── Dockerfile
├── DEPLOY.md                        # 本文件
├── HiFloat8/                        # HiF8 量化库(含 quant_cy CUDA 扩展)
├── pangu_hif8_pretrain/             # 训练代码
│   ├── train.py
│   ├── hif8.py
│   └── run_train.sh
├── evaluate_benchmarks/             # 评测代码
│   ├── run_eval.sh
│   ├── compare_results.py
│   └── results/
├── checkpoints/                     # 训练产出模型权重
│   ├── bf16/final/
│   ├── cts/final/
│   └── dts_exp/final/
└── logs/                            # 训练日志
```

## 常见问题

**Q: `quant_cy` 编译失败**

确认宿主机 CUDA Driver ≥ 12.4(`nvidia-smi` 查看),且 Docker 使用了 `--gpus all`。

**Q: 训练时 OOM**

当前配置 `micro_batch_size=16, seq_len=1024`,需要约 60 GiB 显存。
如果 GPU 显存不足,在 `run_train.sh` 中减小 `micro_batch_size`。

**Q: 数据集下载慢**

首次运行会从 HuggingFace 下载 FineWeb sample-10BT(约 48 GB)到 `/data0/dataset/train_pangu1b`。
挂载 `-v /data0/dataset:/data0/dataset` 后后续运行直接读本地缓存。