JuliaParallel / JuliaParallel/DistributedArrays.jl

All localparts of DArray are updated when only one is specified

未关闭
#238 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
Julia
星标
205
派生
34
PR 合并指标
30 天内没有已合并 PR

描述

I ran into an issue when running this block of code:
```
using Distributed
if nprocs() == 1
addprocs()
end
@everywhere using DistributedArrays

a = dfill([], 20)
@sync @distributed for i in 1:20
b = (i, myid())
push!(localpart(a)[1], b)
end

a
```

I would expect ``a`` to be
```
[(1,2), (2,2), (3,2)]
[]
[]
[(4, 3), (5, 3), (6, 3)]
[]

```
because I am only pushing to the first local part of ``a``. But what I get is this:
```
[(1, 2), (2, 2), (3, 2)]
[(1, 2), (2, 2), (3, 2)]
[(1, 2), (2, 2), (3, 2)]
[(4, 3), (5, 3), (6, 3)]
[(4, 3), (5, 3), (6, 3)]

[(17, 8), (18, 8)]
[(17, 8), (18, 8)]
[(19, 9), (20, 9)]
[(19, 9), (20, 9)]
```

It seems that i am pushing to all local parts of ``a``, not just the first one.

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。