Skip to content

GPUCompiler.reset_runtime() race condition #2168

@simonbyrne

Description

@simonbyrne

Describe the bug

If multiple processes attempt to precompile CUDA.jl, they might call GPUCompiler.reset_runtime(), which due to a bug in Julia 1.9.3 and earlier, can trigger a race condition in recursive rm. See log here:
https://buildkite.com/clima/climaatmos-ci/builds/14843#018bc9e6-4dcd-4a53-87e4-60467b240fda/162-168

The Julia bug is fixed in JuliaLang/julia#50842, but this has not made it to a release version yet.

(I'm trying to figure out why they were getting recompiled, but @vchuravy suggested I open an issue for this).

To reproduce

Honestly, I can't figure out a way to reproduce it, but I have seen it several times.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions