JuliaParallel / JuliaParallel/DistributedArrays.jl

Unnecessary memory allocations in restrict_indices

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

描述

Hello,

I found this when I was puzzled by a [discourse question](https://discourse.julialang.org/t/strange-memory-allocation-with-distributedarrays/38325).

The function `restrict_indices` (called on line 824 in darray.jl, for example, couldn't figure out how to reference here), allocates an array of indices as big as the array that that you are trying to copy. Thus doubling the memory allocations.

Not sure if there is a way around it (just allocating tuples of ranges of indices or the like), but I thought I should file an issue so it doesn't get lost.

Cheers!

贡献指南

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

调研方向

先阅读 restrict_indices 及其在 darray.jl 第 824 行的调用,然后检查复制过程中索引数组是如何创建的。确认链接的 Discourse 问题中报告的分配行为。完成的标准是在保留 restrict_indices 行为和分布式数组复制的同时,避免不必要的数组大小分配。

由索引模型根据 Issue 内容生成。

评估

技术栈
julia
领域
distributed-systems, performance
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
基本清楚
新手友好度
35/100

把新 issue 发到你的邮箱

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