--- Begin Message ---
Subject: |
[PATCH 0/3] Improve store caching; improve 'map/accumulate-builds' performance |
Date: |
Fri, 13 May 2022 16:59:47 +0200 |
Hello!
The first patch improves cache handling, providing a generic
way to trace caches. The second patch adds a separate package/graft
cache, as was previously suggested in a comment. The cache hit rate
can be seen by setting GUIX_PROFILING:
--8<---------------cut here---------------start------------->8---
$ time GUIX_PROFILING=package-graft-cache ./pre-inst-env guix home build -v1 -n
~/src/configuration/home-config.scm
28.5 MB would be downloaded
Package Graft Cache:
fresh caches: 1
lookups: 794
hits: 784 (98.7%)
cache size: 10 entries
real 0m7.953s
user 0m9.091s
sys 0m0.291s
--8<---------------cut here---------------end--------------->8---
The last patch improves performance in the presence of grafts by trimming
exploration of the call tree in ‘map/accumulate-builds’. This is very
much a heuristic, but it does help significantly for ‘guix system’,
‘guix home’, or ‘guix package’ with many packages.
Thoughts?
Ludo’.
Ludovic Courtès (3):
store: 'mcached' users can specify a cache ID.
packages: Use separate package/graft cache.
store: Use a decaying cutoff in 'map/accumulate-builds'.
guix/packages.scm | 12 ++++--
guix/store.scm | 104 +++++++++++++++++++++++++++++++++-------------
2 files changed, 84 insertions(+), 32 deletions(-)
base-commit: 0b4300d4fd8c972f0cb9d6751fc824b9a065b780
--
2.36.0
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#55398: [PATCH 0/3] Improve store caching; improve 'map/accumulate-builds' performance |
Date: |
Thu, 19 May 2022 00:10:18 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) |
Ludovic Courtès <ludo@gnu.org> skribis:
> store: 'mcached' users can specify a cache ID.
> packages: Use separate package/graft cache.
> store: Use a decaying cutoff in 'map/accumulate-builds'.
Pushed as 2f170893719e6e9fc8e19cc5f0568e20a95d92b4.
Ludo’.
--- End Message ---