[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#55398] [PATCH 0/3] Improve store caching; improve 'map/accumulate-b
From: |
Ludovic Courtès |
Subject: |
[bug#55398] [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
- [bug#55398] [PATCH 0/3] Improve store caching; improve 'map/accumulate-builds' performance,
Ludovic Courtès <=