文件最后提交记录最后更新时间
fix: fix ptv3 bug Co-authored-by: zhttjd<zhanghongtao33@huawei.com> # message auto-generated for no-merge-commit merge: !1944 merge master into master fix: fix ptv3 bug Created-by: zhttjd Commit-by: zhttjd Merged-by: ascend-robot Description: ## What this PR does / why we need it? Please describe the background and detailed changes of the PR. If it is a bugfix, please attach the related issue. fixed triton version fixed missing spconv migration ## Does this PR introduce any user-facing change? Please describe whether the PR will result in any user-facing usage changes. If there is related documentation, please specify its path. ## How was this patch tested? Please explain how to verify the correctness and effectiveness of this feature, as well as its usage constraints and limitations. See merge request: Ascend/DrivingSDK!19442 个月前
add triton-ascend version compatibility note in FAQ Co-authored-by: gitdzy<dingziyuan@huawei.com> # message auto-generated for no-merge-commit merge: !2046 merge docs/triton_ascend_version_compatibility into master add triton-ascend version compatibility note in FAQ Created-by: gitdzy Commit-by: gitdzy Merged-by: ascend-robot Description: ## What this PR does / why we need it? docs:Add FAQ section in PointTransformerV3 README to clarify triton-ascend version compatibility with different CANN versions. According to triton-ascend official documentation, CANN 9.0 and above requires triton-ascend 3.2.1 or higher, while earlier CANN versions use 3.2.0. ## Does this PR introduce any user-facing change? Documentation update only in model_examples/PointTransformerV3/README.md. Users will be informed about the correct triton-ascend version for their CANN version. ## How was this patch tested? Documentation change only, no testing required. See merge request: Ascend/DrivingSDK!20468 天前
fix:fix code/documentation formatting issues using pre-commit Co-authored-by: xiaohuizhu1037<zhuxiaohui13@huawei.com> # message auto-generated for no-merge-commit merge: !2043 merge master into master fix:fix code/documentation formatting issues using pre-commit Created-by: xiaohuizhu1037 Commit-by: xiaohuizhu1037 Merged-by: ascend-robot Description: ## What this PR does / why we need it? 使用pre-commit扫描仓库的全量代码/文档并进行格式修复。 ## Does this PR introduce any user-facing change? 会对代码/文档做格式修改。 ## How was this patch tested? 工具自动修复和人工审视。 See merge request: Ascend/DrivingSDK!20438 天前
fix:fix code/documentation formatting issues using pre-commit Co-authored-by: xiaohuizhu1037<zhuxiaohui13@huawei.com> # message auto-generated for no-merge-commit merge: !2043 merge master into master fix:fix code/documentation formatting issues using pre-commit Created-by: xiaohuizhu1037 Commit-by: xiaohuizhu1037 Merged-by: ascend-robot Description: ## What this PR does / why we need it? 使用pre-commit扫描仓库的全量代码/文档并进行格式修复。 ## Does this PR introduce any user-facing change? 会对代码/文档做格式修改。 ## How was this patch tested? 工具自动修复和人工审视。 See merge request: Ascend/DrivingSDK!20438 天前
README.md

PointTransformerV3 for PyTorch

目录

简介

模型介绍

PointTransformerV3专注于在点云处理的背景下克服现有的准确性和效率之间的权衡,将简单性和效率置于某些机制的准确性之上,用以特定模式组织的点云的高效串行neighbor mapping来取代KNN的精确neighbor搜索。 这一原理实现了显著的缩放,将感受野从16个点扩展到1024个点,同时保持高效,在跨越室内和室外场景的20多项下游任务中取得了最先进的成果。

支持任务列表

本仓已经支持以下模型任务类型

模型 任务列表 是否支持
PointTransformerV3 训练

代码实现

  • 参考实现:
url=https://github.com/Pointcept/Pointcept
commit_id=e4de3c25f57d0625cdcb66589cf180e838a05b19
  • 适配昇腾 AI 处理器的实现:
url=https://gitcode.com/Ascend/DrivingSDK.git
code_path=model_examples/PointTransformerV3

PointTransformerV3

准备训练环境

安装昇腾环境

请参考昇腾社区中《Pytorch框架训练环境准备》文档搭建昇腾环境,本仓已支持表1中软件版本。

表 1 昇腾软件版本支持表

软件类型 首次支持版本
FrameworkPTAdapter 7.3.0
CANN 8.5.0

安装模型环境

表 2 三方库版本支持表

三方库 支持版本
Python 3.10
PyTorch 2.6.0
  1. 激活 CANN 环境(例如:source /usr/local/Ascend/ascend-toolkit/set_env.sh

  2. 参考《Pytorch框架训练环境准备》安装 2.1.0 版本的 PyTorch 框架和 torch_npu 插件。

  3. 设置 PointTransformerV3 并安装相关依赖

    git clone https://github.com/Pointcept/Pointcept.git
    cp Ptv3.patch Pointcept
    cp train_8p.sh Pointcept
    cp requirements.txt Pointcept
    cd Pointcept
    git checkout e4de3c25f57d0625cdcb66589cf180e838a05b19
    git apply --reject Ptv3.patch
    pip install -r requirements.txt
    
  4. 使用tcmalloc

    详情参考DrivingSDK/docs/zh/migration_tuning/model_optimization.md里的高性能内存库替换章节

准备数据集

  1. 用户需自行下载 nuScenes 数据集(包含lidarseg文件)

  2. 数据预处理, 得到info文件夹

    # NUSCENES_DIR: the directory of downloaded nuScenes dataset.
    # PROCESSED_NUSCENES_DIR: the directory of processed nuScenes dataset (output dir).
    # MAX_SWEEPS: Max number of sweeps. Default: 10.
    pip install nuscenes-devkit pyquaternion
    python pointcept/datasets/preprocessing/nuscenes/preprocess_nuscenes_info.py --dataset_root ${NUSCENES_DIR} --output_root ${PROCESSED_NUSCENES_DIR} --max_sweeps 10 --with_camera
    
  3. 将数据集和预处理结果放置到模型目录下,info为数据预处理结果目录,文件结构排布如下:

    data
    |──nuscenes
    |    |──── raw
    |    |    │── samples
    |    |    │── sweeps
    |    |    │── lidarseg
    |    |    ...
    |    |    │── v1.0-trainval
    |    |    │── v1.0-test
    |    |──── info
    

快速开始

训练任务

本任务主要提供单机8卡训练脚本。

开始训练

  • 在模型根目录下,运行训练脚本。

    cd model_examples/PointTransformerV3/Pointcept
    bash train_8p.sh
    

训练结果

芯片 卡数 Global Batchsize epoch mIou FPS 单步迭代耗时(ms)
竞品A 8p 8 50 0.7438 35.56 225
Atlas 800T A2 8p 8 50 0.7451 20.61 388

变更说明

2025.05.14:首次发布

2025.12.12: 更新依赖版本。新增hostbound相关的优化、hilbert sfc算子优化、替换NpuFusedAdam融合算子优化,修复sort类算子走aicpu、和部分算子输入数据类型与精度相关的影响性能的bug。

FAQ

Q: triton-ascend版本兼容性说明

A: requirements.txt中指定的triton-ascend版本为3.2.0。根据triton-ascend官方说明,CANN版本与triton-ascend版本对应关系如下:

  • CANN < 9.0:使用triton-ascend 3.2.0
  • CANN >= 9.0:使用triton-ascend >= 3.2.1