OpenBLAS: gbmv! segfaults for large matrices
I’m getting the following issue calling gbmv! in Julia, that is only present when compiled with OpenBLAS:
julia> n = 100_000_000; A = randn(3,n); x = randn(n); y = similar(x); BLAS.gbmv!('N', n, 1, 1, 1.0, A, x, 0.0, y);
ERROR: ReadOnlyMemoryError()
Stacktrace:
[1] gbmv!(::Char, ::Int64, ::Int64, ::Int64, ::Float64, ::Array{Float64,2}, ::Array{Float64,1}, ::Float64, ::Array{Float64,1}) at /Users/solver/Projects/julia7/usr/share/julia/stdlib/v0.7/LinearAlgebra/src/blas.jl:652
[2] top-level scope at none:0
julia> n = 100_000_000; A = randn(3,n); x = randn(n); y = similar(x); BLAS.gbmv!('N', n, 1, 1, 1.0, A, x, 0.0, y);
Segmentation fault: 11
When compiled with Apple’s system BLAS, the above examples work fine.
About this issue
- Original URL
- State: closed
- Created 6 years ago
- Reactions: 2
- Comments: 28 (6 by maintainers)
Unlikely as that line is inside an
#ifdef TRANSAthat does not apply here. I suspect this is a different but related failure mode with range_n rather than range_m going out of bounds on the last thread of the set.