Le mardi 16 décembre 2014 à 13:27 -0800, Elliot Saba a écrit : > I think the problem here is that we might be using something that > requires a certain version of BLAS or LAPACK, or possibly a patched > LAPACK or something. We get a patched LAPACK when we build OpenBLAS. > I've directly included Andreas in this reply, as he's the kind of guy > that would have a good idea as to what's going on here. I don't think Julia needs a patched LAPACK, at least it builds fine on Fedora with the system's LAPACK. It's the one from OpenBLAS, not the reference LAPACK, but it worked fine too with Julia 0.3.0 when I used the latter (though it was slower).
FWIW the Fedora package sets USE_SYSTEM_*=1 for everything, except libuv, Rmath and libm. Additional flags are LIBBLAS=-lopenblasp LIBBLASNAME=libopenblasp.so.0 LIBLAPACK=-lopenblasp LIBLAPACKNAME=libopenblasp.so.0 USE_BLAS64=0 Maybe using Julia's version of SuiteSparse together with the system BLAS/LAPACK does not work? Also, do you imply it worked fine with 0.3.2, and started randomly failing only with 0.3.3? Regards > On Tue, Dec 16, 2014 at 10:03 AM, Valentin Churavy > <v.chur...@gmail.com> wrote: > 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.3 > Commit > 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 > : julia > Version > : 2:0.3.3-1 > Description > : High-level, high-performance, dynamic programming language > Architecture > : x86_64 > URL > : http://julialang.org/ > Licenses > : GPL > Groups > : None > Provides > : None > Depends On > : arpack fftw git gmp libunwind mpfr pcre zlib lapack > Optional Deps > : gnuplot: If using the Gaston Package from julia [installed] > Required By > : None > Optional For > : None > Conflicts > With : None > Replaces > : None > Installed > Size : 54741.00 KiB > Packager > : Alexander F Rødseth <rod...@gmail.com> > Build > Date : > Thu 27 Nov 2014 01:54:38 PM CET > Install Date > : Thu 11 Dec 2014 05:47:45 PM CET > Install > Reason : Explicitly installed > Install > Script : Yes > Validated By > : Signature > > Name > : blas > Version > : 3.5.0-1 > Description > : Basic Linear Algebra Subprograms > Architecture > : x86_64 > URL > : http://www.netlib.org/lapack > Licenses > : custom > Groups > : None > Provides > : None > Depends On > : gcc-libs > Optional Deps > : None > Required By > : lapack suitesparse > Optional For > : None > Conflicts > With : None > Replaces > : None > Installed > Size : 375.00 KiB > Packager > : Ronald van Haren <ron...@archlinux.org> > Build > Date : > Mon 27 Jan 2014 09:46:21 PM CET > Install Date > : Tue 06 May 2014 05:38:07 PM CEST > Install > Reason : Installed as a dependency for another package > Install > Script : No > Validated By > : Signature > > Name > : lapack > Version > : 3.5.0-1 > Description > : Linear Algebra PACKage > Architecture > : x86_64 > URL > : http://www.netlib.org/lapack > Licenses > : custom > Groups > : None > Provides > : None > Depends On > : blas=3.5.0 > Optional Deps > : None > Required By > : arpack julia python-numpy python2-numpy suitesparse > Optional For > : None > Conflicts > With : None > Replaces > : None > Installed > Size : 15612.00 KiB > Packager > : Ronald van Haren <ron...@archlinux.org> > Build > Date : > Mon 27 Jan 2014 09:46:09 PM CET > Install Date > : Tue 06 May 2014 05:38:07 PM CEST > Install > Reason : Installed as a dependency for another package > Install > Script : No > Validated 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 <v.ch...@gmail.com> 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 > <stati...@gmail.com> 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 > <joao...@gmail.com> 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 > <andreib...@gmail.com> 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 > > > > > > > > > > > >