Received: by 10.223.164.202 with SMTP id h10csp352039wrb; Wed, 8 Nov 2017 18:05:05 -0800 (PST) X-Google-Smtp-Source: ABhQp+RQNdjakrMln3T8fb2wyBqWkzi5AJClNKxokRFxzui/abUDnKi/ytsXt7dtxh4NibKS0RKo X-Received: by 10.98.14.89 with SMTP id w86mr2478827pfi.195.1510193105489; Wed, 08 Nov 2017 18:05:05 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1510193105; cv=none; d=google.com; s=arc-20160816; b=jXjPhxLnJCJlYMtjPLuAzaIlKqef7YuRwnhFIA4g8PKVrrGXkbWYtlkOh4WHHvyfFC ol90xCZzSGqtiO2EZJ8pK0yt8S8uvfiZP6+v6QjmoVI6SzGISqkpuMN+PUT3oWaI02Iz fBCd7miFujDtuCcqxMsNXJptYcWqGcfVHhmaN0qUMqv60y04IYlhdy7/Ar43RFQUw0y9 RlVm4Lwe5iJur1aOoDee26c6ntZupXUjhMLvIAJXNGti3w2cBET8Rj5EYTF9/xnduSyM 33G8A2UL38KFCmFQKa+Lp+81Li1ENer8Y8D+ral5sRKpDZ8WjKJE5csEOBIPZ26boBH9 AbbQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature:arc-authentication-results; bh=2sBWWV/UWoWUnLKIZn6teOfUh6mTip99uj4UyCbU7no=; b=XgNINHPaVPP1AVrS1aueHljEQ2c/41gSkRch8BKEWJEgJqmdw425z66UG5SklzP9L7 UKvIOIblZn73tIn7jNf7T9X7eTtwggR5j643m+cD1GNK8QlRQE+zyPMqba/aQDqzMscI t22Dm5wke6yS9Lc6LqlawtX3DpMwy+WvxJTzguHedtrN0s5dl31w2BPoVZTW5p9yH51r Qex/f9hEzrZDNG3aja13Y7VCkQvT25Zgvaqx3aArNGIo7+SR9666S5UUJ8PhrDxcc3KX 4sCcG2hi5QSfAccjphgareRa/LtGfT1aJ4p3CbfksgEa4BE1vKpdodjvnoS8/KVd0zwE w+Rw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=NIMJUGTZ; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id l6si5095713pgo.198.2017.11.08.18.04.53; Wed, 08 Nov 2017 18:05:05 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=NIMJUGTZ; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751810AbdKICCT (ORCPT + 82 others); Wed, 8 Nov 2017 21:02:19 -0500 Received: from mail-pf0-f196.google.com ([209.85.192.196]:47572 "EHLO mail-pf0-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751352AbdKICCR (ORCPT ); Wed, 8 Nov 2017 21:02:17 -0500 Received: by mail-pf0-f196.google.com with SMTP id z80so3094175pff.4; Wed, 08 Nov 2017 18:02:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=2sBWWV/UWoWUnLKIZn6teOfUh6mTip99uj4UyCbU7no=; b=NIMJUGTZrJK9jb0ofpmUqTvOUkHnuyFtvltT0gMJpcZ139sQanycuFY8NyuHS5aMxC ZM+sndAXRhXu94v34d0fVQxIqV2BFNoXAqtmzG3TYndm06zeyBGhvHvNoLMZcn5t67GU ZgNpRUvMqRIW902urFFBg9ijoOLD5PNzk+stn1tn+PcQWBI27w5iKctGT9uFk838juFZ lxo2zGuCnKGFx1JY5ltGFpnDRjEbGLoTL6eYiW6j843D/KrR3MAmXdGz478dzKEb7O+f ghC1C/L0opHhVSoaNHhB2y2YFjIkBTj6mmOFrat896qetXs1z4dS5Q+bJSxeLtlM/PKK wWlw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=2sBWWV/UWoWUnLKIZn6teOfUh6mTip99uj4UyCbU7no=; b=s5S7a70Qk/iTqpQb6Ah6nSzoV9IirZvywRS9cd0qZ3ZkHJGNZGFrIyxYG5w2e/M1v9 3lj+jMHEefMCWprV0nuxGfdhrlDimDx6OuPw6dGkyiTXd11VCar6Kj/WajZ9ur+3duls LknHJODbriWVP8CijTpv6uliOeaaIoe8B0GJ/GtZg4+zjLkgauEcl5+GE9aKnALeVKdD 379zzllB/+qmpFMNmpCL3WLxDy8B4HKeW7++6uXRtl9doMIahRYXduURjVb9ShQz8lkV dYKkg+ifZ0jGsEayGHYC+sCsI+Em9V4gXovJfgq0u0R/9DHhinoSIlK0PDfpB8y2dnC8 WtrA== X-Gm-Message-State: AJaThX41qZnCVSLuq/33ZVrl8t+Cu00rTt5iFNkZD+OHrghDtOJsMDR8 WtPnsLuqTaicb684x4gUxFBwIw== X-Received: by 10.84.129.228 with SMTP id b91mr2210775plb.56.1510192936853; Wed, 08 Nov 2017 18:02:16 -0800 (PST) Received: from localhost ([203.205.141.123]) by smtp.gmail.com with ESMTPSA id y3sm9344293pfe.68.2017.11.08.18.02.15 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 08 Nov 2017 18:02:16 -0800 (PST) From: Wanpeng Li X-Google-Original-From: Wanpeng Li To: linux-kernel@vger.kernel.org, kvm@vger.kernel.org Cc: Paolo Bonzini , =?UTF-8?q?Radim=20Kr=C4=8Dm=C3=A1=C5=99?= , Wanpeng Li Subject: [PATCH RESEND 0/3] KVM: Paravirt remote TLB flush Date: Wed, 8 Nov 2017 18:02:11 -0800 Message-Id: <1510192934-5369-1-git-send-email-wanpeng.li@hotmail.com> X-Mailer: git-send-email 2.7.4 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Remote flushing api's does a busy wait which is fine in bare-metal scenario. But with-in the guest, the vcpus might have been pre-empted or blocked. In this scenario, the initator vcpu would end up busy-waiting for a long amount of time. This patch set implements para-virt flush tlbs making sure that it does not wait for vcpus that are sleeping. And all the sleeping vcpus flush the tlb on guest enter. Idea was discussed here: https://lkml.org/lkml/2012/2/20/157 The best result is achieved when we're overcommiting the host by running multiple vCPUs on each pCPU. In this case PV tlb flush avoids touching vCPUs which are not scheduled and avoid the wait on the main CPU. In addition, thanks for commit 9e52fc2b50d ("x86/mm: Enable RCU based page table freeing (CONFIG_HAVE_RCU_TABLE_FREE=y)") Test on a Haswell i7 desktop 4 cores (2HT), so 8 pCPUs, running ebizzy in one linux guest. ebizzy -M vanilla optimized boost 8 vCPUs 10152 10083 -0.68% 16 vCPUs 1224 4866 297.5% 24 vCPUs 1109 3871 249% 32 vCPUs 1025 3375 229.3% Wanpeng Li (3): KVM: Add vCPU running/preempted state KVM: Add paravirt remote TLB flush KVM: Add flush_on_enter before guest enter arch/x86/include/uapi/asm/kvm_para.h | 4 ++++ arch/x86/kernel/kvm.c | 31 ++++++++++++++++++++++++++++++- arch/x86/kvm/x86.c | 12 ++++++++++-- 3 files changed, 44 insertions(+), 3 deletions(-) -- 2.7.4 From 1583551491008068872@xxx Thu Nov 09 01:53:05 +0000 2017 X-GM-THRID: 1583551491008068872 X-Gmail-Labels: Inbox,Category Forums,HistoricalUnread