I noticed this problem on my machine. I am thinking it is a installation issue and am wondering what else may be affected. Thanks in advance for any insight you might give in this matter.
The problem is that julia crashes when I use the dot
function from LinearAlgebra.jl
on arrays of complex numbers that are longer than 10^4. If the arrays of complex numbers have of length 10001 or more, it crashes. If the arrays are real dot
works just fine. If the arrays are complex and are less than 10001 entries dot
works fine.
Another interesting point is that when I run the code for the dot function (found in the repository for LinearAlgebra) and use that function it works as it should in this case. So, when I run
function dot end
function dot(x, y) # arbitrary iterables
ix = iterate(x)
iy = iterate(y)
if ix === nothing
if iy !== nothing
throw(DimensionMismatch("x and y are of different lengths!"))
end
return dot(zero(eltype(x)), zero(eltype(y)))
end
if iy === nothing
throw(DimensionMismatch("x and y are of different lengths!"))
end
(vx, xs) = ix
(vy, ys) = iy
s = dot(vx, vy)
while true
ix = iterate(x, xs)
iy = iterate(y, ys)
ix === nothing && break
iy === nothing && break
(vx, xs), (vy, ys) = ix, iy
s += dot(vx, vy)
end
if !(iy === nothing && ix === nothing)
throw(DimensionMismatch("x and y are of different lengths!"))
end
return s
end
dot(x::Number, y::Number) = conj(x) * y
function dot(x::AbstractArray, y::AbstractArray)
lx = length(x)
if lx != length(y)
throw(DimensionMismatch("first array has length $(lx) which does not match the length of the second, $(length(y))."))
end
if lx == 0
return dot(zero(eltype(x)), zero(eltype(y)))
end
s = zero(dot(first(x), first(y)))
for (Ix, Iy) in zip(eachindex(x), eachindex(y))
@inbounds s += dot(x[Ix], y[Iy])
end
s
end
foo(n) = randn(n) + im*randn(n)
dot(foo(10^7),foo(10^7))
It works fine but if I run:
using LinearAlgebra: dot
foo(n) = randn(n) + im*randn(n)
dot(foo(10001),foo(10001))
julia crashes.
The error message I get before julia dies is here:
Please submit a bug report with steps to reproduce this fault, and any error messages that follow (in their entirety). Thanks.
Exception: EXCEPTION_ACCESS_VIOLATION with steps to reproduce this fault, and any error messages that follow (in their entirety). Thanks.
Exception:
Please submit a bug repor
Please submit a bug report with steps to reproduce this fault, and any error messages that follow (in their entirety). Thanks.
Exception: EXCEPTION_ACCESS_VIOLATION at 0x1d407280 -- at 0x1d407280 -- OLATION with steps to reproduce this fault, and any error messages that follow (in their entirety). Thanks.
Exception: EXCEPTION_ACCESS_VIOLATION at 0x1d407280 -- at 0x1d407280 -- at 0x1d407280 -- OLATION with steps to reproduce this fault, and any error messages that follow (in their entirety). Thanks.
Exception: EXCEPTION_ACCESS_VIOLATION at 0x1d407280 -- at 0x1d407280 -- OLATION with steps to reproduce this fault, and any error messages that follow (in their entirety). Thanks.
Exception: EXCEPTION_ACCESS_VIOLATION at 0x1d407280 -- at 0x1d407280 -- OLATION at 0x1d407280 -- at 0x1d407280 -- OLATION with steps to reproduce this fault, and any error messages that follow (in their entirety). Thanks.
Exception: EXCEPTION_ACCESS_VIOLATION at 0x1d407280 -- at 0x1d407280 -- OLATION with steps to reproduce this fault, and any error messages that follow (in their entirety). Thanks.
Exception: EXCEPTION_ACCESS_VIOLATION at 0x1d407280 --
Here are my configurations
julia> versioninfo()
Julia Version 1.5.2
Commit 539f3ce943 (2020-09-23 23:17 UTC)
Platform Info:
OS: Windows (x86_64-w64-mingw32)
CPU: Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz
WORD_SIZE: 64
LIBM: libopenlibm
LLVM: libLLVM-9.0.1 (ORCJIT, skylake)
I am happy to supply any other help information.
Thank you.