ELVIS/ELI I/O acceleration code / Re: [Qemu-devel] KVM call agenda for 2013-04-09

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

 





Stefan Hajnoczi <stefanha@xxxxxxxxx> wrote on 09/04/2013 06:13:47 PM:

> From: Stefan Hajnoczi <stefanha@xxxxxxxxx>
> To: Juan Quintela <quintela@xxxxxxxxxx>,
> Cc: qemu-devel qemu-devel <qemu-devel@xxxxxxxxxx>, KVM devel mailing
> list <kvm@xxxxxxxxxxxxxxx>
> Date: 09/04/2013 06:13 PM
> Subject: Re: [Qemu-devel] KVM call agenda for 2013-04-09
> Sent by: qemu-devel-bounces+abelg=il.ibm.com@xxxxxxxxxx
>
> Meeting notes on Abel's presentation:
>
> Aim: improve vhost scalability
>
> Shared vhost thread
> ==============
> Problem: Linux scheduler does not see state of virtqueues, cannot make
> good scheduling decisions
> Solution: Shared thread serves multiple VMs and therefore influences
> "I/O scheduling" instead of kernel thread per vhost device
>
> Exitless communication
> =================
>  * Polling on host to notice guest vring updates without guest pio
instruction
>    * Use CPU affinity to bind vcpus to separate cores and let polling
> run on dedicated cores
>  * Existless Interrupt (ELI) or future hardware APIC virtualization
> feature to inject virtual interrupts
> without vmexit and EOI
>
> See paper for performance results (impressive numbers):
> http://domino.research.ibm.com/library/cyberdig.nsf/papers/
> 479E3578ED05BFAC85257B4200427735/$File/h-0319.pdf
>
> Abel will publish rebased code on GitHub but does not have time to
> upstream them.
>
> The next step: QEMU/KVM community can digest the paper + patches and
> decide on ideas to upstream.

It has been a while since this KVM call but the code for ELVIS and
ELI is now available in github:
https://github.com/abelg/virtual_io_acceleration/commits/ibm-io-acceleration-3.9-github

Source-code contributors (in alphabetical order):
  Nadav Amit nadav.amit@xxxxxxxxx
  Muli Ben-Yehuda mulix@xxxxxxxxx
  Abel Gordon abelg@xxxxxxxxxx
  Nadav Har'El nyh@xxxxxxxxxxxxxxxxxxx
  Alex Landau landau.alex@xxxxxxxxx

Each commit made in September 16th represents a separate and documented
patch. Note this work is under development and more effort is required to
make
it upstream-ready. You are all welcome to join the upstreaming effort :)

A short documentation can be found in the wiki page:
https://github.com/abelg/virtual_io_acceleration/wiki/Virtual-I-O-acceleration-technologies-for-KVM

Please note this work will be presented and discussed in the upcoming KVM
forum
(October 21-23, Edinburgh, UK)


Regards,
Abel.

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux