Hi all,

when working on an parallel implementation of a particle filter, Julia 
started segfault'ing under heavy workload. A minimal example to reproduce 
this behavior is

@everywhere begin
    type A
        x::SharedArray{Float64,1}
        A(N) = new(SharedArray(Float64, N))
    end
    localf(x::SharedArray) = nothing
    function f(a::A)
        map(fetch, Any[(@spawnat i localf(a.x)) for i in workers()])
    end
end


a = A(1000)
for n = 1:10^8
    f(a)
end

This results on my MacBook Pro under OS X El Capitan in

Jans-MacBook-Pro:~ jdrugo$ /Applications/Julia-0.4.1.app/Contents/Resources/
julia/bin/julia -p 7 ./crash_example.jl

signal (11): Segmentation fault: 11
__pool_alloc at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gc.c
:1053
_new_array_ at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/array
.c:84
_new_array at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/array.
c:333
call at /Applications/Julia-0.4.1.app/Contents/Resources/julia/lib/julia/sys
.dylib (unknown line)
def_rv_channel at multi.jl:619
jlcall_def_rv_channel_21329 at  (unknown line)
jl_apply at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia.
h:1325
lookup_ref at multi.jl:513
remotecall_fetch at multi.jl:727
jl_apply at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia.
h:1325
call_on_owner at multi.jl:778
fetch at multi.jl:796
jl_apply at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia.
h:1325
map at 
/Applications/Julia-0.4.1.app/Contents/Resources/julia/lib/julia/sys.dylib 
(unknown line)
f at /Users/jdrugo/crash_example.jl:9
jl_apply at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia.
h:1325
anonymous at /Users/jdrugo/crash_example.jl:15
jl_apply at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia.
h:1325
jl_parse_eval_all at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src
/toplevel.c:577
jl_load at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.
c:620
include at /Applications/Julia-0.4.1.app/Contents/Resources/julia/lib/julia/
sys.dylib (unknown line)
jl_apply at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia.
h:1325
include_from_node1 at /Applications/Julia-0.4.1.app/Contents/Resources/julia
/lib/julia/sys.dylib (unknown line)
jl_apply at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia.
h:1325
process_options at /Applications/Julia-0.4.1.app/Contents/Resources/julia/
lib/julia/sys.dylib (unknown line)
_start at /Applications/Julia-0.4.1.app/Contents/Resources/julia/lib/julia/
sys.dylib (unknown line)
jlcall__start_18614 at /Applications/Julia-0.4.1.app/Contents/Resources/
julia/lib/julia/sys.dylib (unknown line)
jl_apply at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia.
h:1325
true_main at /Applications/Julia-0.4.1.app/Contents/Resources/julia/bin/julia 
(unknown line)
main at /Applications/Julia-0.4.1.app/Contents/Resources/julia/bin/julia 
(unknown 
line)
Segmentation fault: 11

More info

julia> versioninfo()
Julia Version 0.4.1
Commit cbe1bee* (2015-11-08 10:33 UTC)
Platform Info:
  System: Darwin (x86_64-apple-darwin13.4.0)
  CPU: Intel(R) Core(TM) i7-4980HQ CPU @ 2.80GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Haswell)
  LAPACK: libopenblas64_
  LIBM: libopenlibm
  LLVM: libLLVM-3.3

Is this a known issue?

Thanks,
Jan

Reply via email to