Might be a good idea to package OpenBLAS for Arch, if you can't find an existing PKGBUILD.
On Tuesday, December 16, 2014 2:22:10 PM UTC-8, Milan Bouchet-Valat wrote: > 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.ch...@gmail.com <javascript:>> 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 > > > > > > > > > > > > > > > > > > >