Skip to content

Conversation

devmotion
Copy link
Contributor

By putting locks around the global dictionaries in DistributedArrays and DistributedArrays.SPMD, and using an Atomic for the ID generation.

While it works, I think conceptually it would be cleaner to store references of remote parts locally, associated with each array, and make use of the reference tracking and garbage collection behaviour of RemoteChannels: https://docs.julialang.org/en/v1/manual/distributed-computing/#Remote-References-and-Distributed-Garbage-Collection As advised in the docs, to reduce memory on the workers in the finalizer of each array we could call finalize on the RemoteChannel.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant