Hi Sébastien.

I currently used a different workaround: I installed the single-thread libopenblas and that enables the coexistence of cdo and octave.

Session transcipt where I test current configuration, install the multithreaded version, test the segfault then recover the previous state:
-8<--
root@str957-cluster:~# LANG=C update-alternatives --display libopenblas.so.0-x86_64-linux-gnu
libopenblas.so.0-x86_64-linux-gnu - auto mode
link best version is /usr/lib/x86_64-linux-gnu/openblas-serial/libopenblas.so.0 link currently points to /usr/lib/x86_64-linux-gnu/openblas-serial/libopenblas.so.0 link libopenblas.so.0-x86_64-linux-gnu is /usr/lib/x86_64-linux-gnu/libopenblas.so.0
/usr/lib/x86_64-linux-gnu/openblas-serial/libopenblas.so.0 - priority 90
root@str957-cluster:~# lscpu
Architecture:                    x86_64
CPU op-mode(s):                  32-bit, 64-bit
Byte Order:                      Little Endian
Address sizes:                   46 bits physical, 48 bits virtual
CPU(s):                          12
On-line CPU(s) list:             0-11
Thread(s) per core:              2
Core(s) per socket:              6
Socket(s):                       1
NUMA node(s):                    1
Vendor ID:                       GenuineIntel
CPU family:                      6
Model:                           62
Model name:                      Intel(R) Xeon(R) CPU E5-2620 v2 @ 2.10GHz
Stepping:                        4
CPU MHz:                         1519.489
CPU max MHz:                     2600,0000
CPU min MHz:                     1200,0000
BogoMIPS:                        4200.14
Virtualization:                  VT-x
L1d cache:                       192 KiB
L1i cache:                       192 KiB
L2 cache:                        1,5 MiB
L3 cache:                        15 MiB
NUMA node0 CPU(s):               0-11
Vulnerability Itlb multihit:     KVM: Mitigation: VMX disabled
Vulnerability L1tf: Mitigation; PTE Inversion; VMX conditional cache flushes, SMT vulnerable Vulnerability Mds: Vulnerable: Clear CPU buffers attempted, no microcode; SMT vulnerable
Vulnerability Meltdown:          Mitigation; PTI
Vulnerability Spec store bypass: Vulnerable
Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization Vulnerability Spectre v2: Mitigation; Full generic retpoline, STIBP disabled, RSB filling
Vulnerability Srbds:             Not affected
Vulnerability Tsx async abort:   Not affected
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm cpuid_fault epb pti tpr_shadow vnmi flexpriority ept vpid fsgsbase smep er
                                 ms xsaveopt dtherm ida arat pln pts
root@str957-cluster:~# octave
X11 connection rejected because of wrong authentication.
octave: unable to open X11 DISPLAY
octave: disabling GUI features
X11 connection rejected because of wrong authentication.
GNU Octave, version 6.2.0
Copyright (C) 2021 The Octave Project Developers.
This is free software; see the source code for copying conditions.
There is ABSOLUTELY NO WARRANTY; not even for MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE.  For details, type 'warranty'.

Octave was configured for "x86_64-pc-linux-gnu".

Additional information about Octave is available at https://www.octave.org.

Please contribute if you find this software useful.
For more information, visit https://www.octave.org/get-involved.html

Read https://www.octave.org/bugs.html to learn how to submit bug reports.
For information about changes from previous versions, type 'news'.

octave:1> version -blas
ans = OpenBLAS (config: OpenBLAS 0.3.13 NO_LAPACKE DYNAMIC_ARCH NO_AFFINITY Sandybridge SINGLE_THREADED)
root@str957-cluster:~# apt install libopenblas0-pthread
Lettura elenco dei pacchetti... Fatto
Generazione albero delle dipendenze... Fatto
Lettura informazioni sullo stato... Fatto
I seguenti pacchetti NUOVI saranno installati:
  libopenblas0-pthread
