Hi Praveen, On 09/26/2014 11:16 AM, Praveen B wrote: > 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?
The network performance was measured using the run script "netperf_lwip", the Genode core compilation is measured using "noux_tool_chain_auto". Both run scripts can be found in the 'ports' repository, under 'repos/ports/run'. > We will use latest Fiasco.OC kernel by modifying etc/foc.conf, if version > matters. It's just an assumption, as I said I don't know whether the developers of Fiasco.OC fixed the SMP performance weakness in a more recent version. The following e-mail from Christian Prochaska on the l4-hackers mailing list explains the SMP problem in more detail: http://permalink.gmane.org/gmane.comp.micro-kernel.l4.devel/4896 Just a warning: if you're planning to upgrade to a more recent version of Fiasco.OC, don't expect that everthing will run out-of-the-box. Regards Stefan > > For linux performance we will use standard tools. > > Regards > Praveen > > On Thu, Sep 25, 2014 at 6:44 PM, Stefan Kalkowski < > [email protected]> 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 <[email protected] >>> <mailto:[email protected]>> wrote: >>> >>> Norman, >>> Thank you for the reply. >>> >>> >>> On Mon, Sep 22, 2014 at 3:25 PM, Stefan Kalkowski >>> <[email protected] >>> <mailto:[email protected]>> 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 >>> > [email protected] >>> <mailto:[email protected]> >>> > 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 >>> [email protected] >>> <mailto:[email protected]> >>> 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 >>> [email protected] >>> 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 >> [email protected] >> 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 > [email protected] > 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 [email protected] https://lists.sourceforge.net/lists/listinfo/genode-main
