From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Michael S. Tsirkin" Subject: Re: [PATCH] vhost-net: set packet weight of tx polling to 2 * vq size Date: Mon, 9 Apr 2018 08:46:55 +0300 Message-ID: <20180409084601-mutt-send-email-mst@kernel.org> References: <88D661ADF6AFBF42B2AB88D8E7682B0901FC49BE@EXMBX-SZMAIL011.tencent.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <88D661ADF6AFBF42B2AB88D8E7682B0901FC49BE@EXMBX-SZMAIL011.tencent.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: virtualization-bounces@lists.linux-foundation.org Errors-To: virtualization-bounces@lists.linux-foundation.org To: =?utf-8?B?aGFpYmluemhhbmco5byg5rW35paMKQ==?= Cc: "kvm@vger.kernel.org" , "netdev@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "virtualization@lists.linux-foundation.org" , =?utf-8?B?eXVuZmFuZ3RhaSjlj7Dov5Dmlrkp?= , =?utf-8?B?bGlkb25nY2hlbijpmYjnq4vkuJwp?= List-Id: virtualization@lists.linuxfoundation.org T24gTW9uLCBBcHIgMDksIDIwMTggYXQgMDQ6MDk6MjBBTSArMDAwMCwgaGFpYmluemhhbmco5byg 5rW35paMKSB3cm90ZToKPiAKPiA+IE9uIEZyaSwgQXByIDA2LCAyMDE4IGF0IDA4OjIyOjM3QU0g KzAwMDAsIGhhaWJpbnpoYW5nKOW8oOa1t+aWjCkgd3JvdGU6Cj4gPiA+IGhhbmRsZV90eCB3aWxs IGRlbGF5IHJ4IGZvciB0ZW5zIG9yIGV2ZW4gaHVuZHJlZHMgb2YgbWlsbGlzZWNvbmRzIHdoZW4g dHggYnVzeQo+ID4gPiBwb2xsaW5nIHVkcCBwYWNrZXRzIHdpdGggc21hbGwgbGVuZ3RoKGUuZy4g MWJ5dGUgdWRwIHBheWxvYWQpLCBiZWNhdXNlIHNldHRpbmcKPiA+ID4gVkhPU1RfTkVUX1dFSUdI VCB0YWtlcyBpbnRvIGFjY291bnQgb25seSBzZW50LWJ5dGVzIGJ1dCBubyBzaW5nbGUgcGFja2V0 IGxlbmd0aC4KPiA+ID4gCj4gPiA+IFBpbmctTGF0ZW5jaWVzIHNob3duIGJlbG93IHdlcmUgdGVz dGVkIGJldHdlZW4gdHdvIFZpcnR1YWwgTWFjaGluZXMgdXNpbmcKPiA+ID4gbmV0cGVyZiAoVURQ X1NUUkVBTSwgbGVuPTEpLCBhbmQgdGhlbiBhbm90aGVyIG1hY2hpbmUgcGluZ2VkIHRoZSBjbGll bnQ6Cj4gPiA+IAo+ID4gPiBQYWNrZXQtV2VpZ2h0ICAgICAgUGluZy1MYXRlbmNpZXMobWlsbGlz ZWNvbmQpCj4gPiA+ICAgICAgICAgICAgICAgICAgICBtaW4gICAgICBhdmcgICAgICAgbWF4Cj4g PiA+IE9yaWdpbiAgICAgICAgICAgMy4zMTkgICAxOC40ODkgICAgNTcuMzAzCj4gPiA+IDY0ICAg ICAgICAgICAgICAgMS42NDMgICAgMi4wMjEgICAgIDIuNTUyCj4gPiA+IDEyOCAgICAgICAgICAg ICAgMS44MjUgICAgMi42MDAgICAgIDMuMjI0Cj4gPiA+IDI1NiAgICAgICAgICAgICAgMS45OTcg ICAgMi43MTAgICAgIDQuMjk1Cj4gPiA+IDUxMiAgICAgICAgICAgICAgMS44NjAgICAgMy4xNzEg ICAgIDQuNjMxCj4gPiA+IDEwMjQgICAgICAgICAgICAgMi4wMDIgICAgNC4xNzMgICAgIDkuMDU2 Cj4gPiA+IDIwNDggICAgICAgICAgICAgMi4yNTcgICAgNS42NTAgICAgIDkuNjg4Cj4gPiA+IDQw OTYgICAgICAgICAgICAgMi4wOTMgICAgOC41MDggICAgMTUuOTQzCj4gPgo+ID4gQW5kIHRoaXMg aXMgd2l0aCBRIHNpemUgMjU2IHJpZ2h0Pwo+IAo+IFllcy4gUGluZy1sYXRlbmNpZXMgd2l0aCA1 MTIgVlEgc2l6ZSBzaG93IGJlbG93Lgo+IAo+IFBhY2tldC1XZWlnaHQgICAgICBQaW5nLUxhdGVu Y2llcyhtaWxsaXNlY29uZCkKPiAgICAgICAgICAgICAgICAgICAgIG1pbiAgICAgIGF2ZyAgICAg ICBtYXgKPiBPcmlnaW4gICAgICAgICAgIDYuMzU3ICAgMjkuMTc3ICAgIDY2LjI0NQo+IDY0ICAg ICAgICAgICAgICAgMi43OTggICAgMy42MTQgICAgIDQuNDAzCj4gMTI4ICAgICAgICAgICAgICAy Ljg2MSAgICAzLjgyMCAgICAgNC43NzUKPiAyNTYgICAgICAgICAgICAgIDMuMDA4ICAgIDQuMDE4 ICAgICA0LjgwNwo+IDUxMiAgICAgICAgICAgICAgMy4yNTQgICAgNC41MjMgICAgIDUuODI0Cj4g MTAyNCAgICAgICAgICAgICAzLjA3OSAgICA1LjMzNSAgICAgNy43NDcKPiAyMDQ4ICAgICAgICAg ICAgIDMuOTQ0ICAgIDguMjAxICAgICAxMi43NjIKPiA0MDk2ICAgICAgICAgICAgIDQuMTU4ICAg MTEuMDU3ICAgIDE5Ljk4NQo+IAo+IFdlIHdpbGwgc3VibWl0IGFnYWluLiBJcyB0aGVyZSBhbnl0 aGluZyBlbHNlPwoKU2VlbXMgcHJldHR5IGNvbnNpc3RlbnQsIGEgc21hbGwgZGlwIGF0IDIgVlEg c2l6ZXMuCgoKQWNrZWQtYnk6IE1pY2hhZWwgUy4gVHNpcmtpbiA8bXN0QHJlZGhhdC5jb20+Cgo+ ID4KPiA+ID4gUmluZyBzaXplIGlzIGEgaGludCBmcm9tIGRldmljZSBhYm91dCBhIGJ1cnN0IHNp emUgaXQgY2FuIHRvbGVyYXRlLiBCYXNlZCBvbgo+ID4gPiBiZW5jaG1hcmtzLCBzZXQgdGhlIHdl aWdodCB0byAyICogdnEgc2l6ZS4KPiA+ID4gCj4gPiA+IFRvIGV2YWx1YXRlIHRoaXMgY2hhbmdl LCBhbm90aGVyIHRlc3RzIHdlcmUgZG9uZSB1c2luZyBuZXRwZXJmKFJSLCBUWCkgYmV0d2Vlbgo+ ID4gPiB0d28gbWFjaGluZXMgd2l0aCBJbnRlbChSKSBYZW9uKFIpIEdvbGQgNjEzMyBDUFUgQCAy LjUwR0h6LCBhbmQgdnEgc2l6ZSB3YXMKPiA+ID4gdHdlYWtlZCB0aHJvdWdoIHFlbXUuIFJlc3Vs dHMgc2hvd24gYmVsb3cgZG9lcyBub3Qgc2hvdyBvYnZpb3VzIGNoYW5nZXMuCj4gPgo+ID4gV2hh dCBJIGFza2VkIGZvciBpcyBwaW5nLWxhdGVuY3kgd2l0aCBkaWZmZXJlbnQgVlEgc2l6ZXMsCj4g PiBzdHJlYW1pbmcgYmVsb3cgZG9lcyBub3Qgc2hvdyBhbnl0aGluZy4KPiA+Cj4gPiA+IHZxIHNp emU9MjU2IFRDUF9SUiAgICAgICAgICAgICAgICB2cSBzaXplPTUxMiBUQ1BfUlIKPiA+ID4gc2l6 ZS9zZXNzaW9ucy8rdGh1JS8rbm9ybWFsaXplJSAgIHNpemUvc2Vzc2lvbnMvK3RodSUvK25vcm1h bGl6ZSUKPiA+ID4gICAgMS8gICAgICAgMS8gIC03JS8gICAgICAgIC0yJSAgICAgIDEvICAgICAg IDEvICAgMCUvICAgICAgICAtMiUKPiA+ID4gICAgMS8gICAgICAgNC8gICsxJS8gICAgICAgICAw JSAgICAgIDEvICAgICAgIDQvICArMSUvICAgICAgICAgMCUKPiA+ID4gICAgMS8gICAgICAgOC8g ICsxJS8gICAgICAgIC0yJSAgICAgIDEvICAgICAgIDgvICAgMCUvICAgICAgICArMSUKPiA+ID4g ICA2NC8gICAgICAgMS8gIC02JS8gICAgICAgICAwJSAgICAgNjQvICAgICAgIDEvICArNyUvICAg ICAgICArMyUKPiA+ID4gICA2NC8gICAgICAgNC8gICAwJS8gICAgICAgICsyJSAgICAgNjQvICAg ICAgIDQvICAtMSUvICAgICAgICArMSUKPiA+ID4gICA2NC8gICAgICAgOC8gICAwJS8gICAgICAg ICAwJSAgICAgNjQvICAgICAgIDgvICAtMSUvICAgICAgICAtMiUKPiA+ID4gIDI1Ni8gICAgICAg MS8gIC0zJS8gICAgICAgIC00JSAgICAyNTYvICAgICAgIDEvICAtNCUvICAgICAgICAtMiUKPiA+ ID4gIDI1Ni8gICAgICAgNC8gICszJS8gICAgICAgICs0JSAgICAyNTYvICAgICAgIDQvICArMSUv ICAgICAgICArMiUKPiA+ID4gIDI1Ni8gICAgICAgOC8gICsyJS8gICAgICAgICAwJSAgICAyNTYv ICAgICAgIDgvICArMSUvICAgICAgICAtMSUKPiA+ID4gCj4gPiA+IHZxIHNpemU9MjU2IFVEUF9S UiAgICAgICAgICAgICAgICB2cSBzaXplPTUxMiBVRFBfUlIKPiA+ID4gc2l6ZS9zZXNzaW9ucy8r dGh1JS8rbm9ybWFsaXplJSAgIHNpemUvc2Vzc2lvbnMvK3RodSUvK25vcm1hbGl6ZSUKPiA+ID4g ICAgMS8gICAgICAgMS8gIC01JS8gICAgICAgICsxJSAgICAgIDEvICAgICAgIDEvICAtMyUvICAg ICAgICAtMiUKPiA+ID4gICAgMS8gICAgICAgNC8gICs0JS8gICAgICAgICsxJSAgICAgIDEvICAg ICAgIDQvICAtMiUvICAgICAgICArMiUKPiA+ID4gICAgMS8gICAgICAgOC8gIC0xJS8gICAgICAg IC0xJSAgICAgIDEvICAgICAgIDgvICAtMSUvICAgICAgICAgMCUKPiA+ID4gICA2NC8gICAgICAg MS8gIC0yJS8gICAgICAgIC0zJSAgICAgNjQvICAgICAgIDEvICArMSUvICAgICAgICArMSUKPiA+ ID4gICA2NC8gICAgICAgNC8gIC01JS8gICAgICAgIC0xJSAgICAgNjQvICAgICAgIDQvICArMiUv ICAgICAgICAgMCUKPiA+ID4gICA2NC8gICAgICAgOC8gICAwJS8gICAgICAgIC0xJSAgICAgNjQv ICAgICAgIDgvICAtMiUvICAgICAgICArMSUKPiA+ID4gIDI1Ni8gICAgICAgMS8gICs3JS8gICAg ICAgICsxJSAgICAyNTYvICAgICAgIDEvICAtNyUvICAgICAgICAgMCUKPiA+ID4gIDI1Ni8gICAg ICAgNC8gICsxJS8gICAgICAgICsxJSAgICAyNTYvICAgICAgIDQvICAtMyUvICAgICAgICAtNCUK PiA+ID4gIDI1Ni8gICAgICAgOC8gICsyJS8gICAgICAgICsyJSAgICAyNTYvICAgICAgIDgvICAr MSUvICAgICAgICArMSUKPiA+ID4gCj4gPiA+IHZxIHNpemU9MjU2IFRDUF9TVFJFQU0gICAgICAg ICAgICB2cSBzaXplPTUxMiBUQ1BfU1RSRUFNCj4gPiA+IHNpemUvc2Vzc2lvbnMvK3RodSUvK25v cm1hbGl6ZSUgICBzaXplL3Nlc3Npb25zLyt0aHUlLytub3JtYWxpemUlCj4gPiA+ICAgNjQvICAg ICAgIDEvICAgMCUvICAgICAgICAtMyUgICAgIDY0LyAgICAgICAxLyAgIDAlLyAgICAgICAgIDAl Cj4gPiA+ICAgNjQvICAgICAgIDQvICArMyUvICAgICAgICAtMSUgICAgIDY0LyAgICAgICA0LyAg LTIlLyAgICAgICAgKzQlCj4gPiA+ICAgNjQvICAgICAgIDgvICArOSUvICAgICAgICAtNCUgICAg IDY0LyAgICAgICA4LyAgLTElLyAgICAgICAgKzIlCj4gPiA+ICAyNTYvICAgICAgIDEvICArMSUv ICAgICAgICAtNCUgICAgMjU2LyAgICAgICAxLyAgKzElLyAgICAgICAgKzElCj4gPiA+ICAyNTYv ICAgICAgIDQvICAtMSUvICAgICAgICAtMSUgICAgMjU2LyAgICAgICA0LyAgLTMlLyAgICAgICAg IDAlCj4gPiA+ICAyNTYvICAgICAgIDgvICArNyUvICAgICAgICArNSUgICAgMjU2LyAgICAgICA4 LyAgLTMlLyAgICAgICAgIDAlCj4gPiA+ICA1MTIvICAgICAgIDEvICArMSUvICAgICAgICAgMCUg ICAgNTEyLyAgICAgICAxLyAgLTElLyAgICAgICAgLTElCj4gPiA+ICA1MTIvICAgICAgIDQvICAr MSUvICAgICAgICAtMSUgICAgNTEyLyAgICAgICA0LyAgIDAlLyAgICAgICAgIDAlCj4gPiA+ICA1 MTIvICAgICAgIDgvICArNyUvICAgICAgICAtNSUgICAgNTEyLyAgICAgICA4LyAgKzYlLyAgICAg ICAgLTElCj4gPiA+IDEwMjQvICAgICAgIDEvICAgMCUvICAgICAgICAtMSUgICAxMDI0LyAgICAg ICAxLyAgIDAlLyAgICAgICAgKzElCj4gPiA+IDEwMjQvICAgICAgIDQvICArMyUvICAgICAgICAg MCUgICAxMDI0LyAgICAgICA0LyAgKzElLyAgICAgICAgIDAlCj4gPiA+IDEwMjQvICAgICAgIDgv ICArOCUvICAgICAgICArNSUgICAxMDI0LyAgICAgICA4LyAgLTElLyAgICAgICAgIDAlCj4gPiA+ IDIwNDgvICAgICAgIDEvICArMiUvICAgICAgICArMiUgICAyMDQ4LyAgICAgICAxLyAgLTElLyAg ICAgICAgIDAlCj4gPiA+IDIwNDgvICAgICAgIDQvICArMSUvICAgICAgICAgMCUgICAyMDQ4LyAg ICAgICA0LyAgIDAlLyAgICAgICAgLTElCj4gPiA+IDIwNDgvICAgICAgIDgvICAtMiUvICAgICAg ICAgMCUgICAyMDQ4LyAgICAgICA4LyAgIDUlLyAgICAgICAgLTElCj4gPiA+IDQwOTYvICAgICAg IDEvICAtMiUvICAgICAgICAgMCUgICA0MDk2LyAgICAgICAxLyAgLTIlLyAgICAgICAgIDAlCj4g PiA+IDQwOTYvICAgICAgIDQvICArMiUvICAgICAgICAgMCUgICA0MDk2LyAgICAgICA0LyAgIDAl LyAgICAgICAgIDAlCj4gPiA+IDQwOTYvICAgICAgIDgvICArOSUvICAgICAgICAtMiUgICA0MDk2 LyAgICAgICA4LyAgLTUlLyAgICAgICAgLTElCj4gPiA+IAo+ID4gPiBTaWduZWQtb2ZmLWJ5OiBI YWliaW4gWmhhbmcgPGhhaWJpbnpoYW5nQHRlbmNlbnQuY29tPgo+ID4gPiBTaWduZWQtb2ZmLWJ5 OiBZdW5mYW5nIFRhaSA8eXVuZmFuZ3RhaUB0ZW5jZW50LmNvbT4KPiA+ID4gU2lnbmVkLW9mZi1i eTogTGlkb25nIENoZW4gPGxpZG9uZ2NoZW5AdGVuY2VudC5jb20+Cj4gPgo+ID4gQ29kZSBpcyBm aW5lIGJ1dCBJJ2QgbGlrZSB0byBzZWUgdmFsaWRhdGlvbiBvZiB0aGUgaGV1cmlzdGljCj4gPiAy KnZxLT5udW0gd2l0aCBhbm90aGVyIHZxIHNpemUuCj4gPgo+ID4KPiA+Cj4gPiA+IC0tLQo+ID4g PiAgZHJpdmVycy92aG9zdC9uZXQuYyB8IDggKysrKysrKy0KPiA+ID4gIDEgZmlsZSBjaGFuZ2Vk LCA3IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKPiA+ID4gCj4gPiA+IGRpZmYgLS1naXQg YS9kcml2ZXJzL3Zob3N0L25ldC5jIGIvZHJpdmVycy92aG9zdC9uZXQuYwo+ID4gPiBpbmRleCA4 MTM5YmM3MGFkN2QuLjM1NjNhMzA1Y2MwYSAxMDA2NDQKPiA+ID4gLS0tIGEvZHJpdmVycy92aG9z dC9uZXQuYwo+ID4gPiArKysgYi9kcml2ZXJzL3Zob3N0L25ldC5jCj4gPiA+IEBAIC00NCw2ICs0 NCwxMCBAQCBNT0RVTEVfUEFSTV9ERVNDKGV4cGVyaW1lbnRhbF96Y29weXR4LCAiRW5hYmxlIFpl cm8gQ29weSBUWDsiCj4gPiA+ICAgKiBVc2luZyB0aGlzIGxpbWl0IHByZXZlbnRzIG9uZSB2aXJ0 cXVldWUgZnJvbSBzdGFydmluZyBvdGhlcnMuICovCj4gPiA+ICAjZGVmaW5lIFZIT1NUX05FVF9X RUlHSFQgMHg4MDAwMAo+ID4gPiAgCj4gPiA+ICsvKiBNYXggbnVtYmVyIG9mIHBhY2tldHMgdHJh bnNmZXJyZWQgYmVmb3JlIHJlcXVldWVpbmcgdGhlIGpvYi4KPiA+ID4gKyAqIFVzaW5nIHRoaXMg bGltaXQgcHJldmVudHMgb25lIHZpcnRxdWV1ZSBmcm9tIHN0YXJ2aW5nIHJ4LiAqLwo+ID4gPiAr I2RlZmluZSBWSE9TVF9ORVRfUEtUX1dFSUdIVCh2cSkgKCh2cSktPm51bSAqIDIpCj4gPiA+ICsK PiA+ID4gIC8qIE1BWCBudW1iZXIgb2YgVFggdXNlZCBidWZmZXJzIGZvciBvdXRzdGFuZGluZyB6 ZXJvY29weSAqLwo+ID4gPiAgI2RlZmluZSBWSE9TVF9NQVhfUEVORCAxMjgKPiA+ID4gICNkZWZp bmUgVkhPU1RfR09PRENPUFlfTEVOIDI1Ngo+ID4gPiBAQCAtNDczLDYgKzQ3Nyw3IEBAIHN0YXRp YyB2b2lkIGhhbmRsZV90eChzdHJ1Y3Qgdmhvc3RfbmV0ICpuZXQpCj4gPiA+ICAJc3RydWN0IHNv Y2tldCAqc29jazsKPiA+ID4gIAlzdHJ1Y3Qgdmhvc3RfbmV0X3VidWZfcmVmICp1bmluaXRpYWxp emVkX3Zhcih1YnVmcyk7Cj4gPiA+ICAJYm9vbCB6Y29weSwgemNvcHlfdXNlZDsKPiA+ID4gKwlp bnQgc2VudF9wa3RzID0gMDsKPiA+ID4gIAo+ID4gPiAgCW11dGV4X2xvY2soJnZxLT5tdXRleCk7 Cj4gPiA+ICAJc29jayA9IHZxLT5wcml2YXRlX2RhdGE7Cj4gPiA+IEBAIC01ODAsNyArNTg1LDgg QEAgc3RhdGljIHZvaWQgaGFuZGxlX3R4KHN0cnVjdCB2aG9zdF9uZXQgKm5ldCkKPiA+ID4gIAkJ ZWxzZQo+ID4gPiAgCQkJdmhvc3RfemVyb2NvcHlfc2lnbmFsX3VzZWQobmV0LCB2cSk7Cj4gPiA+ ICAJCXZob3N0X25ldF90eF9wYWNrZXQobmV0KTsKPiA+ID4gLQkJaWYgKHVubGlrZWx5KHRvdGFs X2xlbiA+PSBWSE9TVF9ORVRfV0VJR0hUKSkgewo+ID4gPiArCQlpZiAodW5saWtlbHkodG90YWxf bGVuID49IFZIT1NUX05FVF9XRUlHSFQpIHx8Cj4gPiA+ICsJCSAgICB1bmxpa2VseSgrK3NlbnRf cGt0cyA+PSBWSE9TVF9ORVRfUEtUX1dFSUdIVCh2cSkpKSB7Cj4gPiA+ICAJCQl2aG9zdF9wb2xs X3F1ZXVlKCZ2cS0+cG9sbCk7Cj4gPiA+ICAJCQlicmVhazsKPiA+ID4gIAkJfQo+ID4gPiAtLSAK PiA+ID4gMi4xMi4zCj4gPiA+IAo+IApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpWaXJ0dWFsaXphdGlvbiBtYWlsaW5nIGxpc3QKVmlydHVhbGl6YXRpb25A bGlzdHMubGludXgtZm91bmRhdGlvbi5vcmcKaHR0cHM6Ly9saXN0cy5saW51eGZvdW5kYXRpb24u b3JnL21haWxtYW4vbGlzdGluZm8vdmlydHVhbGl6YXRpb24= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751653AbeDIFq6 (ORCPT ); Mon, 9 Apr 2018 01:46:58 -0400 Received: from mx3-rdu2.redhat.com ([66.187.233.73]:33356 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750877AbeDIFq4 (ORCPT ); Mon, 9 Apr 2018 01:46:56 -0400 Date: Mon, 9 Apr 2018 08:46:55 +0300 From: "Michael S. Tsirkin" To: =?utf-8?B?aGFpYmluemhhbmco5byg5rW35paMKQ==?= Cc: Jason Wang , "kvm@vger.kernel.org" , "virtualization@lists.linux-foundation.org" , "netdev@vger.kernel.org" , "linux-kernel@vger.kernel.org" , =?utf-8?B?bGlkb25nY2hlbijpmYjnq4vkuJwp?= , =?utf-8?B?eXVuZmFuZ3RhaSjlj7Dov5Dmlrkp?= Subject: Re: [PATCH] vhost-net: set packet weight of tx polling to 2 * vq size Message-ID: <20180409084601-mutt-send-email-mst@kernel.org> References: <88D661ADF6AFBF42B2AB88D8E7682B0901FC49BE@EXMBX-SZMAIL011.tencent.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <88D661ADF6AFBF42B2AB88D8E7682B0901FC49BE@EXMBX-SZMAIL011.tencent.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Apr 09, 2018 at 04:09:20AM +0000, haibinzhang(张海斌) wrote: > > > On Fri, Apr 06, 2018 at 08:22:37AM +0000, haibinzhang(张海斌) wrote: > > > handle_tx will delay rx for tens or even hundreds of milliseconds when tx busy > > > polling udp packets with small length(e.g. 1byte udp payload), because setting > > > VHOST_NET_WEIGHT takes into account only sent-bytes but no single packet length. > > > > > > Ping-Latencies shown below were tested between two Virtual Machines using > > > netperf (UDP_STREAM, len=1), and then another machine pinged the client: > > > > > > Packet-Weight Ping-Latencies(millisecond) > > > min avg max > > > Origin 3.319 18.489 57.303 > > > 64 1.643 2.021 2.552 > > > 128 1.825 2.600 3.224 > > > 256 1.997 2.710 4.295 > > > 512 1.860 3.171 4.631 > > > 1024 2.002 4.173 9.056 > > > 2048 2.257 5.650 9.688 > > > 4096 2.093 8.508 15.943 > > > > And this is with Q size 256 right? > > Yes. Ping-latencies with 512 VQ size show below. > > Packet-Weight Ping-Latencies(millisecond) > min avg max > Origin 6.357 29.177 66.245 > 64 2.798 3.614 4.403 > 128 2.861 3.820 4.775 > 256 3.008 4.018 4.807 > 512 3.254 4.523 5.824 > 1024 3.079 5.335 7.747 > 2048 3.944 8.201 12.762 > 4096 4.158 11.057 19.985 > > We will submit again. Is there anything else? Seems pretty consistent, a small dip at 2 VQ sizes. Acked-by: Michael S. Tsirkin > > > > > Ring size is a hint from device about a burst size it can tolerate. Based on > > > benchmarks, set the weight to 2 * vq size. > > > > > > To evaluate this change, another tests were done using netperf(RR, TX) between > > > two machines with Intel(R) Xeon(R) Gold 6133 CPU @ 2.50GHz, and vq size was > > > tweaked through qemu. Results shown below does not show obvious changes. > > > > What I asked for is ping-latency with different VQ sizes, > > streaming below does not show anything. > > > > > vq size=256 TCP_RR vq size=512 TCP_RR > > > size/sessions/+thu%/+normalize% size/sessions/+thu%/+normalize% > > > 1/ 1/ -7%/ -2% 1/ 1/ 0%/ -2% > > > 1/ 4/ +1%/ 0% 1/ 4/ +1%/ 0% > > > 1/ 8/ +1%/ -2% 1/ 8/ 0%/ +1% > > > 64/ 1/ -6%/ 0% 64/ 1/ +7%/ +3% > > > 64/ 4/ 0%/ +2% 64/ 4/ -1%/ +1% > > > 64/ 8/ 0%/ 0% 64/ 8/ -1%/ -2% > > > 256/ 1/ -3%/ -4% 256/ 1/ -4%/ -2% > > > 256/ 4/ +3%/ +4% 256/ 4/ +1%/ +2% > > > 256/ 8/ +2%/ 0% 256/ 8/ +1%/ -1% > > > > > > vq size=256 UDP_RR vq size=512 UDP_RR > > > size/sessions/+thu%/+normalize% size/sessions/+thu%/+normalize% > > > 1/ 1/ -5%/ +1% 1/ 1/ -3%/ -2% > > > 1/ 4/ +4%/ +1% 1/ 4/ -2%/ +2% > > > 1/ 8/ -1%/ -1% 1/ 8/ -1%/ 0% > > > 64/ 1/ -2%/ -3% 64/ 1/ +1%/ +1% > > > 64/ 4/ -5%/ -1% 64/ 4/ +2%/ 0% > > > 64/ 8/ 0%/ -1% 64/ 8/ -2%/ +1% > > > 256/ 1/ +7%/ +1% 256/ 1/ -7%/ 0% > > > 256/ 4/ +1%/ +1% 256/ 4/ -3%/ -4% > > > 256/ 8/ +2%/ +2% 256/ 8/ +1%/ +1% > > > > > > vq size=256 TCP_STREAM vq size=512 TCP_STREAM > > > size/sessions/+thu%/+normalize% size/sessions/+thu%/+normalize% > > > 64/ 1/ 0%/ -3% 64/ 1/ 0%/ 0% > > > 64/ 4/ +3%/ -1% 64/ 4/ -2%/ +4% > > > 64/ 8/ +9%/ -4% 64/ 8/ -1%/ +2% > > > 256/ 1/ +1%/ -4% 256/ 1/ +1%/ +1% > > > 256/ 4/ -1%/ -1% 256/ 4/ -3%/ 0% > > > 256/ 8/ +7%/ +5% 256/ 8/ -3%/ 0% > > > 512/ 1/ +1%/ 0% 512/ 1/ -1%/ -1% > > > 512/ 4/ +1%/ -1% 512/ 4/ 0%/ 0% > > > 512/ 8/ +7%/ -5% 512/ 8/ +6%/ -1% > > > 1024/ 1/ 0%/ -1% 1024/ 1/ 0%/ +1% > > > 1024/ 4/ +3%/ 0% 1024/ 4/ +1%/ 0% > > > 1024/ 8/ +8%/ +5% 1024/ 8/ -1%/ 0% > > > 2048/ 1/ +2%/ +2% 2048/ 1/ -1%/ 0% > > > 2048/ 4/ +1%/ 0% 2048/ 4/ 0%/ -1% > > > 2048/ 8/ -2%/ 0% 2048/ 8/ 5%/ -1% > > > 4096/ 1/ -2%/ 0% 4096/ 1/ -2%/ 0% > > > 4096/ 4/ +2%/ 0% 4096/ 4/ 0%/ 0% > > > 4096/ 8/ +9%/ -2% 4096/ 8/ -5%/ -1% > > > > > > Signed-off-by: Haibin Zhang > > > Signed-off-by: Yunfang Tai > > > Signed-off-by: Lidong Chen > > > > Code is fine but I'd like to see validation of the heuristic > > 2*vq->num with another vq size. > > > > > > > > > --- > > > drivers/vhost/net.c | 8 +++++++- > > > 1 file changed, 7 insertions(+), 1 deletion(-) > > > > > > diff --git a/drivers/vhost/net.c b/drivers/vhost/net.c > > > index 8139bc70ad7d..3563a305cc0a 100644 > > > --- a/drivers/vhost/net.c > > > +++ b/drivers/vhost/net.c > > > @@ -44,6 +44,10 @@ MODULE_PARM_DESC(experimental_zcopytx, "Enable Zero Copy TX;" > > > * Using this limit prevents one virtqueue from starving others. */ > > > #define VHOST_NET_WEIGHT 0x80000 > > > > > > +/* Max number of packets transferred before requeueing the job. > > > + * Using this limit prevents one virtqueue from starving rx. */ > > > +#define VHOST_NET_PKT_WEIGHT(vq) ((vq)->num * 2) > > > + > > > /* MAX number of TX used buffers for outstanding zerocopy */ > > > #define VHOST_MAX_PEND 128 > > > #define VHOST_GOODCOPY_LEN 256 > > > @@ -473,6 +477,7 @@ static void handle_tx(struct vhost_net *net) > > > struct socket *sock; > > > struct vhost_net_ubuf_ref *uninitialized_var(ubufs); > > > bool zcopy, zcopy_used; > > > + int sent_pkts = 0; > > > > > > mutex_lock(&vq->mutex); > > > sock = vq->private_data; > > > @@ -580,7 +585,8 @@ static void handle_tx(struct vhost_net *net) > > > else > > > vhost_zerocopy_signal_used(net, vq); > > > vhost_net_tx_packet(net); > > > - if (unlikely(total_len >= VHOST_NET_WEIGHT)) { > > > + if (unlikely(total_len >= VHOST_NET_WEIGHT) || > > > + unlikely(++sent_pkts >= VHOST_NET_PKT_WEIGHT(vq))) { > > > vhost_poll_queue(&vq->poll); > > > break; > > > } > > > -- > > > 2.12.3 > > > >