[dpdk-dev] [PATCH v4] vhost: improve dirty pages logging performance

Tiwei Bie tiwei.bie at intel.com
Thu May 17 14:13:01 CEST 2018


On Thu, May 17, 2018 at 02:01:52PM +0200, Maxime Coquelin wrote:
> Hi Tiwei,
> 
> On 05/17/2018 01:44 PM, Maxime Coquelin wrote:
> > This patch caches all dirty pages logging until the used ring index
> > is updated.
> > 
> > The goal of this optimization is to fix a performance regression
> > introduced when the vhost library started to use atomic operations
> > to set bits in the shared dirty log map. While the fix was valid
> > as previous implementation wasn't safe against concurrent accesses,
> > contention was induced.
> > 
> > With this patch, during migration, we have:
> > 1. Less atomic operations as only a single atomic OR operation
> > per 32 or 64 (depending on CPU) pages.
> > 2. Less atomic operations as during a burst, the same page will
> > be marked dirty only once.
> > 3. Less write memory barriers.
> > 
> > Fixes: 897f13a1f726 ("vhost: make page logging atomic")
> > 
> > Cc:stable at dpdk.org
> > 
> > Cc: Tiwei Bie<tiwei.bie at intel.com>
> > Suggested-by: Michael S. Tsirkin<mst at redhat.com>
> > Signed-off-by: Maxime Coquelin<maxime.coquelin at redhat.com>
> 
> I missed to add your:
> Reviewed-by: Tiwei Bie <tiwei.bie at intel.com>
> 
> that you replied to v3, and since the changes in v4 were suggested by
> you, I guess it still applies.

Yeah. Thanks! :)

Best regards,
Tiwei Bie


More information about the dev mailing list