[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#44175: [optimization] Grafting is too slow
From: |
Maxim Cournoyer |
Subject: |
bug#44175: [optimization] Grafting is too slow |
Date: |
Fri, 23 Oct 2020 09:07:35 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) |
Hello Lars,
Lars-Dominik Braun <ldb@leibniz-psychology.org> writes:
> Hi Maxim,
>
>> Judging from the above, it seems this issue has been resolved.
> grafting is still a performance issue imo. Compare for example:
>
> $ time guix environment --ad-hoc --search-paths r-learnr
> guix environment --ad-hoc --search-paths r-learnr 5,90s user 0,09s system
> 210% cpu 2,844 total
> $ time guix environment --ad-hoc --search-paths r-learnr --no-grafts
> guix environment --ad-hoc --search-paths r-learnr --no-grafts 2,03s user
> 0,08s system 164% cpu 1,277 total
I'm opening a new issue to track optimizing the grafting code, since
it's independent of environments (grafts are applied anytime a
derivation is built, AFAICT). Grafting is inherently IO-bound, since it
must scan all the built artifacts of a grafted package (from its
dependency that was 'replaced' all the way up), if I understood
correctly. "info (guix) Security Updates" gives some information.
Perhaps we could benchmark how fast our code currently is for grafting,
and compare it with the fastest sed-like utility out there, as a
starting point, to have an idea of how much there is to gain from
optimization.
Maxim
bug#41702: `guix environment` performance issues, Ludovic Courtès, 2020/10/23