Build fails with NVHPC 26.9
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 18/100
- Issue 类型
- 缺陷
- 描述清晰度
- 基本清楚
- 活跃度
- 活跃
- 技术栈
- c
- 领域
- build-system
调研方向
This is a crash inside NVHPC's own LLVM opt during the ipsccp/FunctionSpecializer pass while compiling a generated kernel source such as kernel/CMakeFiles/sgemv_t.c, not obviously an OpenBLAS defect; the reporter has already filed it upstream at the NVIDIA forum. A maintainer would start by reproducing the build with NVHPC 26.9, then checking whether the CMake flags in cmake/ for the nvc compiler path can avoid the crashing pass or flag combination. Done would mean a documented workaround or flag change that lets the 0.3.34 build complete, or a confirmation that the fix belongs upstream.
由索引模型根据 Issue 内容生成。
描述
Hello,
I could not build OpenBLAS 0.3.34 with latest NVHPC 26.9. Error message is the following :
make[2]: Entering directory '/software/stack/cepp/.bmorvana-tests/openblas-nvhpc-26.9-repro/OpenBLAS-0.3.34.nvc-26.9.build'
[ 84%] Building C object kernel/CMakeFiles/kernel.dir/CMakeFiles/sgemv_t.c.o
cd /software/stack/cepp/.bmorvana-tests/openblas-nvhpc-26.9-repro/OpenBLAS-0.3.34.nvc-26.9.build/kernel && /software/stack/cepp/.bmorvana-tests/openblas-nvhpc-26.9-repro/nvhpc_2026_269_Linux_x86_64_cuda_multi.prefix/Linux_x86_64/26.9/compilers/bin/nvc -DUSE_GEMM3M -I/software/stack/cepp/.bmorvana-tests/openblas-nvhpc-26.9-repro/OpenBLAS-0.3.34 -I/software/stack/cepp/.bmorvana-tests/openblas-nvhpc-26.9-repro/OpenBLAS-0.3.34.nvc-26.9.build -DHAVE_C11 -tp px -march=sapphirerapids -mavx2 -mavx -msse -msse2 -msse3 -mssse3 -msse4.1 -fPIC
-DSMALL_MATRIX_OPT -DNO_WARMUP -DMAX_CPU_NUMBER=256 -DMAX_PARALLEL_NUMBER=1 -DMAX_STACK_ALLOC=2048 -DNO_AFFINITY -DVERSION="\"0.3.34\"" -DBUILD_SINGLE -DBUILD_DOUBLE -DBUILD_COMPLEX -DBUILD_COMPLEX16 -fast -O3 -DNDEBUG -MD -MT kernel/CMakeFiles/kernel.dir/CMakeFiles/sgemv_t.c.o -MF CMakeFiles/kernel.dir/CMakeFiles/sgemv_t.c.o.d -o CMakeFiles/kernel.dir/CMakeFiles/sgemv_t.c.o -c /software/stack/cepp/.bmorvana-tests/openblas-nvhpc-26.9-repro/OpenBLAS-0.3.34.nvc-26.9.build/kernel/CMakeFiles/sgemv_t.c
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace and instructions to reproduce the bug.
Stack dump:
0. Program arguments: /software/stack/cepp/.bmorvana-tests/openblas-nvhpc-26.9-repro/nvhpc_2026_269_Linux_x86_64_cuda_multi.prefix/Linux_x86_64/26.9/compilers/share/llvm/bin/opt --passes=default<O3> --nvhpc-consider-undef=true --nvhpc-reassoc=true --nvhpc-canonicalize-gep=true --nvhpc-phi-opt=true --nvhpc-store-opt=true --nvhpc-unswitch-loops-with-trip-count=2 --nvhpc-slp-v2fp-gather-gate=true --nvhpc-keep-int-mul-add-alt=true --nvhpc-reject-tiny-copyable-identity=true --nvhpc-reject-buildvec-horiz-reduce=true --nvhpc-slp-v2fp-gather-reject-lo=13 --nvhpc-slp-v2fp-gather-reject-hi=18 --nvhpc-fptrunc-opt=true --nvhpc-no-sink-phi-loads-same-base=true --nvhpc-fold-nextafter=true --nvhpc-lane-group-gather=true --nvhpc-load-store-opt=true --nvhpc-masked-compress-cost=true --nvhpc-slp-insertelt-vl=true --nvhpc-x86-partial-reduction=true --nvhpc-maximize-bandwidth-for-partial-reductions=true --nvhpc-disable-rewrite-tree-merge=true --nvhpc-align-stack-for-func-spec=true --denormal-fp-math=positive-zero --nvhpc-finite-opts=false --nvhpc-unswitch-loops-with-trip-count=2 --nvhpc-phi-fold=true --nvhpc-masked-load-opt=true --nvhpc-has-mixed-const-intrin=true --nvhpc-tree-cost-adjust=true --nvhpc-defer-fma-zero-fold=true --nvhpc-enable-return-slot-move=true --nvhpc-check-tli-mapping-signature=true -mcpu=sapphirerapids /tmp/nvc9l45e3TAz2OiU.ll -S -o /tmp/nvcLl45eVCqxtqPv.llvm
1. Running pass "ipsccp" on module "/tmp/nvc9l45e3TAz2OiU.ll"
Stack dump without symbol names (ensure you have llvm-symbolizer in your PATH or set the environment var `LLVM_SYMBOLIZER_PATH` to point to it):
0 opt 0x000055d0723433e8 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) + 40
1 opt 0x000055d072340e05 llvm::sys::RunSignalHandlers() + 293
2 opt 0x000055d072344116
3 libc.so.6 0x00007f282c23fb30
4 opt 0x000055d07000d25d
5 opt 0x000055d07000cddd
6 opt 0x000055d070017716
7 opt 0x000055d0700091cf
8 opt 0x000055d0700072dc
9 opt 0x000055d0700145e7
10 opt 0x000055d071a39f61 llvm::CodeMetrics::analyzeBasicBlock(llvm::BasicBlock const*, llvm::TargetTransformInfo const&, llvm::SmallPtrSetImpl<llvm::Value const*> const&, bool, llvm::Loop const*) + 1377
11 opt 0x000055d0707b8748 llvm::FunctionSpecializer::run() + 440
12 opt 0x000055d070796b32 llvm::IPSCCPPass::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) + 1362
13 opt 0x000055d07219e3b9 llvm::PassManager<llvm::Module, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) + 313
14 opt 0x000055d06fcb22f2 llvm::runPassPipeline(llvm::StringRef, llvm::Module&, llvm::TargetMachine*, llvm::TargetLibraryInfoImpl*, llvm::ToolOutputFile*, llvm::ToolOutputFile*, llvm::ToolOutputFile*, llvm::StringRef, llvm::ArrayRef<llvm::PassPlugin>, llvm::ArrayRef<std::function<void (llvm::PassBuilder&)>>, llvm::opt_tool::OutputKind, llvm::opt_tool::VerifierKind, bool, bool, bool, bool, bool, bool, bool, bool) + 14498
15 opt 0x000055d06fca706b optMain + 10731
16 libc.so.6 0x00007f282c22a610
17 libc.so.6 0x00007f282c22a6c0 __libc_start_main + 128
18 opt 0x000055d06fca0c0e _start + 46
nvc-Fatal-/software/stack/cepp/.bmorvana-tests/openblas-nvhpc-26.9-repro/nvhpc_2026_269_Linux_x86_64_cuda_multi.prefix/Linux_x86_64/26.9/compilers/share/llvm/bin/opt TERMINATED by signal 11
make[2]: *** [kernel/CMakeFiles/kernel.dir/build.make:1299: kernel/CMakeFiles/kernel.dir/CMakeFiles/sgemv_t.c.o] Error 2
make[2]: Leaving directory '/software/stack/cepp/.bmorvana-tests/openblas-nvhpc-26.9-repro/OpenBLAS-0.3.34.nvc-26.9.build'
make[1]: *** [CMakeFiles/Makefile2:7831: kernel/CMakeFiles/kernel.dir/all] Error 2
make[1]: Leaving directory '/software/stack/cepp/.bmorvana-tests/openblas-nvhpc-26.9-repro/OpenBLAS-0.3.34.nvc-26.9.build'
make: *** [Makefile:146: all] Error 2
Everything builds fine with NVHPC 26.5 and older, as well as with other compilers (including recent LLVM releases).
This looks like an issue on NVidia side. I opened an issue on their forums : https://forums.developer.nvidia.com/t/nvhpc-26-9-fail-during-openblas-0-3-34-build/386813
Best,
Antoine.
- 主要语言
- C
- 星标
- 7.7k
- 派生
- 1.7k
- 平均合并
- 1 天 8 小时
- 30 天内合并 PR
- 60
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
OpenMathLib/OpenBLAS 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 72/100
OpenMathLib/OpenBLAS#6192 ·
维护者通常 1 天内回复
-
New release未关闭
难度 4/5 3-5 天 新手友好度 12/100
OpenMathLib/OpenBLAS#6189 · 10 条评论 ·
维护者通常 1 天内回复
-
难度 5/5 一周以上 新手友好度 25/100
OpenMathLib/OpenBLAS#6152 ·
维护者通常 1 天内回复
-
难度 5/5 一周以上 新手友好度 28/100
OpenMathLib/OpenBLAS#6151 · 2 条评论 ·
维护者通常 1 天内回复
-
VORTEXM4: s2_usable() runs RDSVL before the SME2 check (SIGILL without SME)可能已有人在做 @tesch1 于 8 天前认领。 未关闭
难度 3/5 1-2 天 新手友好度 25/100
OpenMathLib/OpenBLAS#6150 ·
维护者通常 1 天内回复
查看 OpenMathLib/OpenBLAS 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 72/100
cyrusimap/cyrus-imapd#6640 ·
维护者通常 2 天内回复
-
难度 2/5 1-3 小时 新手友好度 60/100
维护者通常 1 天内回复
-
bug
难度 2/5 1-3 小时 新手友好度 68/100
GalusPeres/HomeTiles#139 · 1 条评论 ·
维护者通常 3 天内回复
-
Type: Bug
难度 2/5 1-3 小时 新手友好度 76/100
apache/nuttx-apps#3942 ·
维护者通常 1 天内回复
-
coders/mat.c: ReadMATImageV4 leaves a trailing 0x0 frame, so converting a valid level-4 .mat fails未关闭
难度 2/5 1-3 小时 新手友好度 72/100
ImageMagick/ImageMagick#9077 ·
维护者通常 1 天内回复