Lapack: Stackoverflow untuk `xlintstz_ztest_in` di bawah 3.9.1 di windows

Dibuat pada 8 Mei 2021  ·  8Komentar  ·  Sumber: Reference-LAPACK/lapack

Saat mencoba membangun lapack 3.9.1 untuk conda-forge (lihat di sini ), ada kesalahan baru untuk ctest --output-on-failure -E "x*cblat*" setelah membangun:

 81/108 Test  #81: LAPACK-xlintstz_ztest_in .........***Failed    0.06 sec
Running: D:/bld/blas-split_1620498704464/work/build/bin/xlintstz.exe
ARGS= OUTPUT_FILE;D:/bld/blas-split_1620498704464/work/build/TESTING/ztest.out;ERROR_FILE;D:/bld/blas-split_1620498704464/work/build/TESTING/ztest.out.err;INPUT_FILE;D:/bld/blas-split_1620498704464/work/TESTING/ztest.in
Test OUTPUT:

Test ERROR:

CMake Error at D:/bld/blas-split_1620498704464/work/TESTING/runtest.cmake:36 (message):
  Test D:/bld/blas-split_1620498704464/work/build/bin/xlintstz.exe returned
  Stack overflow

Build dilakukan dengan minGW, kira-kira sebagai berikut (lebih detail di sini ):

set "CC=gcc.exe"
set "CXX=g++.exe"
set "FC=gfortran.exe"

cmake -G "MinGW Makefiles" ^
    -DCMAKE_INSTALL_PREFIX=%LIBRARY_PREFIX% ^
    -DBUILD_SHARED_LIBS=yes ^
    -DCMAKE_BUILD_TYPE=Release ^
    -DBUILD_TESTING=ON ^
    -DLAPACKE=ON ^
    -DCBLAS=ON ^
    -DBUILD_DEPRECATED=ON ^
    -Wno-dev ..

mingw32-make -j%CPU_COUNT%
mingw32-make install
if %ERRORLEVEL% NEQ 0 exit 1
Bug

Komentar yang paling membantu

Pada Windows dengan mingw, saya yakin ukuran tumpukan perlu disesuaikan pada waktu kompilasi/tautan (-Wl,--stack,2097152 atau lebih besar). Seseorang mungkin bisa mendapatkan nilai default di exe dengan sesuatu seperti dumpbin /headers .

Semua 8 komentar

Menarik karena 3.9.1 diharapkan telah _mengurangi_ persyaratan tumpukan untuk xlintstz dibandingkan dengan versi sebelumnya. (Dan itu pasti ada pada platform unixoid)

maaf, perubahan yang saya pikirkan (#492) memengaruhi xeigtstz daripada xlintstz

Ya ... Saya akan mengatakan perbaikan yang mirip dengan #492 akan menyelesaikan masalah ini. Keduanya berhubungan dengan stack overflow.

Saya telah melihat #492 tetapi terlihat sedikit di atas gaji saya... Apakah maksud Anda (sesuatu seperti) https://github.com/Reference-LAPACK/lapack/pull/492/commits/df02000eedbda3f38e305af1290313e5b2a2b541 perlu dilakukan untuk tes LIN?

Pada awalnya, saya sarankan Anda meningkatkan ukuran tumpukan ulimit -s unlimited dan melihat apakah masalahnya masih ada. Bisakah Anda mencobanya? Jika ini berhasil, kita dapat mencoba solusi yang sama yang diterapkan di #492.

Pada Windows dengan mingw, saya yakin ukuran tumpukan perlu disesuaikan pada waktu kompilasi/tautan (-Wl,--stack,2097152 atau lebih besar). Seseorang mungkin bisa mendapatkan nilai default di exe dengan sesuatu seperti dumpbin /headers .

Terima kasih banyak atas tipnya @martin-frbg, memang, https://github.com/conda-forge/lapack-feedstock/pull/51/commits/3835a4de851f90555b5a6ce6bdd3e6d66b57e675 memecahkan kegagalan pada windows.

Senang mengetahui bahwa ini berfungsi - tetapi saya kira kita mungkin masih ingin menyalin solusi dari #492 (Saya telah mengonversi zchkaa.f tetapi belum menentukan uiimit minimum dengan kode baru)

Apakah halaman ini membantu?
0 / 5 - 0 peringkat