[Android-virt] virtio-mmio at Columbia

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

 



On 9 March 2012 18:44, Alexander Golec <thejfasi at gmail.com> wrote:
> I'm an undergrad at Columbia, and I'm working on a project for a
> class to implement virtio on kvm-arm for the Cortex A15. The goal
> is to get some form of virtio up and running and measure
> performance as best we can, given that we are looking at running
> on simulators right now.

I'm afraid I think this is fundamentally misguided. You cannot
measure performance in any useful way running on the Fast Model.
The set of things which are slow in hardware are not necessarily
slow to the same extent under simulation, and some things which
are very slow in simulation do not have the same penalty when
run on real hardware. It is a long way from a simple "linear
slowdown" model. You can use the simulator to develop and test
the virtio code, but for performance evaluation you're going
to have to wait until hardware is available.

> My current approach is as follows: vanilla virtio uses PCI
> as its transport mechanism, which poses a problem for
> PCI-less ARM devices. I've looked at Peter Maydell's
> changes for using mmio as a transport for virtio, and
> I've hit on a an obstacle, namely that the code uses the
> post-39bff object API, which dropped just days after the
> kvm-a15 branch started.

I'm not sure what this "kvm-a15" branch you're referring
to is. If it's a QEMU branch and it predates the object
API landing then you don't want to be doing any serious
work on it anyway because you'll be making more work for
yourself when it comes to landing upstream.

> Here's what I was thinking: read up on both the new and
> old API and modify the changes to use the old API.

There are two reasons this doesn't make sense:
(a) we should be doing development as close to
head of QEMU master upstream as we can manage and (b)
if you really want the old pre-API-change versions you
can go and fish them out of the mailing list archives.
I did the rebase for you exactly because I thought you
wanted a version against a newer version of QEMU so
you could work on them...

> Also, Peter mentioned he wanted to perform a refactor
> to abstract away the virtio transport, be it PCI or
> mmio, a concern I will be ignoring.

The refactoring is the only interesting bit of work
remaining, since the 'prototype' virtio-mmio patches
work OK and we can't do any performance testing yet.

-- PMM


[Index of Archives]     [Linux KVM]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux