Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build ARM CUDA #8631

Open
johnnynunez opened this issue Feb 2, 2025 · 0 comments
Open

Build ARM CUDA #8631

johnnynunez opened this issue Feb 2, 2025 · 0 comments

Comments

@johnnynunez
Copy link

johnnynunez commented Feb 2, 2025

Describe the bug
ARM CUDA build.

To Reproduce
uses clang natively because not exists url for aarch64

Log/Screenshots

[479/656] cd /opt/taichi/taichi/runtime/llvm/runtime_module && /usr/bin/clang -c runtime.cpp -o runtime_arm64.bc -fno-exceptions -emit-llvm -std=c++17 -D ARCH_arm64 -I /opt/taichi
[480/656] cd /opt/taichi/taichi/runtime/llvm/runtime_module && /usr/bin/clang -c runtime.cpp -o runtime_cuda.bc -fno-exceptions -emit-llvm -std=c++17 -D ARCH_cuda -I /opt/taichi
FAILED: taichi/runtime/llvm/runtime_module/CMakeFiles/generate_llvm_runtime_cuda /opt/taichi/_skbuild/linux-aarch64-3.10/cmake-build/taichi/runtime/llvm/runtime_module/CMakeFiles/generate_llvm_runtime_cuda 
cd /opt/taichi/taichi/runtime/llvm/runtime_module && /usr/bin/clang -c runtime.cpp -o runtime_cuda.bc -fno-exceptions -emit-llvm -std=c++17 -D ARCH_cuda -I /opt/taichi
runtime.cpp:1137:23: warning: value size does not match register size specified by the constraint and modifier [-Wasm-operand-widths]
               : "=r"(ret)
                      ^
runtime.cpp:1136:37: note: use constraint modifier "w"
  asm volatile("match.all.sync.b32  %0, %1, %2;"
                                    ^~
                                    %w0
runtime.cpp:1138:22: warning: value size does not match register size specified by the constraint and modifier [-Wasm-operand-widths]
               : "r"(value), "r"(mask));
                     ^
runtime.cpp:1136:41: note: use constraint modifier "w"
  asm volatile("match.all.sync.b32  %0, %1, %2;"
                                        ^~
                                        %w1
runtime.cpp:1138:34: warning: value size does not match register size specified by the constraint and modifier [-Wasm-operand-widths]
               : "r"(value), "r"(mask));
                                 ^
runtime.cpp:1136:45: note: use constraint modifier "w"
  asm volatile("match.all.sync.b32  %0, %1, %2;"
                                            ^~
                                            %w2
runtime.cpp:1150:18: error: invalid input constraint 'l' in asm
               : "l"(value), "r"(mask));
                 ^
runtime.cpp:1160:44: warning: value size does not match register size specified by the constraint and modifier [-Wasm-operand-widths]
  asm volatile("activemask.b32 %0;" : "=r"(mask));
                                           ^
runtime.cpp:1160:32: note: use constraint modifier "w"
  asm volatile("activemask.b32 %0;" : "=r"(mask));
                               ^~
                               %w0
4 warnings and 1 error generated.
[481/656] Building CXX object taichi/ui/ggui/CMakeFiles/taichi_ui_ggui.dir/renderable.cpp.o
[482/656] Building CXX object taichi/ui/ggui/CMakeFiles/taichi_ui_ggui.dir/renderer.cpp.o
[483/656] Building CXX object taichi/ui/ggui/CMakeFiles/taichi_ui_ggui.dir/renderables/circles.cpp.o
[484/656] Building CXX object external/SPIRV-Cross/CMakeFiles/spirv-cross-msl.dir/spirv_msl.cpp.o
[485/656] Building CXX object taichi/ui/ggui/CMakeFiles/taichi_ui_ggui.dir/renderables/lines.cpp.o
[486/656] Building CXX object taichi/ui/ggui/CMakeFiles/taichi_ui_ggui.dir/renderables/mesh.cpp.o
[487/656] Building CXX object taichi/ui/ggui/CMakeFiles/taichi_ui_ggui.dir/renderables/particles.cpp.o
[488/656] Building CXX object taichi/ui/ggui/CMakeFiles/taichi_ui_ggui.dir/renderables/scene_lines.cpp.o
[489/656] Building CXX object taichi/ui/ggui/CMakeFiles/taichi_ui_ggui.dir/renderables/set_image.cpp.o
[490/656] Building CXX object taichi/ui/ggui/CMakeFiles/taichi_ui_ggui.dir/renderables/triangles.cpp.o
[491/656] Building CXX object taichi/ui/ggui/CMakeFiles/taichi_ui_ggui.dir/window.cpp.o
ninja: build stopped: subcommand failed.
Traceback (most recent call last):
  File "/root/.cache/ti-build-cache/miniforge/envs/3.10/lib/python3.10/site-packages/skbuild/setuptools_wrap.py", line 668, in setup
    cmkr.make(make_args, install_target=cmake_install_target, env=env)
  File "/root/.cache/ti-build-cache/miniforge/envs/3.10/lib/python3.10/site-packages/skbuild/cmaker.py", line 696, in make
    self.make_impl(clargs=clargs, config=config, source_dir=source_dir, install_target=install_target, env=env)
  File "/root/.cache/ti-build-cache/miniforge/envs/3.10/lib/python3.10/site-packages/skbuild/cmaker.py", line 741, in make_impl
    raise SKBuildError(msg)

An error occurred while building with CMake.
  Command:
    /root/.cache/ti-build-cache/miniforge/envs/3.10/lib/python3.10/site-packages/cmake/data/bin/cmake --build . --target install --config Release -- -j12
  Install target:
    install
  Source directory:
    /opt/taichi
  Working directory:
    /opt/taichi/_skbuild/linux-aarch64-3.10/cmake-build
Please check the install target is valid and see CMake's output for more information.

!! -----EXCEPTION Build Taichi Wheel-----
Traceback (most recent call last):
  File "/opt/taichi/./build.py", line 11, in <module>
    sys.exit(ti_build.entry.main())
  File "/opt/taichi/.github/workflows/scripts/ti_build/entry.py", line 196, in main
    dispatch.get(options.action, action_notimpl)()
  File "/opt/taichi/.github/workflows/scripts/ti_build/entry.py", line 106, in action_wheel
    build_wheel(python, pip)
  File "/opt/taichi/.github/workflows/scripts/ti_build/misc.py", line 67, in wrapper
    ret = f(*args, **kwargs)
  File "/opt/taichi/.github/workflows/scripts/ti_build/entry.py", line 70, in build_wheel
    python("setup.py", *proj_tags, "bdist_wheel", *extra)
  File "/opt/taichi/.github/workflows/scripts/ti_build/tinysh.py", line 160, in __call__
    raise CommandFailed(cmd, code)
ti_build.tinysh.CommandFailed: Command nice /root/.cache/ti-build-cache/miniforge/envs/3.10/bin/python setup.py bdist_wheel -p manylinux_2_28_aarch64 failed with code 1
The command '/bin/sh -c /tmp/TAICHI/install.sh || /tmp/TAICHI/build.sh' returned a non-zero code: 1
Traceback (most recent call last):
  File "/usr/lib/python3.10/runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/usr/lib/python3.10/runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "/home/johnny/Projects/jetson-containers/jetson_containers/build.py", line 112, in <module>
    build_container(args.name, args.packages, args.base, args.build_flags, args.build_args, args.simulate, args.skip_tests, args.test_only, args.push, args.no_github_api, args.skip_packages)
  File "/home/johnny/Projects/jetson-containers/jetson_containers/container.py", line 147, in build_container
    status = subprocess.run(cmd.replace(_NEWLINE_, ' '), executable='/bin/bash', shell=True, check=True)  
  File "/usr/lib/python3.10/subprocess.py", line 526, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command 'DOCKER_BUILDKIT=0 docker build --network=host --tag genesis:r36.4.3-cu126-cp310-taichi --file /home/johnny/Projects/jetson-containers/packages/robots/genesis/taichi/Dockerfile --build-arg BASE_IMAGE=genesis:r36.4.3-cu126-cp310-ninja --build-arg CUDAARCHS="87" --build-arg TAICHI_VERSION="1.7.4" /home/johnny/Projects/jetson-containers/packages/robots/genesis/taichi 2>&1 | tee /home/johnny/Projects/jetson-containers/logs/20250202_190455/build/genesis_r36.4.3-cu126-cp310-taichi.txt; exit ${PIPESTATUS[0]}' returned non-zero exit status 1.

Image

Additional comments
#8629

vulkan sdk arm from my builds it is working...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Untriaged
Development

No branches or pull requests

1 participant