-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Move buildkite to new central #69
Conversation
930cd3b
to
300c59c
Compare
80ca805
to
ac17d61
Compare
Ok, one conceptual issue is that the threaded tests are being launched with |
I don't thinks that's the case. If we are not running with MPI (as in the threaded test), the context should be singleton. It is the device that would change to |
I don't think it's the problem we're seeing, but it is a conceptual issue: we end up reducing coverage if we don't run |
Singleton and mutli-threaded are not mutually exclusive. This is how singleton is picked by function context(device = device())
name = get(ENV, "CLIMACOMMS_CONTEXT", nothing)
if !isnothing(name)
if name == "MPI"
return MPICommsContext()
elseif name == "SINGLETON"
return SingletonCommsContext()
else
error("Invalid context: $name")
end
end
# detect common environment variables used by MPI launchers
# PMI_RANK appears to be used by MPICH and srun
# OMPI_COMM_WORLD_RANK appears to be used by OpenMPI
if haskey(ENV, "PMI_RANK") || haskey(ENV, "OMPI_COMM_WORLD_RANK")
return MPICommsContext(device)
else
return SingletonCommsContext(device)
end
end What I understand from this is that the context should be singleton when you are not running with MPI. |
I understand that, but function runsingleton(file)
Base.run(
Cmd(
`$(Base.julia_cmd()) --startup-file=no --project=$(Base.active_project()) $file`,
env = ("CLIMACOMMS_CONTEXT" => "SINGLETON",),
),
)
end does not propagate multiple threads:
|
821ba4c
to
2eaf084
Compare
2eaf084
to
36fabbf
Compare
And use climacommon :)
Closes #72