January 14, 2026 3:54 PM (GMT+8)

开发板默认账号密码:

root

Mind@123

开发板信息速查:

Key Value Memo
账号 root
密码 Mind@123
NPU 型号 Ascend310B1 20TOPs@INT8, 12G内存
查询基本信息 $ npu-smi info
CANN算子清单 https://www.hiascend.com/document/detail/zh/canncommercial/80RC22/apiref/operatorlist/operatorlist_0001.html

官方文档

  1. Atlas 200I DK A2开发者套件使用指南:https://www.hiascend.com/document/detail/zh/Atlas200IDKA2DeveloperKit/23.0.RC2/index/index.html
  2. 昇腾开源:https://ascend.github.io/docs/ (包含 onnxruntime,torch-npu,open-clip,transformers 等示例)

准备工作

  1. 在Ubuntu或者Windows环境下烧写SD卡,macOS下烧写的SD卡进不了系统

  2. 进入系统后,从官网下载更新 driver 和 cann-toolkit,镜像自带的有问题

    1. 官网地址:https://www.hiascend.com/developer/download/community/result?module=cann&sdk=7.2.RC1&cann=8.3.RC1
    2. Ascend-hdk-310b-npu-driver-soc_23.0.0_linux-aarch64.run
    3. Ascend-cann-toolkit_8.3.RC1_linux-aarch64.run
  3. 查看 npu 驱动是否正常

    sudo npu-smi info
    
  4. 如果不是系统默认用户,加组

    sudo usermod -aG HwHiAiUser dev
    sudo usermod -aG HwBaseUser dev
    
  5. 加权

    sudo chmod -R a+rX /usr/local/Ascend/ascend-toolkit
    

模型推理

如果想通过 onnxruntime 来推理,跟随如下步骤:

  1. 安装 onnxruntime-cann 或通过 onnxruntime 源码编译

  2. 运行 source /usr/local/Ascend/ascend-toolkit/set_env.sh 以确保 atc 正常工作

  3. 尝试通过 atc 转换 onnx 模型,atc 是昇腾的模型转换工具,会将 .onnx 模型转换成 .om 模型(昇腾自家的格式)该步骤将的报错更清晰,直接运行 onnxruntime 推理缺少必要的报错信息,atc 示例代码如下:

    1. 转换静态输入模型

      atc --model="path_to_your_onnx_model" \
          --framework=5 \
          --output=model_om \
          --soc_version=Ascend310B1 \
          --check_report=atc_output
      
    2. 转换动态输入模型:添加 input_shape 选项:"input_name:n,c,h,w" 其中 input_name 为 node name,batch size 设置为 -1;dynamic_batch_size 建议设置为 "4,8,16",具体要视显存和

      atc --model="path_to_your_onnx_model" \
          --framework=5 \
          --output=model_om \
          --input_shape="input_image:-1,3,960,1280" \
          --dynamic_batch_size="1,2,4,8" \
          --soc_version=Ascend310B1 \
          --check_report=atc_output
      
  4. 如果计划使用静态输入的 onnx 模型推理,导出 onnx 模型时将 batch设置为1,其他设置如下:

    opset_version=13,
    do_constant_folding=True,
    dynamic_axes=None, # 静态输入