Skip to content

Conversation

@maleadt
Copy link
Member

@maleadt maleadt commented Aug 3, 2022

I noticed some slowdown after adding a shared compilecache to Nanosoldier, and I'm thinking this may be due to workers running into one another while precompiling packages. So let's try this out: packages are precompiled into a local compilecache (~/.julia/.../compiled), and after completion copied into a global cache that's mounted read-only at the system depot (/usr/local/share/julia).

@vtjnash Any thoughts? The reason I want to share the compile cache, is that when running under --bug-report we otherwise precompile BugReporting.jl's dependencies over and over again. This makes e.g. Example.jl take 30 sec to install/test, whereas it normally only takes 3. Sharing the compilecache gets it down to ~10 sec.

@vtjnash
Copy link
Member

vtjnash commented Aug 3, 2022

Sounds good to me. I had some code that does much the same for mirroring srccache downloads

@maleadt
Copy link
Member Author

maleadt commented Aug 3, 2022

Is it something you would recommend PkgEval doing (given how our code loading/precompilation works)? Because it seems that another run without this is working fine, so the slowdown I noticed may have been caused by another bug.

@vtjnash
Copy link
Member

vtjnash commented Aug 3, 2022

Yep, that is how our precompilation is supposed to be designed to work for

@maleadt
Copy link
Member Author

maleadt commented Aug 3, 2022

Lots of tests failed with e.g.:

ERROR: LoadError: SystemError: opening file "/home/pkgeval/.julia/compiled/v1.9/Distributions/xILW0_jnSbd.ji": No such file or directory

See https://s3.amazonaws.com/julialang-reports/nanosoldier/pkgeval/by_date/2022-08/03/report.html

So I think we'll need this...

@maleadt maleadt merged commit 6779957 into master Aug 5, 2022
@maleadt maleadt deleted the tb/compilecache branch August 5, 2022 15:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants