From patchwork Fri Jul 6 07:04:44 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxime Coquelin X-Patchwork-Id: 42456 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 0F4DC1B50A; Fri, 6 Jul 2018 09:04:55 +0200 (CEST) Received: from mx1.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by dpdk.org (Postfix) with ESMTP id 74CB41B468 for ; Fri, 6 Jul 2018 09:04:53 +0200 (CEST) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com [10.11.54.6]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id DC1A8DFF8; Fri, 6 Jul 2018 07:04:52 +0000 (UTC) Received: from localhost.localdomain (unknown [10.36.112.10]) by smtp.corp.redhat.com (Postfix) with ESMTP id DBCF72166BA9; Fri, 6 Jul 2018 07:04:51 +0000 (UTC) From: Maxime Coquelin To: tiwei.bie@intel.com, zhihong.wang@intel.com, dev@dpdk.org Cc: Maxime Coquelin Date: Fri, 6 Jul 2018 09:04:44 +0200 Message-Id: <20180706070449.1946-1-maxime.coquelin@redhat.com> X-Scanned-By: MIMEDefang 2.78 on 10.11.54.6 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.2]); Fri, 06 Jul 2018 07:04:52 +0000 (UTC) X-Greylist: inspected by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.2]); Fri, 06 Jul 2018 07:04:52 +0000 (UTC) for IP:'10.11.54.6' DOMAIN:'int-mx06.intmail.prod.int.rdu2.redhat.com' HELO:'smtp.corp.redhat.com' FROM:'maxime.coquelin@redhat.com' RCPT:'' Subject: [dpdk-dev] [PATCH v4 0/5] vhost: generalize buffer vectors X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" This series is again preliminray work to ease packed ring layout integration. Main changes are using vector buffres also in the dequeue path, and perform IOVA to HVA translation at vectors fill time. I still have to run more benchmarks, but PVP benchmarks does not show performance changes. Good thing is that it saves ~140 further lines. Changes since v3: ================= - Fix dequeue_zero_copy last_used_idx update (Tiwei) - Remove "vhost: make gpa to hpa failure an error" patch (Tiwei) Changes since v2: ================= - check vec_id doesn't overflow (Tiwei) - Fix perm parameters passed to fill_vec_buf (Tiwei) - Remove extra space in variable assignation (Tiwei) Maxime Coquelin (5): vhost: use shadow used ring in dequeue path vhost: use buffer vectors in dequeue path vhost: improve prefetching in dequeue path vhost: prefetch first descriptor in dequeue path vhost: improve prefetching in enqueue path lib/librte_vhost/vhost.h | 1 + lib/librte_vhost/virtio_net.c | 517 ++++++++++++++++-------------------------- 2 files changed, 193 insertions(+), 325 deletions(-) Acked-by: Tiwei Bie