‘guix system vm-image’ spends a very long time “registering closures”

  • Done
  • quality assurance status badge
Details
One participant
  • Ludovic Courtès
Owner
unassigned
Submitted by
Ludovic Courtès
Severity
important
L
L
Ludovic Courtès wrote on 31 Aug 2018 12:07
‘guix system vm-image’ spends a very long time “registering closures”
(address . bug-guix@gnu.org)(name . Leo Famulari)(address . leo@famulari.name)
87wos6q27c.fsf@gnu.org
Hi,

A couple of days ago, Leo reported that ‘guix system vm-image’ spends a
very long time in the “registering closures” phase:

Toggle snippet (35 lines)
<lfam> I wonder about the slowness of 'registering closures' with `guix system
vm-image` and similiar commands. I don't remember this taking so long
in the past [22:52]

[...]

<lfam> Created a bare-bones VM takes ~90 minutes for me recently
<lfam> s/Created/Creating
<civodul> with vm-image?
<lfam> Yes

[...]

<lfam> With #:reset-timestamps #f, I cancelled the task after 10 minutes of
'registering closures' [23:33]

[...]

<civodul> lfam: i added some pk's and it seems that it's deduplucation that's
killing us [00:41]
<civodul> because it involves retraversing each store item and reading each
file [00:42]
<lfam> It does it for each file?
<lfam> Or, you could just point me to the relevant code so I can learn it :)
<civodul> yeah, it has to read them to be able to determine if there are
duplicates
<civodul> (guix store database) calls the deduplication code [00:43]
<civodul> which is in (guix store deduplication)
<civodul> (reepca's code from last year's GSoC)
<civodul> maybe c45477d2a1a651485feede20fe0f3d15aec48b39 or something close
inadvertently turned on deduplication [00:44]
<civodul> so in (gnu system vm), we could pass #:deduplicate? #f to
'root-partition-initializer'

Ludo’.
L
L
Ludovic Courtès wrote on 2 Sep 2018 15:49
control message for bug #32600
(address . control@debbugs.gnu.org)
878t4kau1t.fsf@gnu.org
severity 32600 important
L
L
Ludovic Courtès wrote on 23 Sep 2018 23:38
Re: bug#32600: ‘guix system vm-imag e’ spends a very long time “registe ring closures”
(address . 32600-done@debbugs.gnu.org)(name . Leo Famulari)(address . leo@famulari.name)
87mus7rj2c.fsf@gnu.org
Hello,

ludo@gnu.org (Ludovic Courtès) skribis:

Toggle quote (5 lines)
> A couple of days ago, Leo reported that ‘guix system vm-image’ spends a
> very long time in the “registering closures” phase:

> <lfam> Created a bare-bones VM takes ~90 minutes for me recently

As of commit fce225471128c4a5246342b3aa1b7e53a8066211, ‘guix system
vm-image bare-bones.tmpl’ runs in ~2m42s on my SSD-based laptop. The
key commits here are fce225471128c4a5246342b3aa1b7e53a8066211 and
bb3b6ccb05550fbfbeb459c68819a752327d6e1e.

Regarding deduplication (commit
b5460d95e970608bee7a794590be1b051b57d3a3), I found that it doesn’t
change the image size of bare-bones.tmpl (1.2G), but enabling it makes
things slower, ~6m.

Lemme know how it goes for you!

Thanks,
Ludo’.
Closed
?