xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Andre Przywara <andre.przywara@amd.com>
To: Keir Fraser <keir.fraser@eu.citrix.com>
Cc: xen-devel <xen-devel@lists.xensource.com>
Subject: Re: [PATCH] x86/hvm: accelerate IO intercept handling
Date: Fri, 5 Mar 2010 16:49:49 +0100	[thread overview]
Message-ID: <4B91281D.7010405@amd.com> (raw)
In-Reply-To: <C7B6CB12.C524%keir.fraser@eu.citrix.com>

Keir Fraser wrote:
> On 05/03/2010 14:36, "Andre Przywara" <andre.przywara@amd.com> wrote:
> 
>> I simply boot tested both versions and ran some simple benchmarks.
>> A micro benchmark (hammering an I/O port in a tight loop) shows a
>> significant performance improvement (down to 66% of the time needed to
>> handle the intercept on a K8, measured in the guest with TSC).
>> Even with reading a 1GB file from an emulated IDE harddisk (Dom0 cached)
>> I could get a  4-5% improvement.
>> We found some guests (e.g. the TCP stack in some Windows version) which
>> exercise the PM-Timer I/O port (0x1F48) very often (multiple 10,000
>> times per second), these workloads also benefit from this patch.
> 
> By how much? I mean, the microbenchmark and 5% speedup on our poor-man's IO
> path are not very interesting.
Educated estimation: Sysmark productivity should give about 0.5%, 
Passmark TCP localhost transfer on Windows 2008R2 should improve about 5%.

 > Unless the speedup on the only
> possibly-interesting workload you mention is significant, this whole
> optimisation seems unnecessary.
Actually it is missing enablement. What is the purpose of going through 
the emulator (mapping and walking guest page tables, reading guest 
instruction memory, decoding x86 code) when you don't have to? KVM is 
implementing this for quite some time now.

And, after all, low hanging fruits are growing higher nowadays, so I'd 
consider an even modest performance improvement for _every_ machine by 
just a software patch a valuable thing.

Regards,
Andre.

-- 
Andre Przywara
AMD-Operating System Research Center (OSRC), Dresden, Germany
Tel: +49 351 448 3567 12
----to satisfy European Law for business letters:
Advanced Micro Devices GmbH
Karl-Hammerschmidt-Str. 34, 85609 Dornach b. Muenchen
Geschaeftsfuehrer: Andrew Bowd; Thomas M. McCoy; Giuliano Meroni
Sitz: Dornach, Gemeinde Aschheim, Landkreis Muenchen
Registergericht Muenchen, HRB Nr. 43632

  reply	other threads:[~2010-03-05 15:49 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-05 14:36 [PATCH] x86/hvm: accelerate IO intercept handling Andre Przywara
2010-03-05 14:52 ` Keir Fraser
2010-03-05 15:49   ` Andre Przywara [this message]
2010-03-05 15:55     ` Keir Fraser

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4B91281D.7010405@amd.com \
    --to=andre.przywara@amd.com \
    --cc=keir.fraser@eu.citrix.com \
    --cc=xen-devel@lists.xensource.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).