Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

`ReadOnlyMemoryError()` when creating Julia objects in multiple sub-processes using PyJulia.

未关闭
#477 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
25/100
Issue 类型
缺陷
描述清晰度
需要澄清
活跃度
停滞
技术栈
julia, python
领域
backend

调研方向

首先,使用通过 PyJulia 和 diffeqpy 创建 Julia 对象的多个子进程重现该故障,并比较 PyJulia 0.5.6 和 0.5.7。利用 gc.c 和 compiler/ssair/ 中报告的 Julia GC 和编译器堆栈跟踪,确定该阈值是与 PyJulia、Julia 还是进程资源相关;确认原因并得到可执行的解决方案后即视为完成。

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

描述

I have a program that spawns a large number of sub-processes and each sub-process is having its own Julia object created using pyjulia and diffeqpy. It works fine for around 50 sub-processes, but after that, I get these errors. The following is the stack trace from one of the sub-processes.

Can anybody suggest a potential cause of the ReadOnlyMemoryError()? I tried both 0,5.6 and 0.5.7 versions of PyJulia.

Internal error: encountered unexpected error in runtime:
ReadOnlyMemoryError()
reset_page at /cygdrive/c/buildbot/worker/package_win64/build/src\gc.c:1145 [inlined]
add_page at /cygdrive/c/buildbot/worker/package_win64/build/src\gc.c:1177
jl_gc_pool_alloc at /cygdrive/c/buildbot/worker/package_win64/build/src\gc.c:1230
UseRef at .\compiler/ssair\ir.jl:263 [inlined]
UseRefIterator at .\compiler/ssair\ir.jl:268 [inlined]
userefs at .\compiler/ssair\ir.jl:382 [inlined]
scan_entry! at .\compiler/ssair\slot2ssa.jl:27
scan_slot_def_use at .\compiler/ssair\slot2ssa.jl:56
slot2reg at .\compiler/ssair\driver.jl:126 [inlined]
run_passes at .\compiler/ssair\driver.jl:134
optimize at .\compiler\optimize.jl:174
typeinf at .\compiler\typeinfer.jl:33
主要语言
Python
星标
893
派生
101
PR 合并指标
30 天内没有已合并 PR

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

JuliaPy/pyjulia 的其他 Issue

查看 JuliaPy/pyjulia 的全部 Issue

相似的 Issue

更多 Python Issue

把新 issue 发到你的邮箱

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