Re: Proposal for Remote Execution



On Fri, 2018-05-11 at 10:17 +0100, Jim MacArthur wrote:
On 11/05/18 09:32, Jürg Billeter wrote:
On Thu, 2018-05-10 at 15:31 +0100, Jim MacArthur wrote:
It seems to me that the existing filesystem-based system could just run
through our CAS-FUSE when we implement that. I can't think of any
particular reason that would be slow, although it'd be worth testing
when we have it. If that does turn out to be a viable option, doesn't
that make the CAS-backed virtual directory implementation (and in fact
the whole virtual directory system) redundant?

Staging build dependencies and sources will be much faster with the
CAS-backed virtual directory system. You can virtually import/copy a
directory tree with thousands of files with a single Merkle tree
manipulation. Via FUSE you'd still need a syscall for every file and
that syscall would in turn require a context switch on the FUSE
implementation as well, i.e., it would be even slower than the current
staging using the local filesystem.

Jürg


Wouldn't the move or copy of a directory via the FUSE map to such a 
single operation?

One instance of a FUSE mount will only be able to provide access to one
Merkle tree (and subdirectories/files), so we can't perform a mount-
internal move/rename operation for staging build dependencies and
sources. And copying a whole directory tree is anyway never a single
operation in POSIX.

Jürg


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