mozilla
sccache
Blog
Docs
Changelog
Blog
Docs
Changelog
Overview
Branches
Benchmarks
Runs
Performance History
Latest Results
Avoid config conflicts while set_env manipulations
Felixoid:add-basedir-configuration
6 hours ago
Avoid double-caching when ccache is installed in PATH On Linux, ccache is typically installed in $PATH as /usr/lib64/ccache/g++ or similar. If we keep it there, all compilations will be cached by both ccache and sccache. While the user could easily disable ccache with CCACHE_DISABLE, it's reasonable to assume many will forget and will have their disk space doubly consumed by both caches. Better to recognize this and disable ccache under sccache. This patch does this by removing the ccache binary paths from $PATH. Fixes #2519
avikivity:disable-ccache
6 hours ago
Calculate rustc outputs concurrently with other hashing tasks Currently, `sccache` invokes `rustc` twice for generating the hash key: once for the inputs and env-deps (`--emit dep-info`), and another time for the output file names (`--print file-names`). However, the latter is invoked only after the former finishes. There is no reason for this dependency. Run `get_compiler_outputs` concurrently with the other `rustc` and hashing tasks in `RustHasher::generate_hash_key`. I initially thought that these two invocations could be merged together, but `--print` stop compilation before the `--emit` is evaluated, so I went with the simpler approach of just running them at the same time.
DaniPopes:rustc-outputs
6 hours ago
fix: use single-threaded tokio runtime in sccache client The sccache client was using Runtime::new() which creates a multi-threaded tokio runtime with worker threads equal to the number of CPU cores. On high-core-count servers running many parallel builds, this created an excessive number of threads. For example: - 96 vCPU server - 10 concurrent make invocations - Each make using -j16 - Result: 96 × 10 × 16 = 15,360 threads created by sccache wrappers While these threads are short-lived, with continuous build pipelines this constant thread creation/destruction causes unnecessary overhead. The sccache client only performs simple I/O operations (connecting to server, sending requests, receiving responses) and doesn't need worker threads. This change replaces all client-side Runtime::new() calls with Builder::new_current_thread().enable_all().build() to use a single-threaded runtime, reducing thread count from num_cpus to 1 per client invocation.
venkyt-arista:venkyt/single-threaded-client
6 hours ago
Write stats to cache_stats_file after compile Signed-off-by: Zack Cerza <zack@cerza.org>
zmc:save-stats
6 hours ago
chore: update to gzp 2
tottoto:update-to-gzp-2
6 hours ago
Avoid hashing CARGO_ variables that are redundant or don't affect results
kornelski:more-envs
6 hours ago
Merge branch 'main' into client-thread
zsrkmyn:client-thread
6 hours ago
Active Branches
Add `SCCACHE_BASEDIRS` support
last run
6 hours ago
#2521
CodSpeed Performance Gauge
0%
Avoid double-caching when ccache is installed in PATH
last run
6 hours ago
#2524
CodSpeed Performance Gauge
0%
Calculate rustc outputs concurrently with other hashing tasks
last run
6 hours ago
#2465
CodSpeed Performance Gauge
0%
© 2026 CodSpeed Technology
Home
Terms
Privacy
Docs