8000 xN-transpose-test fails when cross-compiling XNNPACK for riscv64 on x86 platform · Issue #8052 · google/XNNPACK · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
xN-transpose-test fails when cross-compiling XNNPACK for riscv64 on x86 platform #8052
Open
@xiebinbb

Description

@xiebinbb

Issue Description

Hi, I encountered a test failure when cross-compiling XNNPACK for RISC-V (riscv64) architecture on an x86 platform. Specifically, the "xN-transpose-test" fails when running the test suite, while all other tests pass successfully.

Environment Information

  • Host Platform: x86 (Ubuntu)
root@VM-0-12-ubuntu:~/XNNPACK/build/linux/riscv64# uname -a
Linux VM-0-12-ubuntu 6.8.0-51-generic #52-Ubuntu SMP PREEMPT_DYNAMIC Thu Dec  5 13:09:44 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
root@VM-0-12-ubuntu:~/XNNPACK/build/linux/riscv64# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 24.04 LTS
Release:        24.04
Codename:       noble
root@VM-0-12-ubuntu:~/XNNPACK/build/linux/riscv64# 
  • Target Architecture: riscv64
  • XNNPACK Version:
git clone https://github.com/google/XNNPACK.git
  • Cross-compilation Toolchain
wget https://mirror.nju.edu.cn/riscv-toolchains/release/riscv-collab/riscv-gnu-toolchain/LatestRelease/riscv64-glibc-ubuntu-24.04-llvm-nightly-2025.01.20-nightly.tar.xz

Steps to Reproduce

  1. set toolchain path
root@VM-0-12-ubuntu:~/XNNPACK# git diff cmake/riscv64.toolchain
diff --git a/cmake/riscv64.toolchain b/cmake/riscv64.toolchain
index 664f86724..3564a8ae4 100644
--- a/cmake/riscv64.toolchain
+++ b/cmake/riscv64.toolchain
@@ -11,6 +11,9 @@ IF(NOT VLEN MATCHES "^(32|64|128|256|512|1024|2048|4096|8192|16384|32768|65536)$
   MESSAGE(FATAL_ERROR "User specified VLEN=${VLEN} is invalid.")
 ENDIF()
 
+# 设置RISCV_TOOLCHAIN_ROOT的目录, 按照实际修改
+SET(RISCV_TOOLCHAIN_ROOT "/root/riscv" CACHE PATH "RISC-V工具链根目录")
+
 IF(NOT RISCV_TOOLCHAIN_ROOT)
   SET(CMAKE_C_COMPILER "riscv64-linux-gnu-gcc")
   SET(CMAKE_ASM_COMPILER "riscv64-linux-gnu-gcc")
root@VM-0-12-ubuntu:~/XNNPACK# cd /root/riscv
root@VM-0-12-ubuntu:~/riscv# ls
bin  etc  include  lib  libexec  riscv64-unknown-linux-gnu  share  sysroot
root@VM-0-12-ubuntu:~/riscv# cd bin/
root@VM-0-12-ubuntu:~/riscv/bin# ls
amdgpu-arch             diagtool          llvm-objdump                         riscv64-unknown-linux-gnu-elfedit          riscv64-unknown-linux-gnu-gprofng
analyze-build           git-clang-format  llvm-pdbutil                         riscv64-unknown-linux-gnu-g++              riscv64-unknown-linux-gnu-ld
clang                   hmaptool          llvm-profdata                        riscv64-unknown-linux-gnu-gcc              riscv64-unknown-linux-gnu-ld.bfd
clang++                 intercept-build   llvm-ranlib                          riscv64-unknown-linux-gnu-gcc-14.2.0       riscv64-unknown-linux-gnu-lto-dump
clang-19                ld64.lld          llvm-rc                              riscv64-unknown-linux-gnu-gcc-ar           riscv64-unknown-linux-gnu-nm
clang-check             ld.lld            llvm-readobj                         riscv64-unknown-linux-gnu-gcc-nm           riscv64-unknown-linux-gnu-objcopy
clang-cl                lld               llvm-size                            riscv64-unknown-linux-gnu-gcc-ranlib       riscv64-unknown-linux-gnu-objdump
clang-cpp               lld-link          llvm-strings                         riscv64-unknown-linux-gnu-gcov             riscv64-unknown-linux-gnu-ranlib
clang-extdef-mapping    llvm-ar           llvm-strip                           riscv64-unknown-linux-gnu-gcov-dump        riscv64-unknown-linux-gnu-readelf
clang-format            llvm-cov          llvm-symbolizer                      riscv64-unknown-linux-gnu-gcov-tool        riscv64-unknown-linux-gnu-run
clang-installapi        llvm-cxxfilt      nvptx-arch                           riscv64-unknown-linux-gnu-gdb              riscv64-unknown-linux-gnu-size
clang-linker-wrapper    llvm-dlltool      riscv64-unknown-linux-gnu-addr2line  riscv64-unknown-linux-gnu-gdb-add-index    riscv64-unknown-linux-gnu-strings
clang-nvlink-wrapper    llvm-dwp          riscv64-unknown-linux-gnu-ar         riscv64-unknown-linux-gnu-gfortran         riscv64-unknown-linux-gnu-strip
clang-offload-bundler   llvm-lib          riscv64-unknown-linux-gnu-as         riscv64-unknown-linux-gnu-gp-archive       scan-build
clang-offload-packager  llvm-mca          riscv64-unknown-linux-gnu-c++        riscv64-unknown-linux-gnu-gp-collect-app   scan-build-py
clang-refactor          llvm-ml           riscv64-unknown-linux-gnu-c++filt    riscv64-unknown-linux-gnu-gp-display-html  scan-view
clang-rename            llvm-mt           riscv64-unknown-linux-gnu-clang      riscv64-unknown-linux-gnu-gp-display-src   wasm-ld
clang-repl              llvm-nm           riscv64-unknown-linux-gnu-clang++    riscv64-unknown-linux-gnu-gp-display-text
clang-scan-deps         llvm-objcopy      riscv64-unknown-linux-gnu-cpp        riscv64-unknown-linux-gnu-gprof
root@VM-0-12-ubuntu:~/riscv/bin# 
  1. run shell script
/scripts/build-linux-riscv64.sh
  1. after build, run ctest
root@VM-0-12-ubuntu:~/XNNPACK/build/linux/riscv64# pwd
/root/XNNPACK/build/linux/riscv64
root@VM-0-12-ubuntu:~/XNNPACK/build/linux/riscv64# ctest

I got a test case error, what step did I do wrong? I would appreciate it if you could tell me

Error Output

`99% tests passed, 1 tests failed out of 654

Label Time Summary:
operator    = 4514.28 sec*proc (117 tests)

Total Test time (real) = 6463.00 sec

The following tests FAILED:
        253 - xN-transpose-test (Failed)
Errors while running CTest
Output from these tests are in: /root/XNNPACK/build/linux/riscv64/Testing/Temporary/LastTest.log
Use "--rerun-failed --output-on-failure" to re-run the failed cases verbosely.
root@VM-0-12-ubuntu:~/XNNPACK/build/linux/riscv64#

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0