Skip to content
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

Consider using ccache #1153

Open
jmlapre opened this issue Oct 4, 2024 · 2 comments
Open

Consider using ccache #1153

jmlapre opened this issue Oct 4, 2024 · 2 comments
Assignees

Comments

@jmlapre
Copy link
Member

jmlapre commented Oct 4, 2024

ccache is a tool that caches (the hash of) files and compiler flags such that subsequent identical compilations can be returned much faster. The Trilinos project uses it and has gotten decent speedups. We should consider using it as well.

@jwilso
Copy link
Contributor

jwilso commented Oct 8, 2024

If you show me how to configure it, we can coordinate on getting this working.

@jmlapre
Copy link
Member Author

jmlapre commented Oct 9, 2024

So to get started, install ccache and set the following environment variables:

export CCACHE_NODISABLE=true
export CCACHE_DIR=${CCACHE_BIN/ccache}
export CCACHE_BASEDIR="$HOME" # we may not need this setting
export CCACHE_NOHARDLINK=true
export CCACHE_UMASK=002
export CCACHE_MAXSIZE=100G

We need to make sure that we have a large enough volume to hold all of the objects that get generated when we do our nightly tests. 100G is what we use on Trilinos; we may not need that much space. After that it's a lot of tinkering for the most part to check if the cache is behaving as expected...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants