Para-virtualization support for ARM on Genode
Praveen B
srinivasprv at ...9...
Fri Sep 26 11:16:19 CEST 2014
Hi Stefan,
Thank you for the information.
Can you explain how we can run the two tests, Network performance and
compiling Genode's core on Genode tests?
We will use latest Fiasco.OC kernel by modifying etc/foc.conf, if version
matters.
For linux performance we will use standard tools.
Regards
Praveen
On Thu, Sep 25, 2014 at 6:44 PM, Stefan Kalkowski <
stefan.kalkowski at ...1...> wrote:
> Hi Praveen,
>
> On 09/25/2014 12:12 PM, Praveen B wrote:
> > Hi Stefan, (Sorry I was in a hurry and mentioned Norman in my previous
> mail)
> >
> > I can run L4Linux, on i.MX6 board with Genode on Fiasco.OC kernel.
> >
> > But there is one confusion.
> > Is Genode running as an application in L4Re? How are L4re, Genode and
> > L4Linux related in the port for Fiasco.OC kernel?
>
> Genode isn't running as an application in L4Re. L4Linux in its
> unmodified form uses L4Re bindings, as well as Fiasco.OC kernel
> bindings. Our version of L4Linux in Genode replaces the L4Re library
> with a Genode specific one that implements the same API. However,
> Genode's L4Linux version is tied to the Fiasco.OC kernel bindings, like
> the original one.
>
> >
> > Can you give an estimate of how much is the performance drawback of
> > running Genode over Fiasco.OC kernel over base-hw?
> > How do we go about measuring the performance difference?
>
> Well, as always this is a matter of what kind of performance test you
> do. I would be very cautious in judging performance in general.
>
> I can provide exactly two kinds of measurements we're doing regularily.
>
> The first is a network performance test (I/O burden), which measures
> throughput of packets within a defined time range. The following numbers
> are measured on a Cortex A9 Pandaboard:
>
> |---------------------------------------|
> | | Genode/Fiasco.OC | Genode/HW |
> |---------------------------------------|
> | RX | 70.2 Mbit/s | 88.8 Mbit/s |
> |---------------------------------------|
> | TX | 89.7 MBit/s | 93.7 MBit/s |
> |---------------------------------------|
>
> The second is compiling Genode's core process on top of Genode. The
> following numbers are measured on a Cortex A15 Arndale board. With
> Fiasco.OC the whole test takes 492 seconds, and on the HW-kernel it
> takes 216 seconds. This test spawns a lot of child processes, and
> destroys them again. Thereby everything is done sequentially.
> Fiasco.OC's SMP implementation suffers from a performance weakness when
> it comes to kernel object deletion. However, we use an already outdated
> version of Fiasco.OC. It might be that the developers of Fiasco.OC
> removed this performance weakness in the meantime.
>
> However, when it comes to L4Linux, most performance critical
> functionality (e.g. paging code) is done using kernel primitives only.
> That said, the difference of the runtime performance of L4Linux on top
> of L4Re or Genode should be less important in contrast to ordinary
> Genode applications. But I haven't measured it in the past.
>
> >
> > We need only one virtual linux as Mr.Madhu mentioned. But trustzone is
> > not yet working for i.MX6 board and another student, Chirag, is working
> > on that. We will look into that solution once trustzone works.
> >
> > But Which one of the three solutions might be the better solution in
> > terms of performance?
> > I think it is Trustzone VM as the guest runs as there is no
> > virtualization overhead of CPU and Memory. Please clarify.
>
> I would assume the same, especially when the VM uses a lot of hardware
> devices on its behalf. But when doing heavy I/O related stuff on
> virtualized devices it might be different. As the world switch between
> non-secure/secure world is more costly than a normal context switch, and
> the memory transfer (using non-cached memory) is more costly too, a
> para-virtualized guest in the secure world might be cheaper. Again it
> depends on the use-case, and you'll have to measure it, if performance
> is such an issue.
>
> Regards
> Stefan
>
> >
> > Thanks in advance
> >
> > Regards
> > Praveen,
> > IIT Madras
> >
> >
> > On Mon, Sep 22, 2014 at 8:37 PM, Praveen B <srinivasprv at ...9...
> > <mailto:srinivasprv at ...9...>> wrote:
> >
> > Norman,
> > Thank you for the reply.
> >
> >
> > On Mon, Sep 22, 2014 at 3:25 PM, Stefan Kalkowski
> > <stefan.kalkowski at ...1...
> > <mailto:stefan.kalkowski at ...1...>> wrote:
> >
> > Hi,
> >
> > On 09/22/2014 08:26 AM, Praveen B wrote:
> > > Hi
> > >
> > > We are able to run Genode-14.08 on i.MX6 board.
> > > Now I am planning to add support for virtualization for Genode
> on i.MX6.
> > >
> > > As the processor is Cortex-A9, it does not have virtualization
> > > extensions. So I am planning to implement a hypervisor to run
> > > para-virtualized linux, similar to the one proposed in the
> following paper,
> > >
> http://systems.cs.columbia.edu/archive/pub/2014/03/kvm-arm-the-design-and-implementation-of-the-linux-arm-hypervisor/
> >
> > The paper you're refering to doesn't use a para-virtualization
> > approach,
> > but uses hardware assisted virtualization.
> >
> >
> > I'm sorry. That was wrong link.
> > The paper
> > is, http://systems.cs.columbia.edu/archive/pub/2010/07/kvm-for-arm/
> >
> >
> >
> > >
> > > I am not sure that would work for ARMv7 as they have only
> tested for
> > > ARMv5. Can you suggest any other para-virtualization solutions
> preferred
> > > for the implementation of Genode. I saw L4Linux but it is a
> port of
> > > linux to L4Re and not to the kernel itself. On the other hand,
> > > SierraVisor and Xen are bare metal hypervisors.
> >
> > You're right vanilla L4Linux is tied to L4Re, but we've a port of
> > L4Linux that runs on Genode, but on Fiasco.OC only.
> > Alternatively, if
> > one instance of Linux is enough for your scenario, you might use
> the
> > normal world of TrustZone to ease up para-virtualization, as you
> > don't
> > have to implement CPU virtualization on your own, but other
> devices
> > only. The third alternative of course is to para-virtualize
> > Linux from
> > scratch.
> >
> >
> > We will use the first option, that is, L4Linux with Genode on
> Fiasco.OC.
> > Thank you
> >
> > Regards
> > Praveen
> >
> >
> > >
> > > The road map for Genode 14.11 says virtualization support for
> Cortex-A7.
> > > I assume you will be using virtualization extensions and not a
> > > para-virtualization solution.
> >
> > Yes, we're planning to support hardware-assisted virtualization,
> > although it should be called Cortex-A15 instead of Cortex-A7.
> > Nevertheless, the difference should be negligible.
> >
> > >
> > > Can you suggest which is the best place to start. Should I
> implement a
> > > VMM similar to tz_vmm server or should it be implemented in
> base-hw as
> > > VMM should be in supevisor mode and not user mode.
> >
> > If you're planning to build a para-virtualized solution on your
> > own, I
> > would strongly recommend to follow the spirit of Genode's
> > microkernel
> > based architecture. To minimize the trusted computing base (TCB)
> > of all
> > applications, the kernel shouldn't include code that is used
> > just by a
> > corner-case (para-virtualization) application. Instead use the
> > scheme of
> > having the virtual machine monitor within the user-mode.
> > Thereby, the
> > VMM might be linked together with the para-virtualized VM, like
> > it is
> > done in the L4Linux approach, or you change to a disjunct VMM
> task
> > whenever the VM traps.
> >
> > Regards
> > Stefan
> >
> > >
> > > Regards
> > > Praveen Srinivas
> > > M.Tech 2nd Year,
> > > CSE, IIT Madras
> > >
> > >
> > >
> >
> ------------------------------------------------------------------------------
> > > Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
> > > Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI
> > DSS Reports
> > > Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White
> > paper
> > > Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog
> > Analyzer
> > >
> >
> http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
> > >
> > >
> > >
> > > _______________________________________________
> > > genode-main mailing list
> > > genode-main at lists.sourceforge.net
> > <mailto:genode-main at lists.sourceforge.net>
> > > https://lists.sourceforge.net/lists/listinfo/genode-main
> > >
> >
> > --
> > Stefan Kalkowski
> > Genode Labs
> >
> > http://www.genode-labs.com/ · http://genode.org/
> >
> >
> ------------------------------------------------------------------------------
> > Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
> > Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS
> > Reports
> > Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White
> paper
> > Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog
> Analyzer
> >
> http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
> > _______________________________________________
> > genode-main mailing list
> > genode-main at lists.sourceforge.net
> > <mailto:genode-main at lists.sourceforge.net>
> > https://lists.sourceforge.net/lists/listinfo/genode-main
> >
> >
> >
> >
> >
> >
> ------------------------------------------------------------------------------
> > Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
> > Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
> > Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
> > Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
> >
> http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
> >
> >
> >
> > _______________________________________________
> > genode-main mailing list
> > genode-main at lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/genode-main
> >
>
> --
> Stefan Kalkowski
> Genode Labs
>
> http://www.genode-labs.com/ · http://genode.org/
>
>
> ------------------------------------------------------------------------------
> Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
> Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
> Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
> Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
>
> http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
> _______________________________________________
> genode-main mailing list
> genode-main at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.genode.org/pipermail/users/attachments/20140926/5a2122de/attachment.html>
More information about the users
mailing list