Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error on large sparse matrices #1

Open
ranjanan opened this issue Jan 13, 2016 · 2 comments
Open

Error on large sparse matrices #1

ranjanan opened this issue Jan 13, 2016 · 2 comments

Comments

@ranjanan
Copy link

Hey, if I do this:

a  = sprand(10^6, 10^6, 1e-6)
a = a + a' #So it's invertible 
a = a + speye(10^6) #So it's invertible
b = rand(10^6)
c = Array(Float64, 10^6)
@time CUSOLVER.csrlsvlu!(a, b, c, 1e-6, zero(Cint), 'O')

I get the following error:

WARNING: CUSOLVER error triggered from:

 in statuscheck at /home/ubuntu/.julia/v0.4/CUSOLVER/src/CUSOLVER.jl:44
 in csrlsvlu! at /home/ubuntu/.julia/v0.4/CUSOLVER/src/sparse.jl:27
ERROR: MethodError: `convert` has no method matching convert(::Type{AbstractString}, ::UInt32)
This may have arisen from a call to the constructor AbstractString(...),
since type constructors fall back to convert methods.
Closest candidates are:
  call{T}(::Type{T}, ::Any)
  convert{T<:AbstractString,S<:Union{Char,Int32,UInt32}}(::Type{T<:AbstractString}, ::AbstractArray{S<:Union{Char,Int32,UInt32},1})
  convert{S<:AbstractString}(::Type{S<:AbstractString}, ::Base.UTF8proc.GraphemeIterator{S<:AbstractString})
  ...
 in statuscheck at /home/ubuntu/.julia/v0.4/CUSOLVER/src/CUSOLVER.jl:46
 in csrlsvlu! at /home/ubuntu/.julia/v0.4/CUSOLVER/src/sparse.jl:27

This works for smaller sparse matrices. I got the error on the Cholesky kernel too. I didn't try the qr one yet. What do you think is happening?
My Julia setup is this:

Julia Version 0.4.2
Commit bb73f34 (2015-12-06 21:47 UTC)
Platform Info:
  System: Linux (x86_64-unknown-linux-gnu)
  CPU: Intel(R) Xeon(R) CPU E5-2670 0 @ 2.60GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Sandybridge)
  LAPACK: libopenblas64_
  LIBM: libopenlibm
  LLVM: libLLVM-3.3
@kshyatt
Copy link
Collaborator

kshyatt commented Jan 13, 2016

IIRC, the lu and chol solvers are host path only.

What's happening in that specific error is that my error handler is broken :hurtrealbad:.

I suspect it's running out of memory.

@ranjanan
Copy link
Author

Yes, I guess you're right. Inverses of those sparse matrices could be dense, which is why it's running out of memory, I suppose.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants