All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paul Brook <paul@codesourcery.com>
To: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH] Huge TLB performance improvement
Date: Sun, 12 Nov 2006 14:44:46 +0000	[thread overview]
Message-ID: <200611121444.46898.paul@codesourcery.com> (raw)
In-Reply-To: <20061112142938.GC4040@networkno.de>

> > Other targets have a hardware managed TLB. On a hardware managed TLB the
> > OS treats it as if it were infinite size, and invalidation only occurs
> > when a OS changes the mappings. On a software managed TLB "flushes" are
> > more likely to occur during normal operation as TLB slots are reused.
>
> The excessive flushing for mips happens because Qemu doesn't properly
> model the hardware's ASID handling.

Are you sure? IIUC changing the ASID causes a full qemu TLB flush. The code 
we're tweaking here is for single page flush.

Actually that gives me an idea. When a TLB entry with a different ASID gets 
evicted we currently flush that page. This should be a no-op because we 
already did a full flush when the ASID changed.

The other explanation is that the gest OS is manually doing a full TLB flush 
by manually evicting all the TLB entries. I'd hope that a sane guest OS would 
only do that as a last resort though.

Paul

  reply	other threads:[~2006-11-12 14:44 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-03-06 14:59 [Qemu-devel] [PATCH] Huge TLB performance improvement Thiemo Seufer
2006-11-05 15:38 ` Daniel Jacobowitz
2006-11-12  1:10   ` Daniel Jacobowitz
2006-11-12 11:49     ` Laurent Desnogues
2006-11-12 13:52       ` Thiemo Seufer
2006-11-12 14:08       ` Paul Brook
2006-11-12 14:29         ` Thiemo Seufer
2006-11-12 14:44           ` Paul Brook [this message]
2006-11-12 15:07             ` Daniel Jacobowitz
2006-11-12 15:24               ` Daniel Jacobowitz
2006-11-12 15:26             ` Thiemo Seufer
2006-11-12 16:56           ` Daniel Jacobowitz
2006-11-12 17:49             ` Daniel Jacobowitz
2006-11-12 18:02             ` Dirk Behme
2006-11-12 22:13               ` Daniel Jacobowitz
2006-11-12 20:42     ` Paul Brook

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=200611121444.46898.paul@codesourcery.com \
    --to=paul@codesourcery.com \
    --cc=qemu-devel@nongnu.org \
    /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.