So I narrowed it down to combining the system's blas with Julia's suitesparse. In the tests I made laplack has no influence. Should I file an issue against Julia or with the Archlinux package? What are the Fedora packages bundling?
USE_SYSTEM_BLAS=1 \ USE_SYSTEM_SUITESPARSE=0 \ On Tuesday, 16 December 2014 18:07:23 UTC+1, Valentin Churavy wrote: > > Ok setting > USE_SYSTEM_BLAS=0 \ > USE_SYSTEM_LAPACK=0 \ > USE_SYSTEM_SUITESPARSE=0 \ > > Make the problem go away. So it is the interaction between the system > blas/lapack and the built suitesparese. Are there any patches that julia > carries over suitesparse 4.4.1? > > > On Tuesday, 16 December 2014 17:28:28 UTC+1, Valentin Churavy wrote: >> >> So using >> >> make \ >> USE_SYSTEM_LLVM=0 \ >> USE_SYSTEM_LIBUNWIND=1 \ >> USE_SYSTEM_READLINE=0 \ >> USE_SYSTEM_PCRE=1 \ >> USE_SYSTEM_LIBM=1 \ >> USE_SYSTEM_OPENLIBM=0 \ >> USE_SYSTEM_OPENSPECFUN=0 \ >> USE_SYSTEM_BLAS=1 \ >> USE_SYSTEM_LAPACK=1 \ >> USE_SYSTEM_FFTW=1 \ >> USE_SYSTEM_GMP=1 \ >> USE_SYSTEM_MPFR=1 \ >> USE_SYSTEM_ARPACK=1 \ >> USE_SYSTEM_SUITESPARSE=0 \ >> USE_SYSTEM_ZLIB=1 \ >> USE_SYSTEM_GRISU=0 \ >> USE_SYSTEM_RMATH=0 \ >> USE_SYSTEM_LIBUV=0 \ >> USE_SYSTEM_UTF8PROC=0 \ >> USE_MKL=0 \ >> USE_BLAS64=0 \ >> USE_LLVM_SHLIB=0 >> >> leads to the error observed by me and Andrei, can anybody not using Arch >> try that out? >> >> On Tuesday, 16 December 2014 17:07:55 UTC+1, Valentin Churavy wrote: >>> >>> So building it from the PKGBUILD leads to the same error. I am now >>> building it with the same make options from the tar.gz on the Julia >>> download page. >>> >>> Andrei we probably have to build other parts that interact with >>> suitesparse from source instead of using the Arch ones. But if the problem >>> persists while using the tarball, then at least other people on non-Arch >>> distros can try to see if it works for them and which interaction leads to >>> the error. >>> >>> For the time being you can call full(A) on your sparse matrix to convert >>> it to a dense matrix and circumvent the problem >>> >>> On Tuesday, 16 December 2014 16:52:18 UTC+1, Andrei Berceanu wrote: >>>> >>>> So if your suspicion is correct, setting USE_SYSTEM_SUITESPARSE=1 should >>>> fix this, right? >>>> Let me know how it goes :) >>>> >>>> On Tuesday, December 16, 2014 3:19:43 PM UTC+1, Valentin Churavy wrote: >>>>> >>>>> So your system setup is exactly the same (except me running on CPU: >>>>> Intel(R) Core(TM) i5-2520M CPU @ 2.50GHz) and I can conform that the >>>>> following code >>>>> >>>>> A = sparse([rand() + rand() * im for i in 1:100, j in 1:100]) >>>>> B = [rand() + rand() * im for i in 1:100] >>>>> A\B >>>>> >>>>> leads to the following error: >>>>> julia: symbol lookup error: /usr/bin/../lib/julia/libcholmod.so: >>>>> undefined symbol: zpotrf_ >>>>> >>>>> pacman -Qo /usr/lib/libcholmod.so >>>>> /usr/lib/libcholmod.so is owned by suitesparse 4.4.1-1 >>>>> >>>>> *but* the PKGBUILD at >>>>> https://projects.archlinux.org/svntogit/community.git/tree/trunk/PKGBUILD?h=packages/julia >>>>> >>>>> tells me that the Julia package was build with USE_SYSTEM_SUITESPARSE= >>>>> 0 >>>>> >>>>> I am currently building the Julia from the PKGBUILD in order to >>>>> confirm that these build-options lead to the problem. >>>>> >>>>> Best, >>>>> Valentin >>>>> >>>>> On Tuesday, 16 December 2014 11:59:51 UTC+1, Andrei Berceanu wrote: >>>>>> >>>>>> I now have a more accurate description of when the error happens. If >>>>>> I try to solve the following linear system >>>>>> >>>>>> >>>>>> *A* >>>>>> >>>>>> *1681x1681 sparse matrix with 8321 Complex{Float64} entries: >>>>>> [1 , 1] = -10.95+0.001im >>>>>> [2 , 1] = 0.415415-0.909632im >>>>>> [42 , 1] = 1.0+0.0im >>>>>> [1 , 2] = 0.415415+0.909632im >>>>>> [2 , 2] = -10.56+0.001im >>>>>> [3 , 2] = 0.415415-0.909632im >>>>>> [43 , 2] = 1.0+0.0im >>>>>> [2 , 3] = 0.415415+0.909632im >>>>>> [3 , 3] = -10.19+0.001im >>>>>> [4 , 3] = 0.415415-0.909632im >>>>>> ⋮ >>>>>> [1638, 1679] = 1.0+0.0im >>>>>> [1678, 1679] = 0.415415-0.909632im >>>>>> [1679, 1679] = -10.19+0.001im >>>>>> [1680, 1679] = 0.415415+0.909632im >>>>>> [1639, 1680] = 1.0+0.0im >>>>>> [1679, 1680] = 0.415415-0.909632im >>>>>> [1680, 1680] = -10.56+0.001im >>>>>> [1681, 1680] = 0.415415+0.909632im >>>>>> [1640, 1681] = 1.0+0.0im >>>>>> [1680, 1681] = 0.415415-0.909632im >>>>>> [1681, 1681] = -10.95+0.001im* >>>>>> >>>>>> >>>>>> >>>>>> *B* >>>>>> >>>>>> *1681-element Array{Complex{Float64},1}: >>>>>> 0.525444+0.850828im >>>>>> 0.644642+0.764485im >>>>>> -0.658926-0.752208im >>>>>> -0.653119+0.757256im >>>>>> -0.684803+0.728728im >>>>>> 0.499568-0.866275im >>>>>> -0.362176-0.93211im >>>>>> 0.87001+0.493034im >>>>>> -0.616929-0.787019im >>>>>> 0.698366-0.715741im >>>>>> -0.275131-0.961407im >>>>>> -0.984546-0.175127im >>>>>> -0.857186+0.515007im >>>>>> ⋮ >>>>>> -0.148487-0.988914im >>>>>> 0.860544-0.509376im >>>>>> -0.929042+0.369975im >>>>>> -0.812528-0.582923im >>>>>> -0.972683-0.232138im >>>>>> -0.449449+0.893306im >>>>>> -0.929623-0.368512im >>>>>> 0.950785+0.309852im >>>>>> -0.309421-0.950925im >>>>>> 0.115447+0.993314im >>>>>> 0.685855+0.727738im >>>>>> -0.215699+0.97646im * >>>>>> >>>>>> >>>>>> *A\B* >>>>>> >>>>>> *julia: symbol lookup error: /usr/bin/../lib/julia/libcholmod.so: >>>>>> undefined symbol: zpotrf_* >>>>>> This is the output in REPL (followed by a crash), in IJulia I simply >>>>>> get a popup saying the kernel died. >>>>>> >>>>>> On Tuesday, December 16, 2014 10:34:27 AM UTC+1, Andrei Berceanu >>>>>> wrote: >>>>>>> >>>>>>> Ok, so here is the output from versioninfo() from inside the Julia >>>>>>> REPL: >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> *Julia Version 0.3.3Commit b24213b (2014-11-23 20:19 UTC)Platform >>>>>>> Info: System: Linux (x86_64-unknown-linux-gnu) CPU: Intel(R) Xeon(R) >>>>>>> CPU X5650 @ 2.67GHz WORD_SIZE: 64 BLAS: libblas LAPACK: >>>>>>> liblapack LIBM: libm LLVM: libLLVM-3.3* >>>>>>> >>>>>>> and here is the output of `pacman -Qi julia blas lapack` >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> *Name : juliaVersion : 2:0.3.3-1Description : >>>>>>> High-level, high-performance, dynamic programming languageArchitecture >>>>>>> : >>>>>>> x86_64URL : http://julialang.org/ >>>>>>> <http://julialang.org/>Licenses : GPLGroups : >>>>>>> NoneProvides : NoneDepends On : arpack fftw git gmp >>>>>>> libunwind mpfr pcre zlib lapackOptional Deps : gnuplot: If using >>>>>>> the >>>>>>> Gaston Package from julia [installed]Required By : NoneOptional For >>>>>>> : >>>>>>> NoneConflicts With : NoneReplaces : NoneInstalled Size : 54741.00 >>>>>>> KiBPackager : Alexander F Rødseth <[email protected]>Build Date >>>>>>> : >>>>>>> Thu 27 Nov 2014 01:54:38 PM CETInstall Date : Thu 11 Dec 2014 >>>>>>> 05:47:45 PM >>>>>>> CETInstall Reason : Explicitly installedInstall Script : YesValidated >>>>>>> By >>>>>>> : SignatureName : blasVersion : 3.5.0-1Description >>>>>>> : >>>>>>> Basic Linear Algebra SubprogramsArchitecture : x86_64URL : >>>>>>> http://www.netlib.org/lapack <http://www.netlib.org/lapack>Licenses >>>>>>> : >>>>>>> customGroups : NoneProvides : NoneDepends On : >>>>>>> gcc-libsOptional Deps : NoneRequired By : lapack >>>>>>> suitesparseOptional >>>>>>> For : NoneConflicts With : NoneReplaces : NoneInstalled Size : >>>>>>> 375.00 KiBPackager : Ronald van Haren <[email protected]>Build >>>>>>> Date : Mon 27 Jan 2014 09:46:21 PM CETInstall Date : Tue 06 May >>>>>>> 2014 >>>>>>> 05:38:07 PM CESTInstall Reason : Installed as a dependency for another >>>>>>> packageInstall Script : NoValidated By : SignatureName : >>>>>>> lapackVersion : 3.5.0-1Description : Linear Algebra >>>>>>> PACKageArchitecture : x86_64URL : >>>>>>> http://www.netlib.org/lapack >>>>>>> <http://www.netlib.org/lapack>Licenses : customGroups : >>>>>>> NoneProvides : NoneDepends On : blas=3.5.0Optional Deps : >>>>>>> NoneRequired By : arpack julia python-numpy python2-numpy >>>>>>> suitesparseOptional For : NoneConflicts With : NoneReplaces : >>>>>>> NoneInstalled Size : 15612.00 KiBPackager : Ronald van Haren >>>>>>> <[email protected]>Build Date : Mon 27 Jan 2014 09:46:09 PM >>>>>>> CETInstall Date : Tue 06 May 2014 05:38:07 PM CESTInstall Reason : >>>>>>> Installed as a dependency for another packageInstall Script : >>>>>>> NoValidated >>>>>>> By : Signature* >>>>>>> >>>>>>> On Tuesday, December 16, 2014 2:16:10 AM UTC+1, Elliot Saba wrote: >>>>>>>> >>>>>>>> If you didn't compile, then ignore my second message and Joao's. >>>>>>>> Running `versioninfo()` from the julia prompt will give some >>>>>>>> information >>>>>>>> about your system configuration, and Valentin's question, (running >>>>>>>> `pacman >>>>>>>> -Qi julia blas lapack`) will be helpful to know the answer to as well. >>>>>>>> -E >>>>>>>> >>>>>>>> On Mon, Dec 15, 2014 at 10:54 AM, Valentin Churavy < >>>>>>>> [email protected]> wrote: >>>>>>>>> >>>>>>>>> A fellow archuser here. Under which circumstances does the error >>>>>>>>> occur? Eg. what code are you executing? >>>>>>>>> >>>>>>>>> And what does >>>>>>>>> pacman -Qi julia blas lapack >>>>>>>>> output> >>>>>>>>> >>>>>>>>> On Monday, 15 December 2014 19:14:22 UTC+1, Andrei Berceanu wrote: >>>>>>>>>> >>>>>>>>>> Where do i need to type all this? I must mention that I did not >>>>>>>>>> compile Julia from source, but used my distribution's (arch linux) >>>>>>>>>> package >>>>>>>>>> manager (pacman). >>>>>>>>>> >>>>>>>>>> On December 15, 2014 6:15:09 PM CET, Elliot Saba < >>>>>>>>>> [email protected]> wrote: >>>>>>>>>>> >>>>>>>>>>> Ah, yes. If you haven't, try a `make -C deps distclean >>>>>>>>>>> arpack-julia distclean-openblas distclean-suitesparse`, then `make >>>>>>>>>>> cleanall` and finally `make`. >>>>>>>>>>> -E >>>>>>>>>>> >>>>>>>>>>> On Mon, Dec 15, 2014 at 9:11 AM, João Felipe Santos < >>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>> >>>>>>>>>>>> You may need to clean and rebuild the dependencies as well as >>>>>>>>>>>> core Julia. >>>>>>>>>>>> >>>>>>>>>>>> > On Dec 15, 2014, at 12:08 PM, Andrei Berceanu < >>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>> > >>>>>>>>>>>> > Hi all, >>>>>>>>>>>> > >>>>>>>>>>>> > I recently upgraded to Julia Version 0.3.3 on my Arch Linux >>>>>>>>>>>> box and sometimes get this strange error, followed by a kernel >>>>>>>>>>>> crash - what >>>>>>>>>>>> gives? >>>>>>>>>>>> > >>>>>>>>>>>> > julia: symbol lookup error: /usr/bin/../lib/julia/libcholmod.so: >>>>>>>>>>>> undefined symbol: zpotrf_ >>>>>>>>>>>> > >>>>>>>>>>>> > //A >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> Sent from my Android device with K-9 Mail. Please excuse my >>>>>>>>>> brevity. >>>>>>>>>> >>>>>>>>>
