已关闭
[Usage]: 社区版CANN+A2是否支持inductor-npu-ext? #461
ZhongsJie创建于  4月28日关闭于  5月7日
ZhongsJie
4月28日 创建

在提交问题之前,请通过搜索现有和历史问题确保该问题尚未被提出并解决。

您的环境信息

-- CANN 版本 (e.g., 5.x.x, 8.x.x):  
-- Pytorch/Torch_npu 版本 (e.g., v2.6.0, v2.9.0):
-- Python 版本 (e.g., Python3.9.x, Python3.11.x):
-- 操作系统版本 (e.g., Ubuntu 18.04, EulerOs 2.0):

您希望如何在昇腾(Ascend)上使用 TorchAir?

inductor-npu-ext 当前明确依赖 CANN 主线版本,请问社区版CANN + A2当前可以使用该特性吗?

感谢您的贡献 🎉!

likedislike
ascend-robotascend-robot成员
4月28日 添加了label:usage
yurongkun
yurongkun成员
4月28日 评论:

https://gitcode.com/Ascend/torchair/blob/master/experimental/_inductor_npu_ext/README.md
请参考说明,当前需要最新的CANN版本包+torch大于等于2.8,910B1是可以使用的

likedislike
yurongkunyurongkun成员
4月28日 将 yurongkun 设为负责人
ZhongsJie
4月28日 评论:

https://gitcode.com/Ascend/torchair/blob/master/experimental/_inductor_npu_ext/README.md
请参考说明,当前需要最新的CANN版本包+torch大于等于2.8,910B1是可以使用的

@yurongkun
感谢支持,我这边按照参考文档操作。

当前环境下为社区版CANN 8.5.1,torch 2.9.0。
运行Demo后报错信息如下:

/usr/local/python3.11.14/bin/python /data/zsj/ascend/torch_compile/.npu_kernels_root/autofused_add_sum_31aba041b5d992c026cdfc574b77ec24/49fe1407594d4210d3eae97efe29053b/asc_kernel.py
usage: asc_kernel.py [-h] [--graph_name GRAPH_NAME] --output_file OUTPUT_FILE [--output_path OUTPUT_PATH] [--force_unknown FORCE_UNKNOWN] [--config_file CONFIG_FILE]
asc_kernel.py: error: unrecognized arguments: --soc_version=Ascend910B3

修改python文件去除--soc_version=Ascend910B3参数后遇到如下报错:

/tmp/tmpjf6vj9ap/build/host/autofused_add_sum_31aba041b5d992c026cdfc574b77ec24_tiling_func.cpp:60:10: fatal error: dlog_pub.h: No such file or directory
   60 | #include "dlog_pub.h"
      |          ^~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/kernel.dir/build.make:79: CMakeFiles/kernel.dir/host/autofused_add_sum_31aba041b5d992c026cdfc574b77ec24_tiling_func.cpp.o] Error 1
make[2]: Leaving directory '/tmp/tmpjf6vj9ap/build'
make[1]: *** [CMakeFiles/Makefile2:405: CMakeFiles/kernel.dir/all] Error 2
make[1]: Leaving directory '/tmp/tmpjf6vj9ap/build'
make: *** [Makefile:136: all] Error 2
make: Leaving directory '/tmp/tmpjf6vj9ap/build'
Traceback (most recent call last):
  File "/data/zsj/ascend/torch_compile/.npu_kernels_root/autofused_add_sum_31aba041b5d992c026cdfc574b77ec24/49fe1407594d4210d3eae97efe29053b/asc_kernel.py", line 5178, in <module>
    jit_compile(tiling_def, host_impl, device_impl, ['--output_file=/data/zsj/ascend/torch_compile/.npu_kernels_root/autofused_add_sum_31aba041b5d992c026cdfc574b77ec24/49fe1407594d4210d3eae97efe29053b/kernel.so', '--graph_name=autofused_add_sum_31aba041b5d992c026cdfc574b77ec24', '--force_unknown=False', '--config_file=None'])
  File "/usr/local/Ascend/cann-8.5.1/python/site-packages/autofuse/compile_adapter.py", line 127, in jit_compile
    compile_inner(tiling_def, host_tiling, op_kernel, temp_dir, argv)
  File "/usr/local/Ascend/cann-8.5.1/python/site-packages/autofuse/compile_adapter.py", line 114, in compile_inner
    ascendc_compile.main(argv, temp_dir)
  File "/usr/local/Ascend/cann-8.5.1/python/site-packages/autofuse/ascendc_compile.py", line 273, in main
    static_shape_compile(args, temp_dir, src_file)
  File "/usr/local/Ascend/cann-8.5.1/python/site-packages/autofuse/ascendc_compile.py", line 205, in static_shape_compile
    lib = ctypes.CDLL(so_path)
          ^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/python3.11.14/lib/python3.11/ctypes/__init__.py", line 376, in __init__
    self._handle = _dlopen(self._name, mode)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^
OSError: /tmp/tmpjf6vj9ap/build/kernel.so: cannot open shared object file: No such file or directory

我应当如何解决该问题?

其次,文档中明确要求

安装CANN主线版本
inductor-npu-ext 依赖 CANN 主线版本。如果您是外部用户,可以联系对应的支撑团队获取安装包。

该主线版本的是否有具体要求(商业版/社区版 x.x.x)?

likedislike
yurongkun
yurongkun成员
4月28日 评论:

https://www.hiascend.com/cann/download
建议下载最新的9.0.0-beta.2CANN版本
CANN:8.5.1不是最新版本。建议升级完最新CANN包后重新运行确认下是否还存在该报错。

likedislike
ZhongsJie
4月29日 评论:

https://www.hiascend.com/cann/download
建议下载最新的9.0.0-beta.2CANN版本
CANN:8.5.1不是最新版本。建议升级完最新CANN包后重新运行确认下是否还存在该报错。

@yurongkun

升级完最新CANN包后可以正常运行Demo。在实际使用场景下出现如下报错:

[HcclWrapper] Failed to open libhcomm: /usr/local/Ascend/cann-9.0.0-beta.2/devlib/aarch64/libopp_registry.so: undefined symbol: _ZN2ge12AscendStringC1EPKc
[ERROR]: stub library cannot be used for execution, please check your environment variables and compilation options to make sure you use the correct ACL library.
Traceback (most recent call last):
  File "/usr/local/python3.11.15/lib/python3.11/site-packages/torch/__init__.py", line 2833, in _import_device_backends
    entrypoint = backend_extension.load()
                 ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/python3.11.15/lib/python3.11/importlib/metadata/__init__.py", line 202, in load
    module = import_module(match.group('module'))
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/python3.11.15/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/usr/local/python3.11.15/lib/python3.11/site-packages/torch_npu/__init__.py", line 211, in <module>
    _apply_class_patches()
  File "/usr/local/python3.11.15/lib/python3.11/site-packages/torch_npu/__init__.py", line 176, in _apply_class_patches
    add_perf_dump_patch()
  File "/usr/local/python3.11.15/lib/python3.11/site-packages/torch_npu/utils/_step.py", line 273, in add_perf_dump_patch
    if torch_npu._C._get_silent_check_version() == 1:
       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
RuntimeError: /usr/local/Ascend/cann-9.0.0-beta.2/devlib/aarch64/libmetadef.so: undefined symbol: _ZN2ge12AscendStringC1EPKc

请问下,您这边是否清楚该问题,是否与驱动版本存在关系?

likedislike
yurongkun
yurongkun成员
4月29日 评论:

可以在CANN社区下提ISSUE确认报错原因,https://www.hiascend.com/forum/forum-0106101385921175004-1.html

likedislike
SunYapingSunYaping成员
5月7日 issue状态由 TODO 改变为 DONE
SunYapingSunYaping成员
5月7日 关闭了 issue
SunYaping
SunYaping成员
5月7日 评论:

亲爱的开发者,你好:
欢迎添加小助手的联系方式 加入TorchAir技术交流群,和技术团队小伙实时伴探讨~

likedislike