On Fri, Sep 17, 2021 at 09:44:42AM +1000, Rob Pike wrote:
Now, though, we run an OS on the machine, put a VM on
that, install a
container on that, and run another VM (or JVM) inside the container, then
maybe we're at the level where we can execute actual code. And that misses
all the extra pieces that are distributed and layered and indirected and
virtualized for management, logging, security, data warehousing, ...
It's a wonder any of it works at all.
I think a huge part of why it works is Pugs exporting the IOMMU to
user space. If I understand that work correctly, it really doesn't
matter how many layers you have, if the layers use what he did, then
the layers don't matter for I/O and I/O is usually where things get slow.
Rob, that link you sent makes my head spin. Which was probably your intent.
--lm