Skip to content

Daily Enumerate Tests (Ascend NPU) #54

Daily Enumerate Tests (Ascend NPU)

Daily Enumerate Tests (Ascend NPU) #54

name: Daily Enumerate Tests (Ascend NPU)
on:
schedule:
- cron: "0 16 * * *"
pull_request:
branches: [ main ]
paths:
- ".github/workflows/daily-build-test.yml"
- "scripts/enumerate_test_*.sh"
workflow_dispatch:
concurrency:
group: daily-enumerate-tests-${{ github.ref }}
cancel-in-progress: true
jobs:
# 将测试任务拆分为独立的job,可以并行运行
daily-enumerate-intranode:
runs-on: linux-aarch64-a3-16
container:
image: swr.cn-southwest-2.myhuaweicloud.com/base_image/ascend-ci/cann:8.3.rc1-a3-ubuntu22.04-py3.11
timeout-minutes: 350 # 5小时50分钟,留出缓冲时间
steps:
- name: Clean git config
run: |
CONFIG_KEY='http.https://gh-proxy.test.osinfra.cn/.extraheader'
git config --global --unset "$CONFIG_KEY" || true
- name: Clean workspace
run: |
sudo rm -rf --one-file-system "$GITHUB_WORKSPACE"/* "$GITHUB_WORKSPACE"/.* 2>/dev/null || true
- name: Checkout code
uses: actions/checkout@v4
with:
clean: true
- name: Install dependencies
run: |
CACHING_URL="cache-service.nginx-pypi-cache.svc.cluster.local"
sed -Ei "s@(ports|archive).ubuntu.com@${CACHING_URL}:8081@g" /etc/apt/sources.list
pip config set global.index-url http://${CACHING_URL}/pypi/simple
pip config set global.trusted-host ${CACHING_URL}
bash scripts/npu_ci_install_dependency.sh
- name: Prepare Deepep
run: bash scripts/prepare_deepep_in_container.sh
- name: Run enumerate test intranode
timeout-minutes: 340 # 5小时 40分钟
env:
HCCL_BUFFSIZE: 4096
TEST_ENV: daily-build
run: |
echo "Starting daily enumerate intranode test at $(date)"
chmod +x scripts/enumerate_test_intranode.sh
bash scripts/enumerate_test_intranode.sh
echo "Completed daily enumerate intranode test at $(date)"
- name: Upload intranode artifacts
if: always()
uses: actions/upload-artifact@v4
with:
name: intranode-results-${{ github.sha }}-${{ github.run_id }}
path: |
test-results/
logs/
retention-days: 30
daily-enumerate-low-latency:
runs-on: linux-aarch64-a3-16
container:
image: swr.cn-southwest-2.myhuaweicloud.com/base_image/ascend-ci/cann:8.3.rc1-a3-ubuntu22.04-py3.11
timeout-minutes: 330 # 5.5小时
steps:
- name: Clean workspace and checkout
run: |
sudo rm -rf --one-file-system "$GITHUB_WORKSPACE"/* "$GITHUB_WORKSPACE"/.* 2>/dev/null || true
- uses: actions/checkout@v4
with:
clean: true
- name: Install dependencies
run: |
CACHING_URL="cache-service.nginx-pypi-cache.svc.cluster.local"
sed -Ei "s@(ports|archive).ubuntu.com@${CACHING_URL}:8081@g" /etc/apt/sources.list
pip config set global.index-url http://${CACHING_URL}/pypi/simple
pip config set global.trusted-host ${CACHING_URL}
bash scripts/npu_ci_install_dependency.sh
- name: Prepare Deepep
run: bash scripts/prepare_deepep_in_container.sh
- name: Run enumerate test low latency
timeout-minutes: 300 # 5小时
env:
HCCL_BUFFSIZE: 4096
TEST_ENV: daily-build
run: |
echo "Starting daily enumerate low latency test at $(date)"
chmod +x scripts/enumerate_test_low_latency.sh
bash scripts/enumerate_test_low_latency.sh
echo "Completed daily enumerate low latency test at $(date)"
- name: Upload low latency artifacts
if: always()
uses: actions/upload-artifact@v4
with:
name: low-latency-results-${{ github.sha }}-${{ github.run_id }}
path: |
test-results/
logs/
retention-days: 30
finish:
if: always()
needs: [daily-enumerate-intranode, daily-enumerate-low-latency]
runs-on: ubuntu-latest
steps:
- name: Generate comprehensive test report
run: |
echo "## Daily Enumerate Tests Report" >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
echo "**Execution Time**: $(date)" >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
echo "### Job Status:" >> $GITHUB_STEP_SUMMARY
echo "- **Intranode Test Part One**: ${{ needs.daily-enumerate-intranode_part_one.result }}" >> $GITHUB_STEP_SUMMARY
echo "- **Intranode Test Part Two**: ${{ needs.daily-enumerate-intranode_part_two.result }}" >> $GITHUB_STEP_SUMMARY
echo "- **Low Latency Test**: ${{ needs.daily-enumerate-low-latency.result }}" >> $GITHUB_STEP_SUMMARY
echo "- **Smoke Test**: ${{ needs.daily-smoke-test.result }}" >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
echo "**Workflow Run**: [$GITHUB_RUN_ID](https://github.com/$GITHUB_REPOSITORY/actions/runs/$GITHUB_RUN_ID)" >> $GITHUB_STEP_SUMMARY