0 aggiornati, 1 installati, 0 da rimuovere e 0 non aggiornati.
È necessario scaricare 0 B/6.034 kB di archivi.
Dopo quest'operazione, verranno occupati 43,8 MB di spazio su disco.
Selezionato il pacchetto libopenblas0-pthread:amd64 non precedentemente selezionato.
(Lettura del database... 295066 file e directory attualmente installati.)
Preparativi per estrarre .../libopenblas0-pthread_0.3.13+ds-3_amd64.deb...
Estrazione di libopenblas0-pthread:amd64 (0.3.13+ds-3)...
Configurazione di libopenblas0-pthread:amd64 (0.3.13+ds-3)...
update-alternatives: viene usato /usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3 per fornire /usr/lib/x86_64-linux-gnu/libblas.so.3 (libblas.so.3-x86_64-linux-gnu) in modalità automatica update-alternatives: viene usato /usr/lib/x86_64-linux-gnu/openblas-pthread/liblapack.so.3 per fornire /usr/lib/x86_64-linux-gnu/liblapack.so.3 (liblapack.so.3-x86_64-linux-gnu) in modalità automatica update-alternatives: viene usato /usr/lib/x86_64-linux-gnu/openblas-pthread/libopenblas.so.0 per fornire /usr/lib/x86_64-linux-gnu/libopenblas.so.0 (libopenblas.so.0-x86_64-linux-gnu) in modalità automatica
Elaborazione dei trigger per libc-bin (2.31-13+deb11u2)...
root@str957-cluster:~# octave
X11 connection rejected because of wrong authentication.
octave: unable to open X11 DISPLAY
octave: disabling GUI features
Errore di segmentazione (core dump creato)
root@str957-cluster:~# apt remove libopenblas0-pthread
Lettura elenco dei pacchetti... Fatto
Generazione albero delle dipendenze... Fatto
Lettura informazioni sullo stato... Fatto
I seguenti pacchetti saranno RIMOSSI:
  libopenblas0-pthread libopenblas0-pthread-dbgsym
0 aggiornati, 0 installati, 2 da rimuovere e 0 non aggiornati.
Dopo quest'operazione, verranno liberati 57,8 MB di spazio su disco.
Continuare? [S/n]
(Lettura del database... 295084 file e directory attualmente installati.)
Rimozione di libopenblas0-pthread-dbgsym:amd64 (0.3.13+ds-3)...
Rimozione di libopenblas0-pthread:amd64 (0.3.13+ds-3)...
update-alternatives: viene usato /usr/lib/x86_64-linux-gnu/openblas-serial/libblas.so.3 per fornire /usr/lib/x86_64-linux-gnu/libblas.so.3 (libblas.so.3-x86_64-linux-gnu) in modalità automatica update-alternatives: viene usato /usr/lib/x86_64-linux-gnu/openblas-serial/liblapack.so.3 per fornire /usr/lib/x86_64-linux-gnu/liblapack.so.3 (liblapack.so.3-x86_64-linux-gnu) in modalità automatica update-alternatives: viene usato /usr/lib/x86_64-linux-gnu/openblas-serial/libopenblas.so.0 per fornire /usr/lib/x86_64-linux-gnu/libopenblas.so.0 (libopenblas.so.0-x86_64-linux-gnu) in modalità automatica
Elaborazione dei trigger per libc-bin (2.31-13+deb11u2)...
root@str957-cluster:~# octave
X11 connection rejected because of wrong authentication.
octave: unable to open X11 DISPLAY
octave: disabling GUI features
X11 connection rejected because of wrong authentication.
GNU Octave, version 6.2.0
Copyright (C) 2021 The Octave Project Developers.
This is free software; see the source code for copying conditions.
There is ABSOLUTELY NO WARRANTY; not even for MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE.  For details, type 'warranty'.

Octave was configured for "x86_64-pc-linux-gnu".

Additional information about Octave is available at https://www.octave.org.

Please contribute if you find this software useful.
For more information, visit https://www.octave.org/get-involved.html

Read https://www.octave.org/bugs.html to learn how to submit bug reports.
For information about changes from previous versions, type 'news'.

octave:1> version -blas
ans = OpenBLAS (config: OpenBLAS 0.3.13 NO_LAPACKE DYNAMIC_ARCH NO_AFFINITY Sandybridge SINGLE_THREADED)
octave:2>
-8<--

Hope it helps to pinpoint the issue.

Diego

Il 02/11/2021 11:45, Sébastien Villemot ha scritto:
Control: reassign -1 libopenblas0 0.3.13+ds-3
Control: tags -1 + moreinfo

Dear Diego,

Le vendredi 08 octobre 2021 à 09:04 +0200, Diego Zuccato a écrit :
Continuing a triage, I noticed that removing cdo and its dependencies
(including libopenblas0) and reinstalling octave got rid of the
segfault. Reinstalling cdo reintroduced the segfault.

Thanks for your report.

This seems to be a bug in openblas. Reassigning accordingly.

Could you please add the following information:
- the openblas flavour that you’re using, as reported by:
   update-alternatives --display libopenblas.so.0-x86_64-linux-gnu
- your CPU model (as reported by “lscpu”)
- the openblas kernel used at runtime, as reported by “version -blas”
run from the octave prompt

Best regards,


--
Diego Zuccato
DIFA - Dip. di Fisica e Astronomia
Servizi Informatici
Alma Mater Studiorum - Università di Bologna
V.le Berti-Pichat 6/2 - 40127 Bologna - Italy
tel.: +39 051 20 95786

Reply via email to