Re: transactions in VINO

David Holland (dholland@eecs.harvard.edu)
Tue, 22 Jun 1999 16:29:35 -0400 (EDT)


> Your number was that a Vino transaction begin/end pair is 1570
> cycles on a 100 Mhz Pentium. The L4 IPC operation, if memory
> serves me, is something like 130 cycles in the case of interest,
> which would give 12x. Withdrawing the 100x figure (with
> apologies), I submit that this number amply makes my case.

First of all, I would say that comparing the cost of a transaction to
the cost of entering the kernel and saying "12x overhead" is somewhat
misleading - sure, it's true, in a way, but you really want to look at
it in the context of a complete operation that actually does something.
Not that this will probably help a great deal for operations that
aren't I/O bound (like, say, setgid().)

However, wasn't your original case related to persistence? VINO
transactions aren't persistent in that sense. That is, we make no
attempt to commit the kernel state to disk or anything, because VINO's
kernel isn't persistent; it's a "normal" kernel in that if it crashes,
you reboot.

So given that you were claiming that transactions are too slow for use
in a persistent kernel (right?) your case is actually a lot stronger:
persistent transactions would require a commit to disk and be slower
yet.

-- 
   - David A. Holland             |    VINO project home page:
     dholland@eecs.harvard.edu    | http://www.eecs.harvard.edu/vino

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/