From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id AE61EA04C9; Sun, 13 Sep 2020 22:11:15 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 0B7211DB9; Sun, 13 Sep 2020 22:11:15 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by dpdk.org (Postfix) with ESMTP id 7240DFFA for ; Sun, 13 Sep 2020 22:11:13 +0200 (CEST) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 08DKAInM021574; Sun, 13 Sep 2020 13:11:12 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=pfpt0220; bh=RsKT5/OqC4siqp5G7EI7cgJ7AQMFRVYo5jdgzWl/sbs=; b=P5/1vtRA1PkamFKm41IEOQSWrCpwRU8X5NsrwMhQRvuuypKg9m6TGOo6mpGdyQSHLeJi ZCwv/x6O0+BI/RN95DHiYGEY0xtw/GqoHifFCEMcBm/ef8OimI0XOTwaEISL3M13VLZM WIdQgEExk4Zb5DtVxeb9N0OQmAXrOtKlp2/r+m19fjp8xJYxgD483LWgvrbPaXhXDCfY 6Po8BFj4mmaIaariP7AfFWiONXYZzxkdu+BURNaWhmrv7GVL5apSRv4oNijHL9YtxIZ8 78WxPgmzv4tFLU3y/O086OWEhsdGPt/7Qz3dJzbBe3dnBKLM2RY0WkjA4ayDiVT+n5Ob ZA== Received: from sc-exch03.marvell.com ([199.233.58.183]) by mx0a-0016f401.pphosted.com with ESMTP id 33guppu8aw-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Sun, 13 Sep 2020 13:11:12 -0700 Received: from DC5-EXCH02.marvell.com (10.69.176.39) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Sun, 13 Sep 2020 13:11:11 -0700 Received: from SC-EXCH03.marvell.com (10.93.176.83) by DC5-EXCH02.marvell.com (10.69.176.39) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Sun, 13 Sep 2020 13:11:10 -0700 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (104.47.70.109) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server (TLS) id 15.0.1497.2 via Frontend Transport; Sun, 13 Sep 2020 13:11:10 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UNhQIzUFgV9PKvywqmvH5vsNwYCBxhq7ByRoEUdvtpHHdFRBNHYunYv/RhSaCfumXsVYnFDo7uEpNmidfRIn4XKghxLkJTuAAOIPB1q+DbYVqjBPxWbDoaMpqEN8dRJfXY80/WA2iqdL6TX7h4/lo1oPDuE6PhGJiTht53nAg8eKkWe8pwBTXFmvlyQJRlR2iZDEyCGOhYYDrGTKQ5Ld31dDxB8spt43p1FrNje4QXg3JHtacM0hN7DnCpjKuejYSmeS/jmiIsff15ngYBCKhcfqGbQRZGLuYj1oNNG+a0NPkGIBe1Ek+1sV6p7M3x/fpe2FRglvEydFr8HeRc4ACA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RsKT5/OqC4siqp5G7EI7cgJ7AQMFRVYo5jdgzWl/sbs=; b=kjbHR0F9S7ECkuTtpMq7MBMvAQPLtxloyWhgoG2/4YoN5FhAljnptXY2Tr7CsrobCwYF0VxIAAhXfPuRCROxpC+JtH+z4qv/ck8wvqNzUA5Lw94Wfs9rF2hN2PvTWehU2ualor1lmqzRtyKrBWM2D+Ecs1vpcyBNOY8RKhJrcpUGdm8J1PKzPIdtG9RvQ8/mva2o3n0UDX207S10LfIzwwR5qg9WeOcSnBTNVXWxoXXu0SFYRugtPzL8T9ZWhbLNHJqOjXNmQ0x28eRYX5rtCpYGjBqk3gWQG4WMLqv8LZv30cr6cxl2j+k0G0ufujvtsY1Ds6SO22428r/1JVDefA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=marvell.com; dmarc=pass action=none header.from=marvell.com; dkim=pass header.d=marvell.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.onmicrosoft.com; s=selector1-marvell-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RsKT5/OqC4siqp5G7EI7cgJ7AQMFRVYo5jdgzWl/sbs=; b=LVhH8alaNLxe+7juaZLF3ZGB9UQqqfjBJ6fDKGl68FgBveOEOoo8CkYjipa2CA7ZH7ywgBoNew57p6POqqZsAZrLU2MYiVHe7ME8pq5vGMGZcZckeT7+XJxR6dwOUt3y5bqhftijCYFePOQFEx0nRFRyUMX7zQ/FteyR3LzaJ/8= Received: from BN6PR18MB1140.namprd18.prod.outlook.com (2603:10b6:404:6a::10) by BN8PR18MB2626.namprd18.prod.outlook.com (2603:10b6:408:69::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3370.16; Sun, 13 Sep 2020 20:11:08 +0000 Received: from BN6PR18MB1140.namprd18.prod.outlook.com ([fe80::c816:d1f8:15db:3d4]) by BN6PR18MB1140.namprd18.prod.outlook.com ([fe80::c816:d1f8:15db:3d4%10]) with mapi id 15.20.3370.019; Sun, 13 Sep 2020 20:11:08 +0000 From: Pavan Nikhilesh Bhagavatula To: Harry van Haaren , "dev@dpdk.org" Thread-Topic: [dpdk-dev] [PATCH] eal: add new prefetch0_write variant Thread-Index: AQHWiBx5UWWj4p3hj0K7e3LcD1CylalnAQ4w Date: Sun, 13 Sep 2020 20:11:08 +0000 Message-ID: References: <20200911091919.62167-1-harry.van.haaren@intel.com> In-Reply-To: <20200911091919.62167-1-harry.van.haaren@intel.com> Accept-Language: en-IN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=marvell.com; x-originating-ip: [1.6.215.227] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: bed769c2-b25e-40b7-38b7-08d8582126ec x-ms-traffictypediagnostic: BN8PR18MB2626: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:514; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: l3egLRDV7ulifInNAWW0Q05I5BYSaf4IlKDtXj2nn/ZQcz26EgH0a8qZo1v9okBOeYwOIfU9OKciQg4k90uumVQrwXirtqQjr/wdt2IlivrsSOHtorRVHUIb5PxdliToI5dA/wJkQhznQgbde6+m0ApDHLqzgCnOIKOPw1bmQUrcVWp6TQD3OvWqa9bVS8fF8q4YqQFJthWGxieJ8A0mj9NK/rZVFil/X8ZfD0P4m6gZnccNChjAD1CMi7spITdPbqLe6nB5CCYxhd/tNZqPOeAGub7sERuhuaGe4m4tuP6qKc4RJPS9raxpLzgAg/3FSilNWmZVCOU63XBCHBB+ftSsJvvA4pTS1lFFSGuWYtnIMJ6osTy7UxxNQia4NXZ1VPly2cCFAIbDrUji8FUB2A== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN6PR18MB1140.namprd18.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(39850400004)(366004)(376002)(346002)(396003)(136003)(2906002)(966005)(66946007)(71200400001)(76116006)(110136005)(186003)(5660300002)(83380400001)(66476007)(66556008)(64756008)(66446008)(52536014)(26005)(7696005)(316002)(33656002)(8676002)(9686003)(86362001)(55016002)(6506007)(478600001)(8936002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: JWO8lnkBOstSf8uSxHn83wt4BInztpB0RYNng/rME3FuG34MvZ6NaCHXyWrMg1XRdsQqoEnK/Du9cxz2hq0nxvikbinbC2vK9NhMo8d/RR8ho6H99xS5OpOg7NpusMCbbl26JeYqPluZLNAPBamzkZ38QFV7ZSC657cxG1GRUVPfvu0fEpSienb14kRvZkJeUaBkBZTiisDUbgr9frGPx/Z97qCMlMizaH3g06ktde+bfonvaLkuxxApvOBCbr9UsyqFNrXMEsfh9uM3KsHMAoL7COdFOZl/KPsTuQsYK3JK/SR8AhsxCUbKTsK8ZHTKkcRw8qpUgwope3V7UNVAfBQKmzqHYnqj6nyydXniz1xvPbm7G4y7I41kOB9jXq4sc/r+arkge6WDu1PfM2vXYMG/fmQFudJ0A0JUgbyE5UsZGOyBD2o7IZViR+Fgf6Ik34EVsYdxds54HoxqKsQ95MQJzknURq5ihmhvta5QhuYSi2VGfh9Ej3QGMKTY2bxB1gICYATFLOITA51dJlKp08eJZNw7Il8rWIE06jsUX/lSssc8Fi16rD735TASBTo8aEqy8vcL+jgg7z4vFjoOqenWeRkifhfIXp3Fj+4KQswJDbyX4SJN3JSpgm3oLjsjkJ/OcNXNGlNqWcyg3tKzKA== x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BN6PR18MB1140.namprd18.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: bed769c2-b25e-40b7-38b7-08d8582126ec X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Sep 2020 20:11:08.1836 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: SEWSguKZfiCoWazngUygYjVG5RQHqlAgUwCh1PWZx2mAkz2XJnl96GuzsaYW9S88k/4C8kY3wsgXlsSnzJnMb5KwT6G3M3S+iswALIZBGc4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR18MB2626 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.235, 18.0.687 definitions=2020-09-13_08:2020-09-10, 2020-09-13 signatures=0 Subject: Re: [dpdk-dev] [PATCH] eal: add new prefetch0_write variant 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 commit adds a new rte_prefetch0_write() variant, suggests to the >compiler to use a prefetch instruction with intention to write. As a >compiler builtin, the compiler can choose based on compilation target >what the best implementation for this instruction is.=09 Why not have the other variants too i.e. l2/l3/temporal store prefetches to= o? > >Signed-off-by: Harry van Haaren > >--- > >The integer constants passed to the builtin are not available as >a #define value, and doing #defines just for this write variant >does not seems a nice solution to me... particularly for those using >IDEs where any #define value is auto-hinted for code-completion. > >--- > lib/librte_eal/include/generic/rte_prefetch.h | 16 ++++++++++++++++ > 1 file changed, 16 insertions(+) > >diff --git a/lib/librte_eal/include/generic/rte_prefetch.h >b/lib/librte_eal/include/generic/rte_prefetch.h >index 6e47bdfbad..44e2e9abfc 100644 >--- a/lib/librte_eal/include/generic/rte_prefetch.h >+++ b/lib/librte_eal/include/generic/rte_prefetch.h >@@ -51,4 +51,20 @@ static inline void rte_prefetch2(const volatile >void *p); > */ > static inline void rte_prefetch_non_temporal(const volatile void *p); > >+/** >+ * Prefetch a cache line into all cache levels, with intention to write. >This >+ * prefetch variant hints to the CPU that the program is expecting to >write to >+ * the cache line being prefetched. >+ * >+ * @param p Address to prefetch >+ */ >+static inline void rte_prefetch0_write(const void *p) >+{ >+ /* 1 indicates intention to write, 3 sets target cache level to L1. >See >+ * GCC docs where these integer constants are described in >more detail: >+ * https://urldefense.proofpoint.com/v2/url?u=3Dhttps- >3A__gcc.gnu.org_onlinedocs_gcc_Other- >2DBuiltins.html&d=3DDwIBAg&c=3DnKjWec2b6R0mOyPaz7xtfQ&r=3D1cjuAHrG >h745jHNmj2fD85sUMIJ2IPIDsIJzo6FN6Z0&m=3DOMPc_t21vsWlzVl0UjdGB >hTTv1Gngqfk8vth9UQtUSA&s=3D51jgfiV2UC5B3xxBE- >4gRAte3lCZP3v370U7Fpn6LaE&e=3D >+ */ >+ __builtin_prefetch(p, 1, 3); >+} >+ > #endif /* _RTE_PREFETCH_H_ */ >-- >2.17.1