From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= Subject: Re: Speeding up =?utf-8?B?4oCcZ3VpeCBwdWxs4oCdOg==?= splitting modules Date: Wed, 08 Jan 2020 22:57:00 +0100 Message-ID: <87sgkpd32r.fsf@gnu.org> References: <87k1657i7j.fsf@elephly.net> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:34021) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ipJK4-0004m5-2h for guix-devel@gnu.org; Wed, 08 Jan 2020 16:57:04 -0500 In-Reply-To: <87k1657i7j.fsf@elephly.net> (Ricardo Wurmus's message of "Sun, 05 Jan 2020 21:37:36 +0100") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane-mx.org@gnu.org Sender: "Guix-devel" To: Ricardo Wurmus Cc: guix-devel@gnu.org BTW, there=E2=80=99s also the =E2=80=9CCompute Guix derivation=E2=80=9D pha= se that could be sped up, and that=E2=80=99s mostly independent of Guile. Things that could help include: =E2=80=9Crecursive Nix=E2=80=9D=C2=B9 (the = Guix derivation would itself be the result of a derivation, thus subject to substitutes), or something equivalent without special daemon support where we=E2=80=99d simply embed (guix derivations) & co. to compute the derivation in memory. Another less elegant option would be to resort to a service (Data Service or Cuirass) that would map a Guix commit to its .drv, and then fetch that .drv from substitute servers and build it. Finally, we could/should also profile that phase and see what can be done. Lastly :-), it would be great to profile this phase over time to see how it evolves. (Does the Guix Data Service already stores timings for such things?) Ludo=E2=80=99. =C2=B9 https://github.com/NixOS/nix/pull/3205