From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 2ECD1471F0; Mon, 12 Jan 2026 09:02:42 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 57D9E40288; Mon, 12 Jan 2026 09:02:41 +0100 (CET) Received: from dkmailrelay1.smartsharesystems.com (smartserver.smartsharesystems.com [77.243.40.215]) by mails.dpdk.org (Postfix) with ESMTP id 427F94013F for ; Mon, 12 Jan 2026 09:02:40 +0100 (CET) Received: from smartserver.smartsharesystems.com (smartserver.smartsharesys.local [192.168.4.10]) by dkmailrelay1.smartsharesystems.com (Postfix) with ESMTP id 57F5B206E5; Mon, 12 Jan 2026 09:02:39 +0100 (CET) Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 Subject: RE: [PATCH v5] eal/x86: optimize memcpy of small sizes Date: Mon, 12 Jan 2026 09:02:35 +0100 Message-ID: <98CBD80474FA8B44BF855DF32C47DC35F6564F@smartserver.smartshare.dk> X-MimeOLE: Produced By Microsoft Exchange V6.5 In-Reply-To: X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: [PATCH v5] eal/x86: optimize memcpy of small sizes Thread-Index: AQHcYtsDP6GC7ZfLdUK1Z6q3htreGbVA7e0AgAxp9QCAAQ8ycA== References: <20251120114554.950287-1-mb@smartsharesystems.com> <20251201155525.1538260-1-mb@smartsharesystems.com> <98CBD80474FA8B44BF855DF32C47DC35F6561B@smartserver.smartshare.dk> From: =?UTF-8?B?TW9ydGVuIEJyw7hydXA=?= To: "Konstantin Ananyev" , , "Bruce Richardson" , "Konstantin Ananyev" , "Vipin Varghese" Cc: "Stephen Hemminger" X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org PiA+ID4gLQkvKioNCj4gPiA+IC0JICogVXNlIHRoZSBmb2xsb3dpbmcgc3RydWN0cyB0byBhdm9p ZCB2aW9sYXRpbmcgQyBzdGFuZGFyZA0KPiA+ID4gLQkgKiBhbGlnbm1lbnQgcmVxdWlyZW1lbnRz IGFuZCB0byBhdm9pZCBzdHJpY3QgYWxpYXNpbmcgYnVncw0KPiA+ID4gLQkgKi8NCj4gPiA+IC0J c3RydWN0IF9fcnRlX3BhY2tlZF9iZWdpbiBydGVfdWludDY0X2FsaWFzIHsNCj4gPiA+IC0JCXVp bnQ2NF90IHZhbDsNCj4gPiA+IC0JfSBfX3J0ZV9wYWNrZWRfZW5kIF9fcnRlX21heV9hbGlhczsN Cj4gPiA+IC0Jc3RydWN0IF9fcnRlX3BhY2tlZF9iZWdpbiBydGVfdWludDMyX2FsaWFzIHsNCj4g PiA+IC0JCXVpbnQzMl90IHZhbDsNCj4gPiA+IC0JfSBfX3J0ZV9wYWNrZWRfZW5kIF9fcnRlX21h eV9hbGlhczsNCj4gPiA+IC0Jc3RydWN0IF9fcnRlX3BhY2tlZF9iZWdpbiBydGVfdWludDE2X2Fs aWFzIHsNCj4gPiA+IC0JCXVpbnQxNl90IHZhbDsNCj4gPiA+IC0JfSBfX3J0ZV9wYWNrZWRfZW5k IF9fcnRlX21heV9hbGlhczsNCg0KVGhlIGRpc2N1c3Npb24gYWJvdXQgdGhlIG9wdGltaXplZCBj aGVja3N1bSBmdW5jdGlvbiBbMV0gaGFzIHNob3duIHVzIHRoYXQgbWVtY3B5KCkgc29tZXRpbWVz IHByZXZlbnRzIENsYW5nIGZyb20gb3B0aW1pemluZyAobG9vcCB1bnJvbGxpbmcgYW5kIHZlY3Rv cml6aW5nKSBhbmQgcG90ZW50aWFsbHkgY2F1c2VzIHN0cmljdCBhbGlhc2luZyBidWdzIHdpdGgg R0NDLCBzbyBJIHdpbGwgd29yayBvbiBhIG5ldyBwYXRjaCB2ZXJzaW9uIHRoYXQga2VlcHMgdXNp bmcgdGhlIGFib3ZlIHR5cGVzLCBpbnN0ZWFkIG9mIGludHJvZHVjaW5nIG1lbWNweSgpIGluc2lk ZSBydGVfbWVtY3B5KCkuDQoNClsxXTogaHR0cHM6Ly9pbmJveC5kcGRrLm9yZy9kZXYvQ0FGbjJi dUJ6QkxGTFZOLUs9dTNNZ0JFYlEtaHFiZ0pMVnBEeDN2U1hWS0pwYTB5UE5nQG1haWwuZ21haWwu Y29tLw0KDQo+ID4gPiArc3RhdGljIF9fcnRlX2Fsd2F5c19pbmxpbmUgdm9pZA0KPiA+ID4gK3J0 ZV9tb3Y0OCh1aW50OF90ICpkc3QsIGNvbnN0IHVpbnQ4X3QgKnNyYykNCj4gPiA+ICt7DQo+ID4g PiArI2lmIGRlZmluZWQgUlRFX01FTUNQWV9BVlgNCj4gPiA+ICsJcnRlX21vdjMyKCh1aW50OF90 ICopZHN0LCAoY29uc3QgdWludDhfdCAqKXNyYyk7DQo+ID4gPiArCXJ0ZV9tb3YzMigodWludDhf dCAqKWRzdCAtIDMyICsgNDgsIChjb25zdCB1aW50OF90ICopc3JjIC0gMzIgKw0KPiA+ID4gNDgp Ow0KPiANCj4gSnVzdCBhIHMgdGhvdWdodDogd291bGQgY29tcGlsZXIgYW5kIENQVSBiZSBzbWFy dCBlbm91Z2ggdG8gcmVhbGl6ZQ0KPiB0aGF0IHRoZXJlIGlzIG5vIGRlcGVuZGVuY3kgYmV0d2Vl biB0aGVzZSAyIG9wcywgYW5kIHRoZXkgY2FuIGJlDQo+IGV4ZWN1dGVkIGluIGFueQ0KPiBvcmRl cj8NCj4gTWlnaHQgYmUgZG8gbW92MzIoKTsgbW92MTYoKSBpbnN0ZWFkPw0KPiBBZ2FpbicgZGlk bid0IHRlc3QgYW55dGhpbmcsIGp1c3QgYSB0aG91Z2h0Lg0KDQpHb29kIGlkZWEuDQpJIHNpbXBs eSBjb3BpZWQgd2hhdCB0aGUgZXhpc3RpbmcgQVZYIGNvZGUgZGlkIGZvciBjb3B5aW5nIDQ4IGJ5 dGVzLCBidXQgSSBhZ3JlZSB3aXRoIHlvdXIgc3VnZ2VzdGlvbi4NCg0KPiANCj4gPiA+ICsjZWxz ZSAvKiBTU0UgaW1wbGVtZW50YXRpb24gKi8NCj4gPiA+ICsJcnRlX21vdjE2KCh1aW50OF90ICop ZHN0ICsgMCAqIDE2LCAoY29uc3QgdWludDhfdCAqKXNyYyArIDAgKg0KPiA+ID4gMTYpOw0KPiA+ ID4gKwlydGVfbW92MTYoKHVpbnQ4X3QgKilkc3QgKyAxICogMTYsIChjb25zdCB1aW50OF90ICop c3JjICsgMSAqDQo+ID4gPiAxNik7DQo+ID4gPiArCXJ0ZV9tb3YxNigodWludDhfdCAqKWRzdCAr IDIgKiAxNiwgKGNvbnN0IHVpbnQ4X3QgKilzcmMgKyAyICoNCj4gPiA+IDE2KTsNCj4gPiA+ICsj ZW5kaWYNCj4gPiA+ICt9DQo+ID4gPiArDQo+ID4gPiAgLyoqDQo+ID4gPiAgICogQ29weSA2NCBi eXRlcyBmcm9tIG9uZSBsb2NhdGlvbiB0byBhbm90aGVyLA0KPiA+ID4gICAqIGxvY2F0aW9ucyBz aG91bGQgbm90IG92ZXJsYXAuDQo+ID4gPiBAQCAtMTcyLDYgKzE0MywxMzcgQEAgcnRlX21vdjI1 Nih1aW50OF90ICpkc3QsIGNvbnN0IHVpbnQ4X3QgKnNyYykNCj4gPiA+ICAJcnRlX21vdjEyOChk c3QgKyAxICogMTI4LCBzcmMgKyAxICogMTI4KTsNCj4gPiA+ICB9DQo+ID4gPg0KPiA+ID4gKy8q Kg0KPiA+ID4gKyAqIENvcHkgYnl0ZXMgZnJvbSBvbmUgbG9jYXRpb24gdG8gYW5vdGhlciwNCj4g PiA+ICsgKiBsb2NhdGlvbnMgc2hvdWxkIG5vdCBvdmVybGFwLg0KPiA+ID4gKyAqIFVzZSB3aXRo IG4gPD0gMTYuDQo+ID4gPiArICoNCj4gPiA+ICsgKiBOb3RlOiBDb3B5aW5nIHVuaW5pdGlhbGl6 ZWQgbWVtb3J5IGlzIHBlcmZlY3RseSBhY2NlcHRhYmxlLg0KPiA+ID4gKyAqIFVzaW5nIGUuZy4g bWVtY3B5KGRzdCwgc3JjLCA4KSBpbnN0ZWFkIG9mDQo+ID4gPiArICogKih1bmFsaWduZWRfdWlu dDY0X3QqKSA9ICooY29uc3QgdW5hbGlnbmVkX3VpbnQ2NF90ICopc3JjDQo+ID4gPiArICogYXZv aWRzIGNvbXBpbGVyIHdhcm5pbmdzIGFib3V0IHNvdXJjZSBkYXRhIG1heSBiZSB1bmluaXRpYWxp emVkDQo+ID4gPiArICogWy1XbWF5YmUtdW5pbml0aWFsaXplZF0uDQo+ID4gPiArICovDQo+ID4g PiArc3RhdGljIF9fcnRlX2Fsd2F5c19pbmxpbmUgdm9pZCAqDQo+ID4gPiArcnRlX21vdjE2X29y X2xlc3Modm9pZCAqZHN0LCBjb25zdCB2b2lkICpzcmMsIHNpemVfdCBuKQ0KPiA+ID4gK3sNCj4g PiA+ICsJLyogRmFzdGVyIHdheSB3aGVuIHNpemUgaXMga25vd24gYXQgYnVpbGQgdGltZS4gKi8N Cj4gPiA+ICsJaWYgKF9fcnRlX2NvbnN0YW50KG4pKSB7DQo+ID4gPiArCQlpZiAobiA9PSAyKQ0K PiA+ID4gKwkJCXJldHVybiBtZW1jcHkoZHN0LCBzcmMsIDIpOw0KPiA+ID4gKwkJaWYgKG4gPT0g NCkNCj4gPiA+ICsJCQlyZXR1cm4gbWVtY3B5KGRzdCwgc3JjLCA0KTsNCj4gPiA+ICsJCWlmIChu ID09IDYpIC8qIDQgKyAyICovDQo+ID4gPiArCQkJcmV0dXJuIG1lbWNweShkc3QsIHNyYywgNik7 DQo+ID4gPiArCQlpZiAobiA9PSA4KQ0KPiA+ID4gKwkJCXJldHVybiBtZW1jcHkoZHN0LCBzcmMs IDgpOw0KPiA+ID4gKwkJaWYgKG4gPT0gMTApIC8qIDggKyAyICovDQo+ID4gPiArCQkJcmV0dXJu IG1lbWNweShkc3QsIHNyYywgMTApOw0KPiA+ID4gKwkJaWYgKG4gPT0gMTIpIC8qIDggKyA0ICov DQo+ID4gPiArCQkJcmV0dXJuIG1lbWNweShkc3QsIHNyYywgMTIpOw0KPiA+ID4gKwkJaWYgKG4g PT0gMTYpIHsNCj4gPiA+ICsJCQlydGVfbW92MTYoKHVpbnQ4X3QgKilkc3QsIChjb25zdCB1aW50 OF90ICopc3JjKTsNCj4gPiA+ICsJCQlyZXR1cm4gZHN0Ow0KPiA+ID4gKwkJfQ0KPiANCj4gSWYg biBpcyBjb25zdGFudDsgd291bGRuJ3QgY29tcGlsZXIgdW5yb2xsIHN1Y2ggbWVtY3B5IGl0c2Vs Zj8NCj4gU3BlY2lhbGx5IGZvciBzdWNoIHNtYWxsICg8PTE2KSB2YWx1ZXM/DQo+IEkgbWVhbi4g Y2FuJ3Qgd2UganVzdDoNCj4gSWYgKG4gPCAxNikgbWVtY3B5KGRzdCwgc3JjLCBuKTsgZWxzZSBy dGVfbW92MTYoZHN0LCBzcmMpOw0KDQpVbmZvcnR1bmF0ZWx5IG5vdC4gRm9yIGUuZy4gbiA9PSAx Mywgd2Ugd2FudCB0byB1c2UgdGhlIHRyaWNrIHdpdGggdGhlIG92ZXJsYXBwaW5nIGNvcGllcywg cmVxdWlyaW5nIG9ubHkgdHdvIDgtYnl0ZSBjb3B5IG9wZXJhdGlvbnMgaW5zdGVhZCBvZiB0aHJl ZSBjb3B5IG9wZXJhdGlvbnMgKDgtYnl0ZSArIDQtYnl0ZSArIDEtYnl0ZSkuDQoNCj4gDQo+ID4g PiArCX0NCj4gPiA+ICsNCj4gPiA+ICsJLyoNCj4gPiA+ICsJICogTm90ZTogVXNpbmcgIm4gJiBY IiBnZW5lcmF0ZXMgMy1ieXRlICJ0ZXN0IiBpbnN0cnVjdGlvbnMsDQo+ID4gPiArCSAqIGluc3Rl YWQgb2YgIm4gPj0gWCIsIHdoaWNoIHdvdWxkIGdlbmVyYXRlIDQtYnl0ZSAiY21wIg0KPiA+ID4g aW5zdHJ1Y3Rpb25zLg0KPiA+ID4gKwkgKi8NCj4gPiA+ICsJaWYgKG4gJiAweDE4KSB7IC8qIG4g Pj0gOCwgaW5jbHVkaW5nIG4gPT0gMHgxMCwgaGVuY2UgbiAmIDB4MTguDQo+ID4gPiAqLw0KPiA+ ID4gKwkJLyogQ29weSA4IH4gMTYgYnl0ZXMuICovDQo+ID4gPiArCQltZW1jcHkoZHN0LCBzcmMs IDgpOw0KPiA+ID4gKwkJbWVtY3B5KCh1aW50OF90ICopZHN0IC0gOCArIG4sIChjb25zdCB1aW50 OF90ICopc3JjIC0gOCArDQo+ID4gPiBuLCA4KTsNCj4gPiA+ICsJfSBlbHNlIGlmIChuICYgMHg0 KSB7DQo+ID4gPiArCQkvKiBDb3B5IDQgfiA3IGJ5dGVzLiAqLw0KPiA+ID4gKwkJbWVtY3B5KGRz dCwgc3JjLCA0KTsNCj4gPiA+ICsJCW1lbWNweSgodWludDhfdCAqKWRzdCAtIDQgKyBuLCAoY29u c3QgdWludDhfdCAqKXNyYyAtIDQgKw0KPiA+ID4gbiwgNCk7DQo+ID4gPiArCX0gZWxzZSBpZiAo biAmIDB4Mikgew0KPiA+ID4gKwkJLyogQ29weSAyIH4gMyBieXRlcy4gKi8NCj4gPiA+ICsJCW1l bWNweShkc3QsIHNyYywgMik7DQo+ID4gPiArCQltZW1jcHkoKHVpbnQ4X3QgKilkc3QgLSAyICsg biwgKGNvbnN0IHVpbnQ4X3QgKilzcmMgLSAyICsNCj4gPiA+IG4sIDIpOw0KPiA+ID4gKwl9IGVs c2UgaWYgKG4gJiAweDEpIHsNCj4gPiA+ICsJCS8qIENvcHkgMSBieXRlLiAqLw0KPiA+ID4gKwkJ bWVtY3B5KGRzdCwgc3JjLCAxKTsNCj4gPiA+ICsJfQ0KPiA+ID4gKwlyZXR1cm4gZHN0Ow0KPiA+ ID4gK30NCg0K