GNU bug report logs -
#70303
[PATCH 0/2] Use guile-final for grafting.
Previous Next
Reported by: Efraim Flashner <efraim <at> flashner.co.il>
Date: Tue, 9 Apr 2024 10:05:02 UTC
Severity: normal
Tags: patch
Done: Efraim Flashner <efraim <at> flashner.co.il>
Bug is archived. No further changes may be made.
Full log
Message #14 received at 70303 <at> debbugs.gnu.org (full text, mbox):
Howdy!
Efraim Flashner <efraim <at> flashner.co.il> skribis:
> Over the years the grafting code has changed bit by bit, with various
> attempts to speed it up. By switching the grafts to not use parallelism
> in rewriting the leaves we can finally switch the guile-for-grafts to be
> guile-final. The segfault is still there if we perform the grafts in
> parallel, but I believe it is fast enough that it should be fine to do
> them sequentially.
Could you time the grafting derivation of, say, libreoffice or
ungoogled-chromium?
Typically I’d do it along these lines:
--8<---------------cut here---------------start------------->8---
$ guix build libreoffice
/gnu/store/24is7ypdx6sm56mkclxdx4hyj7yg4smb-libreoffice-7.6.3.1
$ sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'
$ time guix build libreoffice --check
The following graft will be made:
/gnu/store/wdjqpxm2kbdvq7qlrzyjxb244zn3s3bv-libreoffice-7.6.3.1.drv
applying 137 grafts for libreoffice-7.6.3.1 ...
grafting '/gnu/store/5flppg3h8y235di2ilr3sx878gfl82db-libreoffice-7.6.3.1' -> '/gnu/store/24is7ypdx6sm56mkclxdx4hyj7yg4smb-libreoffice-7.6.3.1'...
successfully built /gnu/store/wdjqpxm2kbdvq7qlrzyjxb244zn3s3bv-libreoffice-7.6.3.1.drv
successfully built /gnu/store/wdjqpxm2kbdvq7qlrzyjxb244zn3s3bv-libreoffice-7.6.3.1.drv
/gnu/store/24is7ypdx6sm56mkclxdx4hyj7yg4smb-libreoffice-7.6.3.1
real 0m14.921s
user 0m7.588s
sys 0m0.389s
--8<---------------cut here---------------end--------------->8---
(That’s on my 4-core i7.)
It’s a bummer that the segfault is still there. I remember week-long
‘rr’ debugging sessions in the past, where I did find a few issues; I
should try again but uh…
> There's probably room in replace-store-references in (guix build graft)
> for changes if we're not going to use guile-2.0 here anymore.
I believe ‘tests/grafts.scm’ may run some of this code under Guile 2.0
(using the ‘guile-bootstrap’ tarball provided for the tests).
Thanks,
Ludo’.
This bug report was last modified 307 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.