All of lore.kernel.org
 help / color / mirror / Atom feed
From: Marcelo Tosatti <mtosatti@redhat.com>
To: Mark Langsdorf <mark.langsdorf@amd.com>
Cc: linux-kernel@vger.kernel.org, avi@redhat.com, kvm@vger.kernel.org
Subject: Re: [PATCH][retry 3] Support Pause Filter in AMD processors
Date: Mon, 12 Oct 2009 16:17:53 -0300	[thread overview]
Message-ID: <20091012191753.GA13967@amt.cnet> (raw)
In-Reply-To: <200910061425.03191.mark.langsdorf@amd.com>

On Tue, Oct 06, 2009 at 02:25:02PM -0500, Mark Langsdorf wrote:
> >From 8ec340648103510095ff339b914706c81e9d815d Mon Sep 17 00:00:00 2001
> From: Mark Langsdorf <mark.langsdorf@amd.com>
> Date: Wed, 9 Sep 2009 22:12:51 -0500
> Subject: [PATCH] [PATCH] Support Pause Filter in AMD processors
> 
> New AMD processors (Family 0x10 models 8+) support the Pause
> Filter Feature.  This feature creates a new field in the VMCB
> called Pause Filter Count.  If Pause Filter Count is greater
> than 0 and intercepting PAUSEs is enabled, the processor will
> increment an internal counter when a PAUSE instruction occurs
> instead of intercepting.  When the internal counter reaches the
> Pause Filter Count value, a PAUSE intercept will occur.
> 
> This feature can be used to detect contended spinlocks,
> especially when the lock holding VCPU is not scheduled.
> Rescheduling another VCPU prevents the VCPU seeking the
> lock from wasting its quantum by spinning idly.
> 
> Experimental results show that most spinlocks are held
> for less than 1000 PAUSE cycles or more than a few
> thousand.  Default the Pause Filter Counter to 3000 to
> detect the contended spinlocks.
> 
> Processor support for this feature is indicated by a CPUID
> bit.
> 
> On a 24 core system running 4 guests each with 16 VCPUs,
> this patch improved overall performance of each guest's
> 32 job kernbench by approximately 3-5% when combined
> with a scheduler algorithm thati caused the VCPU to
> sleep for a brief period. Further performance improvement
> may be possible with a more sophisticated yield algorithm.
> 
> This patch depends on the changes to the kvm code from
> "KVM:VMX: Add support for Pause Loop Exiting"
> http://www.mail-archive.com/kvm@vger.kernel.org/msg23089.html
> 
> -Mark Langsdorf
> Operating System Research Center
> AMD
> 
> Signed-of-by: Mark Langsdorf <mark.langsdorf@amd.com>

Applied, thanks.


      reply	other threads:[~2009-10-12 19:19 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-10-02 19:49 [PATCH][retry 2] Support Pause Filter in AMD processors Mark Langsdorf
2009-10-02 22:37 ` Joerg Roedel
2009-10-06 19:25 ` [PATCH][retry 3] " Mark Langsdorf
2009-10-12 19:17   ` Marcelo Tosatti [this message]

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=20091012191753.GA13967@amt.cnet \
    --to=mtosatti@redhat.com \
    --cc=avi@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mark.langsdorf@amd.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.