Commit afe1a16c authored by yongshk's avatar yongshk
Browse files

Add BW1101 Hygon autonomous driving models

parent 4dd174a2
# Hygon-hub
海光测试镜像仓库。
## 贡献指南
为了提升协作效率,本项目使用 [pre-commit](https://pre-commit.com/) 框架在每次提交前自动执行代码格式化与检查。具体使用方式请参考 [CONTRIBUTING.md](./CONTRIBUTING.md)
## 镜像层级依赖关系
本项目的 Docker 镜像采用分层构建策略,各镜像之间存在依赖关系。下图展示了镜像的构建层级和目录位置:
```mermaid
flowchart TD
A["<b>🏭 Hygon PyTorch Base</b><br/><code>harbor.sourcefind.cn:5443/dcu/admin/base/pytorch</code><br/><br/>"]
B["<b>📦 PyTorch Common Base</b><br/><code>common/base/pytorch/</code><br/><br/>"]
C["<b>🚗 Autodrive</b><br/><code>common/base/autodrive/</code><br/><br/>"]
D["<b>💬 Megatron-LM</b><br/><code>common/base/megatron/</code><br/><br/>"]
E["<b>🎨 DiffSynth-Studio</b><br/><code>common/base/diffsynth-studio/</code><br/><br/>"]
F["<b>Qwen3</b><br/><code>models/Qwen2-3/</code><br/><br/>"]
G["<b>Wan2.2, FLUX.2, ...</b><br/><code>models/xxx/</code><br/><br/>"]
H["<b>BEVFormer, ...</b><br/><code>models/BEVFormer/</code><br/><br/>"]
A --> B
B --> C & D & E
C --> H
D --> F
E --> G
style A fill:#e1f5fe,stroke:#01579b,stroke-width:2px
style B fill:#fff3e0,stroke:#e65100,stroke-width:2px
style C fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
style D fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
style E fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
style F fill:#e8f5e9,stroke:#2e7d32,stroke-width:2px
style G fill:#e8f5e9,stroke:#2e7d32,stroke-width:2px
style H fill:#e8f5e9,stroke:#2e7d32,stroke-width:2px
```
### 镜像层级说明
| 层级 | 名称 | 说明 | 构建目录 |
|------|------|------|----------|
| L0 | 海光官方镜像 | 由海光提供的 PyTorch DCU 基础镜像 | - |
| L1 | PyTorch 公共镜像 | 包含 SSH、网络、环境变量等通用配置 | `common/base/pytorch/` |
| L2 | 框架公共镜像 | 面向特定领域的框架镜像(自动驾驶/LLM/生成模型) | `common/base/<framework>/` |
| L3 | 模型镜像 | 特定模型的训练镜像 | `models/<model>/` |
### 构建顺序
构建镜像时需要按照依赖顺序进行:
1. **L1**: 先构建 `common/base/pytorch/dockerfile`,生成 `pytorch2.7.1_dtk26.04_v2.0_Hygon`
2. **L2**: 再构建框架镜像(如 `common/base/autodrive/dockerfile`),生成 `mmcv1.6_dtk26.04_v2.0_Hygon`
3. **L3**: 最后构建具体模型镜像(如 `models/BEVFormer/dockerfile`
> 构建时直接使用 Dockerfile 中配置的内部源或随模型目录携带的必要 wheel,不再需要启动本地包服务。
> ⚠️ **注意**: 构建下层镜像前,请确保其依赖的上层镜像已经构建完成并正确推送到镜像仓库。
## 项目目录结构
```
TrainingPerfBench/
├── common/ # 公共文件
│ ├── base/ # 基础框架镜像目录
│ │ ├── diffsynth-studio/ # DiffSynthStudio 目录
│ │ │ ├── DiffSynth-Studio/ # DiffSynthStudio 项目源码
│ │ │ ├── dockerfile # DiffSynthStudio 基础镜像 dockerfile
│ │ │ └── README.md # 镜像构建命令
│ │ │
│ │ ├── megatron/ # Megatron-LM 目录
│ │ │ ├── Megatron-LM/ # Megatron-LM 项目源码
│ │ │ ├── dockerfile # Megatron-LM 基础镜像 dockerfile
│ │ │ └── README.md # 镜像构建命令
│ │ └── ...
│ │
│ └── utils/ # 通用工具脚本
│ ├── download_utils.sh
│ └── run_cmd.sh
├── models/ # 模型特定训练镜像
│ ├── Qwen2-3/ # Qwen 2/3 训练
│ │ ├── dockerfile
│ │ ├── train_qwen.sh
│ │ ├── download_datasets.sh
│ │ └── README.md # 镜像构建命令
│ │
│ ├── Qwen2.5VL/ # Qwen 2.5 多模态视觉语言模型
│ ├── Wan2/ # Wan2 模型
│ └── ...
├── .dockerignore
├── .gitignore
├── .gitmodules
└── README.md
```
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment