Skip to content

Commit cf13f44

Browse files
committed
Merge upstream/main into pr-hrscale-hygon-v2
2 parents 74e7030 + 067efe6 commit cf13f44

69 files changed

Lines changed: 6385 additions & 1689 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/configs/hygon.yml

Lines changed: 79 additions & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -1,79 +1,79 @@
1-
# Copyright 2026 FlagOS Contributors
2-
#
3-
# Licensed under the Apache License, Version 2.0 (the "License");
4-
# you may not use this file except in compliance with the License.
5-
# You may obtain a copy of the License at
6-
#
7-
# http://www.apache.org/licenses/LICENSE-2.0
8-
#
9-
# Unless required by applicable law or agreed to in writing, software
10-
# distributed under the License is distributed on an "AS IS" BASIS,
11-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12-
# See the License for the specific language governing permissions and
13-
# limitations under the License.
14-
15-
# Hygon BW1000 hardware configuration. Training cases are selected in
16-
# tests/test_utils/config/platforms/hygon.yaml.
17-
hardware_name: hygon
18-
display_name: "Hygon BW1000 Tests"
19-
20-
# The runner and registry share the same host, avoiding a 32 GB remote push.
21-
ci_image: harbor.baai.ac.cn/flagos-dev/flagscale:8b5c7f1-hygon-dev
22-
ci_train_image: harbor.baai.ac.cn/flagos-dev/flagscale:8b5c7f1-hygon-dev
23-
ci_inference_image: harbor.baai.ac.cn/flagos-dev/flagscale:8b5c7f1-hygon-dev
24-
25-
runner_labels: ["flagscale-hygon-bw1000-gpu8"]
26-
27-
# Image construction is consumed by build_image_common.yml. FlagCX must be
28-
# finalized on a BW1000 host because its native extension probes DTK devices.
29-
build:
30-
tasks:
31-
train:
32-
dockerfile: docker/hygon/Dockerfile.train
33-
image: harbor.baai.ac.cn/flagos-dev/flagscale:8b5c7f1-hygon-dev
34-
target: dev
35-
buildkit: false
36-
finalize_options: >-
37-
--device=/dev/kfd
38-
--device=/dev/dri
39-
--group-add video
40-
--ipc=host
41-
--volume /opt/hyhal:/opt/hyhal:ro
42-
--cap-add SYS_PTRACE
43-
--security-opt seccomp=unconfined
44-
finalize_command: /usr/local/bin/flagscale-hygon-finalize-flagcx
45-
verify_command: >-
46-
python -c 'import torch; import flag_gems; import transformer_engine;
47-
import flagcx; from flagcx import _C;
48-
assert torch.cuda.device_count() == 8;
49-
print("Hygon training stack: OK")'
50-
51-
container_volumes:
52-
- /opt/hyhal:/opt/hyhal:ro
53-
- /public-flash/lihongyang/data:/home/gitlab-runner/data:ro
54-
- /public-flash/lihongyang/qwentokenizer:/home/gitlab-runner/tokenizers/qwentokenizer:ro
55-
56-
# DTK exposes BW1000 devices through the KFD/DRI compatibility interfaces.
57-
# The BW1000 runner network intermittently resets GitHub HTTP/2 transfers, so
58-
# pass Git's documented environment config to force checkout onto HTTP/1.1.
59-
container_options: >-
60-
--device=/dev/kfd
61-
--device=/dev/dri
62-
--group-add video
63-
--ipc=host
64-
--env GIT_CONFIG_COUNT=1
65-
--env GIT_CONFIG_KEY_0=http.version
66-
--env GIT_CONFIG_VALUE_0=HTTP/1.1
67-
--shm-size=64g
68-
--user root
69-
--ulimit nofile=1048576:1048576
70-
--cap-add SYS_PTRACE
71-
--security-opt seccomp=unconfined
72-
73-
pkg_mgr: "pip"
74-
env_path: "/usr/local"
75-
env_names:
76-
train: ""
77-
hetero_train: ""
78-
inference: ""
79-
rl: ""
1+
# Copyright 2026 FlagOS Contributors
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
# Hygon BW1000 hardware configuration. Training cases are selected in
16+
# tests/test_utils/config/platforms/hygon.yaml.
17+
hardware_name: hygon
18+
display_name: "Hygon BW1000 Tests"
19+
20+
# The runner and registry share the same host, avoiding a 32 GB remote push.
21+
ci_image: harbor.baai.ac.cn/flagos-dev/flagscale:8b5c7f1-hygon-dev
22+
ci_train_image: harbor.baai.ac.cn/flagos-dev/flagscale:8b5c7f1-hygon-dev
23+
ci_inference_image: harbor.baai.ac.cn/flagos-dev/flagscale:8b5c7f1-hygon-dev
24+
25+
runner_labels: ["flagscale-hygon-bw1000-gpu8"]
26+
27+
# Image construction is consumed by build_image_common.yml. FlagCX must be
28+
# finalized on a BW1000 host because its native extension probes DTK devices.
29+
build:
30+
tasks:
31+
train:
32+
dockerfile: docker/hygon/Dockerfile.train
33+
image: harbor.baai.ac.cn/flagos-dev/flagscale:8b5c7f1-hygon-dev
34+
target: dev
35+
buildkit: false
36+
finalize_options: >-
37+
--device=/dev/kfd
38+
--device=/dev/dri
39+
--group-add video
40+
--ipc=host
41+
--volume /opt/hyhal:/opt/hyhal:ro
42+
--cap-add SYS_PTRACE
43+
--security-opt seccomp=unconfined
44+
finalize_command: /usr/local/bin/flagscale-hygon-finalize-flagcx
45+
verify_command: >-
46+
python -c 'import torch; import flag_gems; import transformer_engine;
47+
import flagcx; from flagcx import _C;
48+
assert torch.cuda.device_count() == 8;
49+
print("Hygon training stack: OK")'
50+
51+
container_volumes:
52+
- /opt/hyhal:/opt/hyhal:ro
53+
- /public-flash/lihongyang/data:/home/gitlab-runner/data:ro
54+
- /public-flash/lihongyang/qwentokenizer:/home/gitlab-runner/tokenizers/qwentokenizer:ro
55+
56+
# DTK exposes BW1000 devices through the KFD/DRI compatibility interfaces.
57+
# The BW1000 runner network intermittently resets GitHub HTTP/2 transfers, so
58+
# pass Git's documented environment config to force checkout onto HTTP/1.1.
59+
container_options: >-
60+
--device=/dev/kfd
61+
--device=/dev/dri
62+
--group-add video
63+
--ipc=host
64+
--env GIT_CONFIG_COUNT=1
65+
--env GIT_CONFIG_KEY_0=http.version
66+
--env GIT_CONFIG_VALUE_0=HTTP/1.1
67+
--shm-size=64g
68+
--user root
69+
--ulimit nofile=1048576:1048576
70+
--cap-add SYS_PTRACE
71+
--security-opt seccomp=unconfined
72+
73+
pkg_mgr: "pip"
74+
env_path: "/usr/local"
75+
env_names:
76+
train: ""
77+
hetero_train: ""
78+
inference: ""
79+
rl: ""

.github/configs/musa.yml

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
# Copyright 2026 FlagOS Contributors
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
# MThreads MUSA S5000 Hardware Configuration
16+
# This file defines CI/CD settings for MUSA-based testing.
17+
18+
hardware_name: musa
19+
display_name: "MThreads MUSA Tests"
20+
21+
# Latest train/inference/all images validated end-to-end on S5000.
22+
# Keep all tasks on the same FlagScale revision so common tests use a
23+
# consistent software stack without rebuilding images for every PR.
24+
ci_image: harbor.baai.ac.cn/flagscale/flagscale-all:dev-musa-s5000-py3.10-8aa5314e94bc
25+
ci_train_image: harbor.baai.ac.cn/flagscale/flagscale-train:dev-musa-s5000-py3.10-8aa5314e94bc
26+
ci_inference_image: harbor.baai.ac.cn/flagscale/flagscale-inference:dev-musa-s5000-py3.10-8aa5314e94bc
27+
28+
# Runner labels for MThreads MUSA hardware
29+
runner_labels: ["flagscale-mthreads-s5000-gpu8"]
30+
31+
# Container volumes (hardware-specific paths)
32+
container_volumes:
33+
- /mnt/airs-business/cicd/baai_datasets:/home/gitlab-runner/data
34+
- /mnt/airs-business/cicd/baai_tokenizers:/home/gitlab-runner/tokenizers
35+
36+
# Container options for MThreads MUSA runtime
37+
container_options: >-
38+
--hostname=flagscale-ci
39+
--privileged
40+
--ipc=host
41+
--shm-size=100g
42+
--ulimit memlock=-1
43+
--env MTHREADS_VISIBLE_DEVICES=all
44+
--env MTHREADS_DRIVER_CAPABILITIES=all
45+
--user root
46+
--ulimit nofile=65535:65535
47+
48+
# Runtime allowances for models loaded from the shared network volume.
49+
timeouts:
50+
inference_minutes: 45
51+
serve_ready_seconds: 600
52+
53+
# =============================================================================
54+
# Package Manager Configuration
55+
# =============================================================================
56+
pkg_mgr: "pip"
57+
58+
# Environment path (conda installation path)
59+
env_path: ""
60+
61+
# Conda environment names
62+
env_names:
63+
train: ""
64+
hetero_train: ""
65+
inference: ""
66+
serve: ""
67+
rl: ""

0 commit comments

Comments
 (0)