1. 20 Jul, 2012 1 commit
  2. 25 Sep, 2011 1 commit
    • Sasha Levin's avatar
      KVM: Intelligent device lookup on I/O bus · 743eeb0b
      Sasha Levin authored
      
      Currently the method of dealing with an IO operation on a bus (PIO/MMIO)
      is to call the read or write callback for each device registered
      on the bus until we find a device which handles it.
      
      Since the number of devices on a bus can be significant due to ioeventfds
      and coalesced MMIO zones, this leads to a lot of overhead on each IO
      operation.
      
      Instead of registering devices, we now register ranges which points to
      a device. Lookup is done using an efficient bsearch instead of a linear
      search.
      
      Performance test was conducted by comparing exit count per second with
      200 ioeventfds created on one byte and the guest is trying to access a
      different byte continuously (triggering usermode exits).
      Before the patch the guest has achieved 259k exits per second, after the
      patch the guest does 274k exits per second.
      
      Cc: Avi Kivity <avi@redhat.com>
      Cc: Marcelo Tosatti <mtosatti@redhat.com>
      Signed-off-by: default avatarSasha Levin <levinsasha928@gmail.com>
      Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
      743eeb0b
  3. 11 May, 2011 1 commit
  4. 24 Oct, 2010 1 commit
  5. 08 Sep, 2010 1 commit
  6. 01 Aug, 2010 1 commit
  7. 25 Apr, 2010 1 commit
  8. 01 Mar, 2010 2 commits
  9. 03 Dec, 2009 2 commits
  10. 10 Sep, 2009 1 commit
  11. 24 Mar, 2009 1 commit
  12. 15 Feb, 2009 1 commit
  13. 31 Dec, 2008 3 commits
  14. 15 Oct, 2008 5 commits
  15. 20 Jul, 2008 1 commit
  16. 06 Jun, 2008 1 commit
  17. 27 Apr, 2008 1 commit
  18. 30 Jan, 2008 14 commits
  19. 13 Oct, 2007 1 commit