On Sat, Mar 26, 2016 at 3:46 PM, Fred <[email protected]> wrote: > Hi, > > I did this simple code to try to understand how shared arrays work. > Unfortunately my shared array c[ ] is always empty :( > Here I know the size of the final array c because it is a very simple > example, but is it possible to create an empty shared array and push the > results inside using push() function ? > > Thank you very much for your comments ! > > addprocs(2) > > a = rand(8) > b = rand(8) > > convert(SharedArray,a) > convert(SharedArray,b) > > c = SharedArray(Float64,8) > > @everywhere function prod(x,y) > z = x*y > return z > end > > @parallel for i=1:10 > c[i] = prod(a[i], b[i]) > end
http://julia.readthedocs.org/en/latest/stdlib/parallel/#Base.@sync You also have a oob access btw. > > println(c) > > # result : [0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0] :( > > > > >
