I don't see this with my own build of OpenBLAS. @staticfloat, how old are the bottles?
Med venlig hilsen Andreas Noack 2014-08-12 0:15 GMT-04:00 Thomas Covert <thom.cov...@gmail.com>: > I think this is broken again: I'm observing single-threaded failures > (i.e., the last line of the sample code fails when the addprocs(8) line is > not commented out) on both a somewhat recent OS X home-brew build and also > the current --HEAD home-brew build right now. I am using the standard > 64-bit openblas, arpack, and suite-sparse from @staticfloat's home-brew > setup (i.e., compiled without the --HEAD option). If it helps, here is my > versioninfo(): > > *julia> **versioninfo()* > > Julia Version 0.4.0-prerelease+52 > > Commit daa3f82* (2014-08-12 03:33 UTC) > > Platform Info: > > System: Darwin (x86_64-apple-darwin13.3.0) > > CPU: Intel(R) Core(TM) i7-4578U CPU @ 3.00GHz > > WORD_SIZE: 64 > > BLAS: libopenblas (USE64BITINT NO_AFFINITY) > > LAPACK: libopenblas > > LIBM: libopenlibm > > LLVM: libLLVM-3.3 > > -thom > > On Friday, July 18, 2014 4:34:06 PM UTC-5, Viral Shah wrote: >> >> This is now fixed now on master by using a new openblas release that >> fixes the bug. You can get the fix in tomorrow's nightly. Thanks for >> reporting! >> >> -viral >> >> On Thursday, July 10, 2014 4:20:07 AM UTC+5:30, Thomas Covert wrote: >>> >>> I have found cholfact to behave differently (erroneously?) under >>> parallel processing contexts than under standard settings. What I mean by >>> "parallel processing" is simply having previously called addprocs(). Here >>> is some example code that I am running on my mid-2009 MacBook Pro using a >>> somewhat recent brew of @staticfloat's homebrew distribution: >>> >>> addprocs(8) >>> >>> N = 1000 >>> >>> x = 10 * randn(N) >>> >>> X = zeros(N,N) >>> >>> >>> for i = 1:N >>> >>> for j = 1:N >>> >>> X[i,j] = exp(-.5 * (x[i]-x[j])^2) >>> >>> end >>> >>> end >>> >>> >>> X = X + diagm(.5 * ones(N)) >>> >>> >>> C = cholfact(X) >>> >>> iC = inv(C) >>> >>> CiC = cholfact(iC) >>> >>> I believe this code generates an X which is positive definite by >>> construction. >>> >>> If I run this code as-is, I get the following error (or something >>> similar, the PosDefException sometimes changes): >>> >>> *ERROR: PosDefException(12)* >>> >>> * in cholfact! at linalg/factorization.jl:36* >>> >>> * in cholfact at linalg/factorization.jl:39* >>> >>> *while loading /Users/tcovert/path_to_code.jl, in expression starting on >>> line 16* >>> >>> However, if I comment out the "addprocs(8)" line, everything works fine. >>> Also, for smaller values of N the problem goes away (N=100,200 is fine, >>> N=400 is not). Here is my versioninfo() if that helps: >>> >>> *julia> **versioninfo()* >>> >>> Julia Version 0.3.0-prerelease+3868 >>> >>> Commit e7a9a7d* (2014-06-24 19:39 UTC) >>> >>> Platform Info: >>> >>> System: Darwin (x86_64-apple-darwin13.2.0) >>> >>> CPU: Intel(R) Core(TM)2 Duo CPU P8700 @ 2.53GHz >>> >>> WORD_SIZE: 64 >>> >>> BLAS: libopenblas (USE64BITINT NO_AFFINITY) >>> >>> LAPACK: libopenblas >>> >>> LIBM: libopenlibm >>> >>>