Skip to content

Cache the objcache on 1.14+ - #263

Merged
giordano merged 2 commits into
julia-actions:mainfrom
KristofferC:kc/cache-objcache
Sep 13, 2026
Merged

giordano merged 2 commits into
julia-actions:mainfrom
KristofferC:kc/cache-objcache

Conversation

@KristofferC

Copy link
Copy Markdown
Contributor

This seems like a good idea.

KristofferC and others added 2 commits September 3, 2026 20:34
Julia 1.14 adds an LMDB-based object cache (`objcache`, JuliaLang/julia#61527)
that stores native code keyed by the LLVM IR it was compiled from, so JIT
compilation can be skipped across sessions. It lives in the depot under
`cache/v<major>.<minor>/objcache-lmdb1/`, which this action did not include,
so every CI run started from an empty object cache.

Add a `cache-objcache` input (default `true`) that adds `<depot>/cache` to the
cached paths. The LMDB `lock.mdb` reader table is excluded since it is
per-machine state that LMDB recreates on open; only `data.mdb` carries the
cached objects. Julia bounds the cache size itself (512 MB by default via
`JULIA_OBJCACHE_CAPACITY`).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@giordano giordano linked an issue Sep 3, 2026 that may be closed by this pull request
@KristofferC

Copy link
Copy Markdown
Contributor Author

Does anyone feel like merging this?

@KristofferC

Copy link
Copy Markdown
Contributor Author

bump

@KristofferC

Copy link
Copy Markdown
Contributor Author
image

@giordano
giordano merged commit 727fda1 into julia-actions:main Sep 13, 2026
23 of 25 checks passed
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.

Support objcache

2 participants