All of lore.kernel.org
 help / color / mirror / Atom feed
From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: Avi Kivity <avi@redhat.com>
Cc: Dan Magenheimer <dan.magenheimer@oracle.com>,
	Akshay Karle <akshay.a.karle@gmail.com>,
	linux-kernel@vger.kernel.org, kvm@vger.kernel.org,
	ashu tripathi <er.ashutripathi@gmail.com>,
	nishant gulhane <nishant.s.gulhane@gmail.com>,
	amarmore2006 <amarmore2006@gmail.com>,
	Shreyas Mahure <shreyas.mahure@gmail.com>,
	mahesh mohan <mahesh6490@gmail.com>
Subject: Re: [RFC 0/2] kvm: Transcendent Memory (tmem) on KVM
Date: Thu, 15 Mar 2012 14:02:33 -0400	[thread overview]
Message-ID: <20120315180233.GF452@phenom.dumpdata.com> (raw)
In-Reply-To: <4F622E90.5080001@redhat.com>

On Thu, Mar 15, 2012 at 08:01:52PM +0200, Avi Kivity wrote:
> On 03/15/2012 07:49 PM, Dan Magenheimer wrote:
> > > One of the potential problems with tmem is reduction in performance when
> > > the cache hit rate is low, for example when streaming.
> > > 
> > > Can you test this by creating a large file, for example with
> > > 
> > >   dd < /dev/urandom > file bs=1M count=100000
> > > 
> > > and then measuring the time to stream it, using
> > > 
> > >   time dd < file > /dev/null
> > > 
> > > with and without the patch?
> > > 
> > > Should be done on a cleancache enabled guest filesystem backed by a
> > > virtio disk with cache=none.
> > > 
> > > It would be interesting to compare kvm_stat during the streaming, with
> > > and without the patch.
> >
> > Hi Avi --
> >
> > The "WasActive" patch (https://lkml.org/lkml/2012/1/25/300) 
> > is intended to avoid the streaming situation you are creating here.
> > It increases the "quality" of cached pages placed into zcache
> > and should probably also be used on the guest-side stubs (and/or maybe
> > the host-side zcache... I don't know KVM well enough to determine
> > if that would work).
> >
> > As Dave Hansen pointed out, the WasActive patch is not yet correct
> > and, as akpm points out, pageflag bits are scarce on 32-bit systems,
> > so it remains to be seen if the WasActive patch can be upstreamed.
> > Or maybe there is a different way to achieve the same goal.
> > But I wanted to let you know that the streaming issue is understood
> > and needs to be resolved for some cleancache backends just as it was
> > resolved in the core mm code.
> 
> Nice.  This takes care of the tail-end of the streaming (the more
> important one - since it always involves a cold copy).  What about the
> other side?  Won't the read code invoke cleancache_get_page() for every
> page? (this one is just a null hypercall, so it's cheaper, but still
> expensive).

That is something we should fix - I think it was mentioned in the frontswap
email thread the need for batching and it certainly seems required as those
hypercalls aren't that cheap.

  reply	other threads:[~2012-03-15 18:02 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-08 16:29 [RFC 0/2] kvm: Transcendent Memory (tmem) on KVM Akshay Karle
2012-03-15 16:42 ` Konrad Rzeszutek Wilk
2012-03-15 16:48 ` Konrad Rzeszutek Wilk
2012-03-15 16:58 ` Avi Kivity
2012-03-15 17:49   ` Dan Magenheimer
2012-03-15 18:01     ` Avi Kivity
2012-03-15 18:02       ` Konrad Rzeszutek Wilk [this message]
2012-03-15 18:10         ` Avi Kivity
2012-03-15 19:36           ` Dan Magenheimer
2012-03-15 19:46             ` Konrad Rzeszutek Wilk
2012-03-15 19:16         ` Dan Magenheimer

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=20120315180233.GF452@phenom.dumpdata.com \
    --to=konrad.wilk@oracle.com \
    --cc=akshay.a.karle@gmail.com \
    --cc=amarmore2006@gmail.com \
    --cc=avi@redhat.com \
    --cc=dan.magenheimer@oracle.com \
    --cc=er.ashutripathi@gmail.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mahesh6490@gmail.com \
    --cc=nishant.s.gulhane@gmail.com \
    --cc=shreyas.mahure@gmail.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.