Include MPI to prevent precompilation output capture#5559
Conversation
Added MPI usage to avoid capturing precompilation output.
|
In the linked example the package being precompiled is Oceananigans, not MPI, I'm not sure I follow how this would fix that |
|
Gotca. So perhaps there is no solution then, right? Shall I close this? |
|
I'm pretty sure this is solvable, but needs to understand why Oceananigans is being precompiled again. Setting the env var |
In fact it did not: https://clima.github.io/OceananigansDocumentation/previews/PR5559/grids#Distributed-grids. I'd need to see the flow of where Oceananigans is last precompiled in the CI process and then how exactly it's called in the example, but what I suggested above should hopefully shed some light on this. |
|
Suggested "hack": We can put the whole example in a hidden eval cell previously so that would trigger the precompilation then? |
|
Where should I put that Oceananigans.jl/.buildkite/pipeline.yml Line 68 in a84e8e6 ? |
I don't think this should be worked around, but rather properly solved.
That'd affect everything, it'd be unnecessarily overly verbose. I set it right in the offending MPI script with 19f56f6 |
|
https://clima.github.io/OceananigansDocumentation/previews/PR5559/grids#Distributed-grids Different check bounds and optimisation options, that should be easy to fix 🙂 |
0ffed82 to
4d21673
Compare
| # from the terminal. | ||
| using MPI | ||
| run(`$(mpiexec()) -n 2 $(Base.julia_cmd()) --project distributed_arch_example.jl`) | ||
| run(`$(mpiexec()) -n 2 $(Base.julia_cmd()) -O0 --check-bounds=yes --project distributed_arch_example.jl`) |
There was a problem hiding this comment.
I believe this comes from
Oceananigans.jl/.buildkite/pipeline.yml
Line 29 in 9b5766c
-O0 is right there, and --check-bounds=yes is implicit in Pkg.test.
Honestly, I'm not convinced the documentation job should use the same precompiled environment as the tests, they do different things, the environments are even technically completely different.
Added MPI usage to avoid capturing precompilation output.
E.g. see output from example at https://clima.github.io/OceananigansDocumentation/stable/grids#Distributed-grids