Hi,

Strange... Let me bring this upstream to see whether this is
flexiblas' or openblas' fault. In the meanwhile, exporting
FLEXIBLAS=netlib before the tests makes use of the reference
implementation, so everything should be slower but safer. And if this
starts happening in the wild, we can change to openblas-serial with a
quick update of FlexiBLAS.

Iñaki

On Fri, 4 Sep 2020 at 05:50, Orion Poplawski <or...@nwra.com> wrote:
>
> It looks like with the flexiblas enabled octave, octave-statistics now
> has a segfault in one of its tests:
>
> https://koschei.fedoraproject.org/package/octave-statistics?collection=f34
>
>    canoncorr.m .................................................
> RPM build errors:
> /var/tmp/rpm-tmp.PZIGXq: line 33: 915255 Segmentation fault      (core
> dumped)
>
> Looks like flexiblas defaults to the openmp version of openblas.  If I
> switch to the serial version, the segfault goes away:
>
> FLEXIBLAS=/lib64/libopenblas.so octave -H -q --no-window-system
> --no-site-file --eval
> 'pkg("local_list",fullfile("/home/orion/rpmbuild/BUILDROOT/octave-statistics-1.4.1-6.fc34.x86_64/usr/share/octave","octave_packages"));pkg("load","statistics");test("/home/orion/rpmbuild/BUILDROOT/octave-statistics-1.4.1-6.fc34.x86_64/usr/share/octave/packages/statistics-1.4.1/canoncorr.m");'
> OpenJDK 64-Bit Server VM warning: Archived non-system classes are
> disabled because the java.system.class.loader property is specified
> (value = "org.octave.OctClassLoader"). To use archived non-system
> classes, this property must be not be set
> PASSES 7 out of 7 tests
>
>
> FLEXIBLAS=/lib64/libopenblaso.so octave -H -q --no-window-system
> --no-site-file --eval
> 'pkg("local_list",fullfile("/home/orion/rpmbuild/BUILDROOT/octave-statistics-1.4.1-6.fc34.x86_64/usr/share/octave","octave_packages"));pkg("load","statistics");test("/home/orion/rpmbuild/BUILDROOT/octave-statistics-1.4.1-6.fc34.x86_64/usr/share/octave/packages/statistics-1.4.1/canoncorr.m");'
> OpenJDK 64-Bit Server VM warning: Archived non-system classes are
> disabled because the java.system.class.loader property is specified
> (value = "org.octave.OctClassLoader"). To use archived non-system
> classes, this property must be not be set
> Segmentation fault (core dumped)
>
>
> Thread 1 "octave-cli-5.2." received signal SIGSEGV, Segmentation fault.
> 0x00007ffff0f1eb19 in dsyrk_thread_UT (args=0x7fffffff8db0, range_m=0x0,
> range_n=0x0, sa=0x7fffb4d31000, sb=0x7fffb4e31000, mypos=0) at
> level3_syrk_threaded.c:508
> 508     int CNAME(blas_arg_t *args, BLASLONG *range_m, BLASLONG
> *range_n, FLOAT *sa, FLOAT *sb, BLASLONG mypos){
> (gdb) bt
> #0  0x00007ffff0f1eb19 in dsyrk_thread_UT (args=0x7fffffff8db0,
> range_m=0x0, range_n=0x0, sa=0x7fffb4d31000, sb=0x7fffb4e31000, mypos=0)
> at level3_syrk_threaded.c:508
> #1  0x00007ffff0e2152f in dsyrk_ (UPLO=<optimized out>, TRANS=<optimized
> out>, N=<optimized out>, K=<optimized out>, alpha=<optimized out>,
> a=<optimized out>, ldA=0x7fffffff8ef0, beta=0x7fffffff8f20,
> c=0x555555f1faa0,
>      ldC=0x7fffffff8ed8) at syrk.c:370
> #2  0x00007ffff67ac436 in _Z5xgemmRK6MatrixS1_15blas_trans_typeS2_
> (a=..., b=..., transa=blas_trans, transb=blas_no_trans) at
> liboctave/array/Array.h:582
> #3  0x00007ffff75336ee in oct_binop_trans_mul (a1=..., a2=...) at
> libinterp/octave-value/ov-re-mat.cc:145
> #4  0x00007ffff781ab44 in do_binary_op (ti=...,
> op=octave_value::op_herm_mul, v1=..., v2=...) at
> libinterp/octave-value/ov.cc:2407
>
>
> (gdb) list
> 503     #endif
> 504
> 505       return 0;
> 506     }
> 507
> 508     int CNAME(blas_arg_t *args, BLASLONG *range_m, BLASLONG
> *range_n, FLOAT *sa, FLOAT *sb, BLASLONG mypos){
> 509
> 510       blas_arg_t newarg;
> 511
> 512     #ifndef USE_ALLOC_HEAP
> (gdb) up
> #1  0x00007ffff0e2152f in dsyrk_ (UPLO=<optimized out>, TRANS=<optimized
> out>, N=<optimized out>, K=<optimized out>, alpha=<optimized out>,
> a=<optimized out>, ldA=0x7fffffff8ef0, beta=0x7fffffff8f20,
> c=0x555555f1faa0,
>      ldC=0x7fffffff8ed8) at syrk.c:370
> 370         (syrk[4 | (uplo << 1) | trans ])(&args, NULL, NULL, sa, sb, 0);
> (gdb) up
> #2  0x00007ffff67ac436 in _Z5xgemmRK6MatrixS1_15blas_trans_typeS2_
> (a=..., b=..., transa=blas_trans, transb=blas_no_trans) at
> liboctave/array/Array.h:582
> 582       const T * data (void) const { return slice_data; }
> (gdb) print a
> $1 = (const class Matrix &) @0x7fffffff9020: {<NDArray> =
> {<MArray<double>> = {<Array<double>> = {_vptr.Array = 0x7ffff7f95750
> <vtable for Matrix+16>, dimensions = {rep = 0x555555f04180}, rep =
> 0x555555f45dc0,
>          slice_data = 0x555555f07200, slice_len = 20}, <No data
> fields>}, <No data fields>}, <No data fields>}
> (gdb) print b
> $2 = (const class Matrix &) @0x7fffffff8ff0: {<NDArray> =
> {<MArray<double>> = {<Array<double>> = {_vptr.Array = 0x7ffff7f95750
> <vtable for Matrix+16>, dimensions = {rep = 0x555555f04180}, rep =
> 0x555555f45dc0,
>          slice_data = 0x555555f07200, slice_len = 20}, <No data
> fields>}, <No data fields>}, <No data fields>}
>
>
> I'm not quite sure where to start here...
>
> Orion
>
>
> --
> Orion Poplawski
> Manager of NWRA Technical Systems          720-772-5637
> NWRA, Boulder/CoRA Office             FAX: 303-415-9702
> 3380 Mitchell Lane                       or...@nwra.com
> Boulder, CO 80301                 https://www.nwra.com/
>


-- 
Iñaki Úcar
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org

Reply via email to