guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Cuirass actors


From: Simon Tournier
Subject: Re: Cuirass actors
Date: Thu, 14 Sep 2023 08:49:59 +0200

Hi,

It is really cool! :-)

On Wed, 13 Sep 2023 at 23:08, Ludovic Courtès <ludo@gnu.org> wrote:

>   - The "builder" spawns derivation builds.  There are currently two
>     implementations: the local builder sends build requests to the local
>     'guix-daemon' process, while the remote build delegates builds to
>     'cuirass remote-server'.

[...]

> With this actor split, one could implement another “builder” backend,
> for instance one that talks to a Build Coordinator process.

IIUC, the current two “builder” backend are:

 + local ’guix-daemon’: the queue of derivations is processed using one
   strategy – the one implemented in C++,

 + ’cuirass remote-server’: the queue of derivations is processed using
   another strategy – implemented in Guile relying on ZeroMQ (something
   like steal of work, if I remember correctly).

Is it correct?

The Build Coordinator also implements the other actors “channel
updater”, “evaluator”, etc., right?  From my rough understanding, the
first aim of Build Coordinator is the implementation of the “builder”.
Is it correct?

My two questions are:

 1. Is the Build Coordinator able to only process the queue of
    derivations?  (being a “builder” backend).  And if yes, what is its
    strategy for processing?

 2. In this picture of actor model, would it make sense (or would it be
    possible) to replace the “builder” actor from the Cuirass one to the
    Build Coordinator one?

Cheers,
simon

     




reply via email to

[Prev in Thread] Current Thread [Next in Thread]