JuliaParallel / JuliaParallel/DistributedArrays.jl

localindices methods in conflict with SharedArrays

Open
#194 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Julia
Stars
205
Forks
34
PR merge metrics
No merged PRs in 30d

Description

It seems like there is a conflict between localindices method between SharedArrays and DistributedArrays. Please, see the REPL output below.

10:46:39 $ julia-1.0
_
_ _ _(_)_ | Documentation: https://docs.julialang.org
(_) | (_) (_) |
_ _ _| |_ __ _ | Type "?" for help, "]?" for Pkg help.
| | | | | | |/ _` | |
| | |_| | | | (_| | | Version 1.0.2 (2018-11-08)
_/ |\__'_|_|_|\__'_| | Official https://julialang.org/ release
|__/ |

julia> using SharedArrays

julia> SharedArrays.
SharedArray include range_1dim shm_unlink
SharedMatrix indexpids sa_refs shmem_fill
SharedVector init_loc_flds sdata shmem_rand
_shm_mmap_array initialize_shared_array shared_pids shmem_randn
eval localindices shm_mmap_array sub_1dim
finalize_refs print_shmem_limits shm_open
julia> using DistributedArrays
WARNING: using DistributedArrays.localindices in module Main conflicts with an existing identifier.

help?> SharedArrays.localindices
localindices(S::SharedArray)

Returns a range describing the "default" indices to be handled by the current process. This range should
be interpreted in the sense of linear indexing, i.e., as a sub-range of 1:length(S). In multi-process
contexts, returns an empty range in the parent process (or any process for which indexpids returns 0).

It's worth emphasizing that localindices exists purely as a convenience, and you can partition work on the
array among workers any way you wish. For a SharedArray, all indices should be equally fast for each
worker process.

help?> DistributedArrays.localindices
localindices(d)

A tuple describing the indices owned by the local process. Returns a tuple with empty ranges if no local
part exists on the calling process.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.