From: "Ludovic Courtès" <ludo@gnu.org>
To: 48806@debbugs.gnu.org
Cc: "Ludovic Courtès" <ludo@gnu.org>
Subject: [bug#48806] [PATCH 0/7] Generalized cache support and improved graft caching
Date: Thu, 3 Jun 2021 09:29:58 +0200 [thread overview]
Message-ID: <20210603072958.13424-1-ludo@gnu.org> (raw)
Hi!
This patch series allows us to dynamically allocate per-store-connection
caches, such that subsequently created <store-connection> records
can have the newly allocated caches.
So far there were a couple of per-connection caches; for anything else,
we’d resort to global hash tables. That’s not great because those caches
are usually valid only for one connection to a store, and only for the
duration of that session. This new feature addresses that.
The last patch uses it to have session-wide caches mapping derivations
to applicable grafts, which partly addresses the performance problems
described in <https://issues.guix.gnu.org/41702>.
Feedback welcome, including performance reports!
Thanks,
Ludo’.
Ludovic Courtès (7):
store: Support dynamic allocation of per-connection caches.
store: Generalize cache lookup recording.
grafts: Record cache lookups for profiling.
grafts: Use SRFI-71 instead of SRFI-11.
store: Remove 'references/substitutes'.
store: 'references/cached' now uses a per-session cache.
grafts: Cache the derivation/graft mapping for the whole session.
guix/grafts.scm | 56 ++++++++-----
guix/store.scm | 205 ++++++++++++++++++++++++++----------------------
tests/store.scm | 36 ---------
3 files changed, 150 insertions(+), 147 deletions(-)
--
2.31.1
next reply other threads:[~2021-06-03 7:31 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-06-03 7:29 Ludovic Courtès [this message]
2021-06-03 7:33 ` [bug#48806] [PATCH 1/7] store: Support dynamic allocation of per-connection caches Ludovic Courtès
2021-06-03 7:33 ` [bug#48806] [PATCH 2/7] store: Generalize cache lookup recording Ludovic Courtès
2021-06-03 7:33 ` [bug#48806] [PATCH 3/7] grafts: Record cache lookups for profiling Ludovic Courtès
2021-06-03 7:33 ` [bug#48806] [PATCH 4/7] grafts: Use SRFI-71 instead of SRFI-11 Ludovic Courtès
2021-06-03 7:33 ` [bug#48806] [PATCH 5/7] store: Remove 'references/substitutes' Ludovic Courtès
2021-06-03 7:34 ` [bug#48806] [PATCH 6/7] store: 'references/cached' now uses a per-session cache Ludovic Courtès
2021-06-03 7:34 ` [bug#48806] [PATCH 7/7] grafts: Cache the derivation/graft mapping for the whole session Ludovic Courtès
2021-06-03 11:59 ` [bug#48806] [PATCH 0/7] Generalized cache support and improved graft caching Lars-Dominik Braun
2021-06-03 20:39 ` Ludovic Courtès
2021-06-08 7:34 ` bug#48806: " Ludovic Courtès
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210603072958.13424-1-ludo@gnu.org \
--to=ludo@gnu.org \
--cc=48806@debbugs.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.