[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
02/10: store: Object cache profiling shows the number of entries.
From: |
guix-commits |
Subject: |
02/10: store: Object cache profiling shows the number of entries. |
Date: |
Tue, 23 Feb 2021 09:27:23 -0500 (EST) |
civodul pushed a commit to branch master
in repository guix.
commit 70b33d8898031d0f8623922762442f4abf6adcc4
Author: Ludovic Courtès <ludo@gnu.org>
AuthorDate: Thu Feb 18 22:25:18 2021 +0100
store: Object cache profiling shows the number of entries.
* guix/store.scm (record-cache-lookup!): Add 'size' variable; keep it
up-to-date and display it.
---
guix/store.scm | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/guix/store.scm b/guix/store.scm
index 81bb9eb..dccf8ba 100644
--- a/guix/store.scm
+++ b/guix/store.scm
@@ -1835,18 +1835,21 @@ and RESULT is typically its derivation."
(if (profiled? "object-cache")
(let ((fresh 0)
(lookups 0)
- (hits 0))
+ (hits 0)
+ (size 0))
(register-profiling-hook!
"object-cache"
(lambda ()
(format (current-error-port) "Store object cache:
fresh caches: ~5@a
lookups: ~5@a
- hits: ~5@a (~,1f%)~%"
+ hits: ~5@a (~,1f%)
+ cache size: ~5@a entries~%"
fresh lookups hits
(if (zero? lookups)
100.
- (* 100. (/ hits lookups))))))
+ (* 100. (/ hits lookups)))
+ size)))
(lambda (hit? cache)
(set! fresh
@@ -1854,7 +1857,9 @@ and RESULT is typically its derivation."
(+ 1 fresh)
fresh))
(set! lookups (+ 1 lookups))
- (set! hits (if hit? (+ hits 1) hits))))
+ (set! hits (if hit? (+ hits 1) hits))
+ (set! size (+ (if hit? 0 1)
+ (vlist-length cache)))))
(lambda (x y)
#t)))
- branch master updated (3c548c3 -> 0a912b3), guix-commits, 2021/02/23
- 03/10: gexp: Micro-optimize sexp serialization., guix-commits, 2021/02/23
- 01/10: grafts: Inline 'grafting?' and 'set-grafting'., guix-commits, 2021/02/23
- 04/10: gexp: 'gexp-inputs' returns a list of <gexp-input> records., guix-commits, 2021/02/23
- 05/10: gexp: 'gexp-inputs' returns both native and non-native inputs., guix-commits, 2021/02/23
- 08/10: gexp: Reduce allocations while traversing lists., guix-commits, 2021/02/23
- 07/10: gexp: Micro-optimize 'gexp->sexp' and 'lower-inputs'., guix-commits, 2021/02/23
- 06/10: gexp: Keep 'lower-inputs' private., guix-commits, 2021/02/23
- 09/10: gexp: Reduce allocations in 'gexp-attribute'., guix-commits, 2021/02/23
- 10/10: store: Micro-optimize object cache lookup., guix-commits, 2021/02/23
- 02/10: store: Object cache profiling shows the number of entries.,
guix-commits <=