Message ID | 20170426162919.15397-1-jerin.jacob@caviumnetworks.com (mailing list archive) |
---|---|
State | Accepted, archived |
Delegated to: | Thomas Monjalon |
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id 611316A71; Wed, 26 Apr 2017 18:29:52 +0200 (CEST) Received: from NAM03-DM3-obe.outbound.protection.outlook.com (mail-dm3nam03on0064.outbound.protection.outlook.com [104.47.41.64]) by dpdk.org (Postfix) with ESMTP id DC58B692F for <dev@dpdk.org>; Wed, 26 Apr 2017 18:29:50 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=F7OVMfA+9by+SiV9b1eGc6a8VnzYCsZM4yWgSDNyz6o=; b=Ex9tnud+7VMvzK5upojRlW8UGWYRu7ONyOGTkiu45dwjkP+jHRj0VT4+Qb0AbeAXoe39GWv5xVyaK4ERkKGKfX9J3btUJc/VFfF5KflIRjJoKLRmwRmbQSLb+HLLlOV9p8nSim0fy6V7qPOy9iyCS7fC8bmZFVlSboRkjTiI/9Y= Authentication-Results: dpdk.org; dkim=none (message not signed) header.d=none;dpdk.org; dmarc=none action=none header.from=caviumnetworks.com; Received: from jerin.caveonetworks.com (111.93.218.67) by BN3PR0701MB1718.namprd07.prod.outlook.com (10.163.39.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1061.12; Wed, 26 Apr 2017 16:29:46 +0000 From: Jerin Jacob <jerin.jacob@caviumnetworks.com> To: dev@dpdk.org Cc: thomas@monjalon.net, jianbo.liu@linaro.org, hemant.agrawal@nxp.com, christian.ehrhardt@canonical.com, Jerin Jacob <jerin.jacob@caviumnetworks.com> Date: Wed, 26 Apr 2017 21:59:19 +0530 Message-Id: <20170426162919.15397-1-jerin.jacob@caviumnetworks.com> X-Mailer: git-send-email 2.12.2 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [111.93.218.67] X-ClientProxiedBy: PN1PR01CA0092.INDPRD01.PROD.OUTLOOK.COM (10.174.144.160) To BN3PR0701MB1718.namprd07.prod.outlook.com (10.163.39.17) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: cb2b67b1-c92f-4470-6aa2-08d48cc174d4 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(201703131423075)(201703031133081); SRVR:BN3PR0701MB1718; X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1718; 3:Z9/bMUouvY6n2MM1fT+3eTUQlZs1bYQDHkSyZ4IS3a3jGnmjyQH4FJfJA0J6+bz+Leqh8P6LEbpFeGKDnypaxwYyfSqyYuMMG46VaFcTTMCW/ueU+Qn63ok3ejKw8EXFyBno6xK2W8HESocC+5TgzzEcPgGzMhhuqBiWzHHk+X2j+Z6HNpbC2bbLNbTxikAVHX3SxJPbqp+UXJQs90exgkZTwkWa17fPt0I8vpqEGRkFbCCVaHEX4BDQ+HMIlP7vVAM3CIdEIGlPbkTx3rsWIDf19VKJSxShb4GLkUbjOo6SeAWML01RK26IRhW3sDLjP3OWK15ZrQTfSRjMGwRwxA==; 25:LQdCFQnFbPHqoJvZ39dn5pERMVhEQnRSlToDwuc0B9+seNweJsA5voHWUSdulUb7tYwGXhEjHtfxDNB5gMzBY8SvMn0FoOyRhlxsrFYXMlhKlKaR3kezUccUfTnjaKL6cu6I1oA1HN2Iw7+zLn8dKvlkQIbjiIsVD1iva2Dvd0Ft7EyNP/7Nkr5onSVUyHnWr82fLZglXDUxvf2uuXYbQLReugOAc0s3JY1HGoy5zNcKzGmlq8FzYYIolLVsgis4aLRln0wFv6WxowucotLIHo6f54KnB3gk36Z6hvte1ws+jJ6f+aVSlgvfMbY8zvEvwzgao/dAVVhFsbqtmDl04NTr0iBnxH8ZGN1nm5cXsxzdYCfaWPIBJzkdCH7E7xctZG6zHWgBslaEpu3BMn7u/6PUsEqNZvup39P8V/WBHYdR9BW5AqiUeOoe6i7TeavKDKmKr0y5l7x8uFu6LOAZkQ== X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1718; 31:wwCP3CK2CC9uWnX3zizqQa0egVIJnza62gLmHnTsbiSC1aTqqOImVRwRoG/cFThHRe8BBWwLLsRxmTrizyoPDR6LeS5OG9W9IdVvFSZuNVcMtx7JTqb5IVfj6alY8iqLf5CMYcseZdobfRIFLkZV2BAHDkmDWqpn2j6zOTXdIptJBxSEOy9cPhWrovvR9V/m0dVy5KUuP27hLBObTdL+9AVCKChdES+ANUPJVJt29fE=; 20:fo0ZGnbZd5GI4alrIg6gBKufYYJswJHjpHQMqZC5aUvAmhS4q2MbH2tEuDvRoqoslvyqyUFTSkArXT4wPndFTqB7SOSVHvTYyC0aywyXcbSOvrnNK7vjOVaFiO2Lxz1nsDj59F2nbvDGGhP1jBAmMvVHIFsDrzaenA6UoSuOVLHFRcRVXMBujAWnBuOwMaex5gmWvzcMmz30eEVVZ/JL0snUwTa72rIL9+jNMZ+bgcGCAmlu/PRxb+ZvVYx5uYzcNkkaUSswE0ErlPrTfJOxh7/IRqYW+6ASj15vK0CVll4YCn5pOfxwBEqUSyWlbQeJBUPb4OiM02Nh6FoACgedRVjKM87uEDA4ovPDc4ey//OJiTzzE3PEN/PC0+tw19Rj4n7e4EcFi86BWzIuXrO+yqhs+aJ7l5BXRGFcKZGpCytn7FWIBTpzTDuMvswjZT8Z80ZhO16RGx25zbq+npjf6cxJDC5XJ0/65ESFC/0cAooNwV/oDoFXpaoPUMKJRL2N99lzhmZ4f7ybrHiYdEZvUtP3O13+ncfyZsn0fqdrn8JBLNJEW1unFGZDlnw5pl13sdu/h9BpoivhHV+MegoZZsfDf7sHWESE/gzVk54jdvs= X-Microsoft-Antispam-PRVS: <BN3PR0701MB171829F29409F63A4D7121D2E3110@BN3PR0701MB1718.namprd07.prod.outlook.com> X-Exchange-Antispam-Report-Test: UriScan:(58145275503218); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040450)(601004)(2401047)(5005006)(8121501046)(93006095)(10201501046)(3002001)(6041248)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(20161123560025)(20161123562025)(20161123555025)(6072148); SRVR:BN3PR0701MB1718; BCL:0; PCL:0; RULEID:; SRVR:BN3PR0701MB1718; X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1718; 4:KZDqcqf+1FEMvzl38DOoSsvKg69+XqgrhLqKG7AguKmXThrnqMUSL5gKfLcaRUzrTrcQjm63safGSwZc32CzJvmORpSrag0nDAhvBLNq/V7lEcE08mW4cWd1c/+pHcOMtPoq+cq8cFCOf27aNeu/9CEuNIMkBVUn6hidx6R9ar6jB9qwq/jZIaEcCAgvjnO9OnSJdoZOJsBOTyFBYvFyOj0nYdR91mEVp70OGRn3Ox6+I1NpHWPm0SBkCSu18cE5zwl4a39BrYvIz3o6Tbmsy+0M2yQENTDtzQzZx0puWq2+FDdvhnE5ODr48OgVMgc/FAsUwA9LU4WXnmejjPO8pidWg186KBP1YNvbH2bWyZjD7FD9yKjjuaaGvw6tGCVPrzIgpSRuj51vTqpMBnqW9z+0de7neKTcRWPTgMbbbZdiYm0DyszgIPpBK/ZGsGfRgtX/lE4wIdqc0HWUFC6AlLcyXuFKE3zUAl9kTbmOSolezpQT6fpwaFIxdqbZqsN3dgkEukSPmb7s2vqEB/M2TR2umkrU4CCz3bFHenREvKK7uxG6VU+1XRQytYc+WVWXXUQZO2iAf0LUentCftLi8Df+UbaGgyL3PIViGaffHrsEaaHAfyqIsFp3z963/xXM8gn02kKaYKMiurVFmwd1CeCmoPLXNS83raA7aXDKy9Y9nNEV/rsYng++cOZOQ0h80cC3SFwZamesDHbmRAqq9Y3BS2iO5BBW8lICAUv/UFBkHUtLeMDoo3zC275FJMGmUlIRTU3siT4bI10enlP1aY6fWOM5xPIqLFClIqxamIMWmLqcsINgFnj5WfHBLJnt X-Forefront-PRVS: 0289B6431E X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(39450400003)(39410400002)(39400400002)(39850400002)(39840400002)(50226002)(48376002)(5660300001)(5003940100001)(33646002)(6916009)(42882006)(6666003)(6486002)(6512007)(53936002)(6506006)(8676002)(81166006)(8656002)(38730400002)(110136004)(36756003)(6306002)(966004)(4326008)(1076002)(47776003)(305945005)(66066001)(50986999)(6116002)(53416004)(2351001)(2361001)(5009440100003)(2906002)(575784001)(15380165006)(7736002)(189998001)(50466002)(25786009)(42186005)(3846002)(41533002); DIR:OUT; SFP:1101; SCL:1; SRVR:BN3PR0701MB1718; H:jerin.caveonetworks.com; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN3PR0701MB1718; 23:YlC9Lthq8fudit+wIAOzTFdRooESIw3whsnhzKD?= U9A1ZkitrvjaqqUS6VcWExaTD7gqzXXiCrK07li6WWZADtoaL96PivjzBhTNlkzK0HKZoGc4bkyPRiP4CAE8gAQjImiPdZcoMcwodzZcuME9bf/JbiyGeW0JmUkYuksyykkj/Y0lFxh5RU5kFhNlMIqXCMIHZH81gRFUFJBoF2WHx3H3DzsxVeljoenY33H5bOQ2PumkUNNmfJ/elbcJvZy7IYxuQ8b3FHeHNdrEK1No4Ej2q/7oOvZYMJpnCwwpnfA7cmAKvcUHpNVY7BP4ZJhmZ2Mv6Iea4Nh4MY8duvcTxWpdW2AuyY4da0TqZ8SLBD+Uy2+fUhQAjo/HU/NtB6LPaIsUZbYDzKQEQ5oK6G529Il5tlQP89NQhbJd00hSv6f/UjNq3erfA/XAkwqI9yRRvS33/wVj6vjMpF1T73pA1mivjU/VJgnc1iUY6+zSmnfz7HE8gGFH/Eo0+errij9wC+q7BZGkxWxv/7MMMMmuOb3j51QeoeJK1I9wgbs8UsVZsgVLylmypv8XDQA2X8d1mJvyVZWU6y37ceazjqVXl1snD4UwS8IK61xdLNP2lk9/9uzq+GRt253OCdWRWlFBQvJBG1aMUvrthKoL/3Ncw0GPSPldLasGln+17rhyxaKRg7C2fXqVcn4Mj/DIHyBfLNrNOtVpoDoRgOVCOlbXJB3LK5gTAIIxUPzecmUl8rA/sqc34D3usLxvEteCEbJQCUJeYkupDrOnp0dJwqJB7hxqHR84bYi+XjIw8VFQMPz9wOYfCcOhUoufyD8BCBNGKHRJAhfLl0aEHgmlOrBmmWukUztj9odf7hrdshXipOcwu5oV8u9ILDAT7kVy0Sotzs8mzkQDTc6J+s4RnM7ThZfActcuPUfxbZrVZPRe4lW5LB14n3TGz/gm25dEhmqPrr4gKFR00ZLGMxukWCNK392qBdYLjJZHcUbUiS6lOPxSk+rTfSjsgfPXZ4D0KWercUW2eMZB/hPBvGA1FQ/J9yv1DTV5L3pX9FqokCR2NNpVJDh9dvgtfMcnDWxhEu7Vw3V/Pi6QkRlaNxASte69x4CoeYm1q1jYUD8KfXmibD2tyNdj0vhuOkVtJPRRSUmVkcnlkMCs0ahdrsV+xJXOZ7uzxExGQyk/zMfx88My1ahs= X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1718; 6:OwAV3KNvNFh58HdGdBHrpIDx85O7CTySIYxlevwFn3fwDVVsKaJaeMOOM0BHw9Q24tVVTsdGj096D3PNaO8yUvlAWamAF1OQgcOUzrWyDPhJlom30tDrr7Cbwxa14f/X2rZI0xHVsNo1zs08zM3kuS4f5yH9qOWuke/+PSkWASz1GLnLOialUsYZm3qZzl60UtwAJXj1kylnQuSgHT2dTlfQcuSP708zaEv2T8yVqz/ak2TORf5PJTOdYtjtkbh3xBK1B9FrAUmuvn3FzzBEHEM8jiML5NgNf6r3+0ttBMHjrI7iLzRUZW82UgwIHDwuLWU/mUJzDtDgFjpVWCaHSzb9yV3gYowOa2fJsZjKudNBvlLHhKWm1znMJuRBhHPL3wZ7yW8iqzCHsmyczaK82rkjxEEs9N/pFxVPGHzeYM3MwbdOKb9O8czGY7iRt2bhW3QEJnL8Ot0SnkZf2ByJeIYzG6nwv9Q7KRVArts3qaut+5ZbkBUsFbXLK3Svjdj9l+HQciIGQBr/HQyn5xa0zQ==; 5:87J7sT0BRiXHkF6sB7DpnBqxsX/UjGYXi7s39A6dZLmtzzEvMGdzFR+OhOCxGLgeKDsuRuMGgIY6i6DfjixcL1E12y/CuMKuexJx07+R6OE4VLtMBhl5pQMs3XtQhkhd8bJ+C93CXTFiZnMbrtnQpg==; 24:CsO6k19otZTipFJEXvH9s2RcMtRKOVs4XjtQO/s+b0E9wORgW0VqiJ+DrThouGDzE/ncigsetm6/sYe3Vkd3L0wLqz4SihJyk92C/8U3Z0E= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1718; 7:vG0wLrNlfsIxXI/XAGWwg51xArTO0b0kmPF23OWvy2JCmuZLTlWvF7OTLDK/xYxh4Mb95GAYpKdSfE+sQE8vkf2C0Ij3qBKbYOi1Nh7OTA8yOmn8pDcMJd9x/8TPcQfyEanpRdkUbtZdltp9zsibwyEV7mXYnXdDEI7rDEWFqtwnxkbI4WX9+a1YeIwfAIjeVvJB+qoyQuDEm2ptRCG89D0BTlu2P/YKTJX3Y+GNpTs6MeazS6kZ3AThbl2u+C2+k4BkbjXWdQqsbehsNW7n7RteMrtxPuiWUzdrcOloKcxcFaFfN5DB3nDhQ32dtVynHZHw5oCySgwzEk8ids5SUQ== X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Apr 2017 16:29:46.4611 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0701MB1718 Subject: [dpdk-dev] [PATCH] config: set cache line as 128B in the generic arm64 config X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <http://dpdk.org/ml/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://dpdk.org/ml/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <http://dpdk.org/ml/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Checks
Context | Check | Description |
---|---|---|
ci/checkpatch | success | coding style OK |
ci/Intel-compilation | success | Compilation OK |
Commit Message
Jerin Jacob
April 26, 2017, 4:29 p.m. UTC
armv8 implementations may have 64B or 128B cache line.
Setting to the maximum available cache line size in generic config to
address minimum DMA alignment across all arm64 implementations.
Increasing the cacheline size has no negative impact to cache invalidation
on systems with a smaller cache line.
The need for the minimum DMA alignment has impact on functional aspects
of the platform so default config should cater the functional aspects.
There is an impact on memory usage with this scheme, but that's not too
important for the single image arm64 distribution use case.
The arm64 linux kernel followed the similar approach for single
arm64 image use case.
http://lxr.free-electrons.com/source/arch/arm64/include/asm/cache.h
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
---
config/defconfig_arm64-armv8a-linuxapp-gcc | 5 +++++
config/defconfig_arm64-dpaa2-linuxapp-gcc | 1 +
config/defconfig_arm64-xgene1-linuxapp-gcc | 1 +
3 files changed, 7 insertions(+)
Comments
On 27 April 2017 at 00:29, Jerin Jacob <jerin.jacob@caviumnetworks.com> wrote: > armv8 implementations may have 64B or 128B cache line. > Setting to the maximum available cache line size in generic config to > address minimum DMA alignment across all arm64 implementations. > > Increasing the cacheline size has no negative impact to cache invalidation > on systems with a smaller cache line. > > The need for the minimum DMA alignment has impact on functional aspects > of the platform so default config should cater the functional aspects. > > There is an impact on memory usage with this scheme, but that's not too > important for the single image arm64 distribution use case. > > The arm64 linux kernel followed the similar approach for single > arm64 image use case. > http://lxr.free-electrons.com/source/arch/arm64/include/asm/cache.h > > Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com> > --- > config/defconfig_arm64-armv8a-linuxapp-gcc | 5 +++++ > config/defconfig_arm64-dpaa2-linuxapp-gcc | 1 + > config/defconfig_arm64-xgene1-linuxapp-gcc | 1 + > 3 files changed, 7 insertions(+) > > diff --git a/config/defconfig_arm64-armv8a-linuxapp-gcc b/config/defconfig_arm64-armv8a-linuxapp-gcc > index 65888cef1..0faa2d3a3 100644 > --- a/config/defconfig_arm64-armv8a-linuxapp-gcc > +++ b/config/defconfig_arm64-armv8a-linuxapp-gcc > @@ -42,6 +42,11 @@ CONFIG_RTE_FORCE_INTRINSICS=y > CONFIG_RTE_TOOLCHAIN="gcc" > CONFIG_RTE_TOOLCHAIN_GCC=y > > +#Maximum available cache line size in arm64 implementations. Setting to maximum > +#available cache line size in generic config to address minimum DMA alignment > +#across all arm64 implementations. > +CONFIG_RTE_CACHE_LINE_SIZE=128 > + > CONFIG_RTE_EAL_IGB_UIO=n > > CONFIG_RTE_LIBRTE_FM10K_PMD=n > diff --git a/config/defconfig_arm64-dpaa2-linuxapp-gcc b/config/defconfig_arm64-dpaa2-linuxapp-gcc > index 010cb8092..314a0eceb 100644 > --- a/config/defconfig_arm64-dpaa2-linuxapp-gcc > +++ b/config/defconfig_arm64-dpaa2-linuxapp-gcc > @@ -41,6 +41,7 @@ CONFIG_RTE_ARCH_ARM_TUNE="cortex-a57+fp+simd" > # > CONFIG_RTE_MAX_LCORE=8 > CONFIG_RTE_MAX_NUMA_NODES=1 > +CONFIG_RTE_CACHE_LINE_SIZE=64 > > CONFIG_RTE_PKTMBUF_HEADROOM=256 > > diff --git a/config/defconfig_arm64-xgene1-linuxapp-gcc b/config/defconfig_arm64-xgene1-linuxapp-gcc > index f096166b7..d8e544728 100644 > --- a/config/defconfig_arm64-xgene1-linuxapp-gcc > +++ b/config/defconfig_arm64-xgene1-linuxapp-gcc > @@ -32,3 +32,4 @@ > #include "defconfig_arm64-armv8a-linuxapp-gcc" > > CONFIG_RTE_MACHINE="xgene1" > +CONFIG_RTE_CACHE_LINE_SIZE=64 > -- Acked-by: Jianbo Liu <jianbo.liu@linaro.org>
Hi Jerin, On Wednesday 26 April 2017 09:59 PM, Jerin Jacob wrote: > armv8 implementations may have 64B or 128B cache line. > Setting to the maximum available cache line size in generic config to > address minimum DMA alignment across all arm64 implementations. > > Increasing the cacheline size has no negative impact to cache invalidation > on systems with a smaller cache line. > > The need for the minimum DMA alignment has impact on functional aspects > of the platform so default config should cater the functional aspects. > > There is an impact on memory usage with this scheme, but that's not too > important for the single image arm64 distribution use case. > > The arm64 linux kernel followed the similar approach for single > arm64 image use case. > http://lxr.free-electrons.com/source/arch/arm64/include/asm/cache.h > > Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com> > --- > config/defconfig_arm64-armv8a-linuxapp-gcc | 5 +++++ > config/defconfig_arm64-dpaa2-linuxapp-gcc | 1 + > config/defconfig_arm64-xgene1-linuxapp-gcc | 1 + > 3 files changed, 7 insertions(+) > > diff --git a/config/defconfig_arm64-armv8a-linuxapp-gcc b/config/defconfig_arm64-armv8a-linuxapp-gcc > index 65888cef1..0faa2d3a3 100644 > --- a/config/defconfig_arm64-armv8a-linuxapp-gcc > +++ b/config/defconfig_arm64-armv8a-linuxapp-gcc > @@ -42,6 +42,11 @@ CONFIG_RTE_FORCE_INTRINSICS=y > CONFIG_RTE_TOOLCHAIN="gcc" > CONFIG_RTE_TOOLCHAIN_GCC=y > > +#Maximum available cache line size in arm64 implementations. Setting to maximum > +#available cache line size in generic config to address minimum DMA alignment > +#across all arm64 implementations. > +CONFIG_RTE_CACHE_LINE_SIZE=128 > + > CONFIG_RTE_EAL_IGB_UIO=n > > CONFIG_RTE_LIBRTE_FM10K_PMD=n > diff --git a/config/defconfig_arm64-dpaa2-linuxapp-gcc b/config/defconfig_arm64-dpaa2-linuxapp-gcc > index 010cb8092..314a0eceb 100644 > --- a/config/defconfig_arm64-dpaa2-linuxapp-gcc > +++ b/config/defconfig_arm64-dpaa2-linuxapp-gcc > @@ -41,6 +41,7 @@ CONFIG_RTE_ARCH_ARM_TUNE="cortex-a57+fp+simd" > # > CONFIG_RTE_MAX_LCORE=8 > CONFIG_RTE_MAX_NUMA_NODES=1 > +CONFIG_RTE_CACHE_LINE_SIZE=64 > > CONFIG_RTE_PKTMBUF_HEADROOM=256 > > diff --git a/config/defconfig_arm64-xgene1-linuxapp-gcc b/config/defconfig_arm64-xgene1-linuxapp-gcc > index f096166b7..d8e544728 100644 > --- a/config/defconfig_arm64-xgene1-linuxapp-gcc > +++ b/config/defconfig_arm64-xgene1-linuxapp-gcc > @@ -32,3 +32,4 @@ > #include "defconfig_arm64-armv8a-linuxapp-gcc" > > CONFIG_RTE_MACHINE="xgene1" > +CONFIG_RTE_CACHE_LINE_SIZE=64 Acked-by : Santosh Shukla <santosh.shukla@caviumnetworks.com> Thanks,!
-----Original Message----- > Date: Fri, 28 Apr 2017 10:14:11 +0800 > From: Jianbo Liu <jianbo.liu@linaro.org> > To: Jerin Jacob <jerin.jacob@caviumnetworks.com> > Cc: dev@dpdk.org, thomas@monjalon.net, Hemant Agrawal > <hemant.agrawal@nxp.com>, christian.ehrhardt@canonical.com > Subject: Re: [dpdk-dev] [PATCH] config: set cache line as 128B in the > generic arm64 config > > On 27 April 2017 at 00:29, Jerin Jacob <jerin.jacob@caviumnetworks.com> wrote: > > armv8 implementations may have 64B or 128B cache line. > > Setting to the maximum available cache line size in generic config to > > address minimum DMA alignment across all arm64 implementations. > > > > Increasing the cacheline size has no negative impact to cache invalidation > > on systems with a smaller cache line. > > > > The need for the minimum DMA alignment has impact on functional aspects > > of the platform so default config should cater the functional aspects. > > > > There is an impact on memory usage with this scheme, but that's not too > > important for the single image arm64 distribution use case. > > > > The arm64 linux kernel followed the similar approach for single > > arm64 image use case. > > http://lxr.free-electrons.com/source/arch/arm64/include/asm/cache.h > > > > Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com> > > --- > > config/defconfig_arm64-armv8a-linuxapp-gcc | 5 +++++ > > config/defconfig_arm64-dpaa2-linuxapp-gcc | 1 + > > config/defconfig_arm64-xgene1-linuxapp-gcc | 1 + > > 3 files changed, 7 insertions(+) > > -- > > Acked-by: Jianbo Liu <jianbo.liu@linaro.org> Thomas, Is it possible to merge this patch for v17.05-rc3?
28/04/2017 04:14, Jianbo Liu: > On 27 April 2017 at 00:29, Jerin Jacob <jerin.jacob@caviumnetworks.com> wrote: > > armv8 implementations may have 64B or 128B cache line. > > Setting to the maximum available cache line size in generic config to > > address minimum DMA alignment across all arm64 implementations. > > > > Increasing the cacheline size has no negative impact to cache invalidation > > on systems with a smaller cache line. > > > > The need for the minimum DMA alignment has impact on functional aspects > > of the platform so default config should cater the functional aspects. > > > > There is an impact on memory usage with this scheme, but that's not too > > important for the single image arm64 distribution use case. > > > > The arm64 linux kernel followed the similar approach for single > > arm64 image use case. > > http://lxr.free-electrons.com/source/arch/arm64/include/asm/cache.h > > > > Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com> > > Acked-by: Jianbo Liu <jianbo.liu@linaro.org> Applied, thanks
diff --git a/config/defconfig_arm64-armv8a-linuxapp-gcc b/config/defconfig_arm64-armv8a-linuxapp-gcc index 65888cef1..0faa2d3a3 100644 --- a/config/defconfig_arm64-armv8a-linuxapp-gcc +++ b/config/defconfig_arm64-armv8a-linuxapp-gcc @@ -42,6 +42,11 @@ CONFIG_RTE_FORCE_INTRINSICS=y CONFIG_RTE_TOOLCHAIN="gcc" CONFIG_RTE_TOOLCHAIN_GCC=y +#Maximum available cache line size in arm64 implementations. Setting to maximum +#available cache line size in generic config to address minimum DMA alignment +#across all arm64 implementations. +CONFIG_RTE_CACHE_LINE_SIZE=128 + CONFIG_RTE_EAL_IGB_UIO=n CONFIG_RTE_LIBRTE_FM10K_PMD=n diff --git a/config/defconfig_arm64-dpaa2-linuxapp-gcc b/config/defconfig_arm64-dpaa2-linuxapp-gcc index 010cb8092..314a0eceb 100644 --- a/config/defconfig_arm64-dpaa2-linuxapp-gcc +++ b/config/defconfig_arm64-dpaa2-linuxapp-gcc @@ -41,6 +41,7 @@ CONFIG_RTE_ARCH_ARM_TUNE="cortex-a57+fp+simd" # CONFIG_RTE_MAX_LCORE=8 CONFIG_RTE_MAX_NUMA_NODES=1 +CONFIG_RTE_CACHE_LINE_SIZE=64 CONFIG_RTE_PKTMBUF_HEADROOM=256 diff --git a/config/defconfig_arm64-xgene1-linuxapp-gcc b/config/defconfig_arm64-xgene1-linuxapp-gcc index f096166b7..d8e544728 100644 --- a/config/defconfig_arm64-xgene1-linuxapp-gcc +++ b/config/defconfig_arm64-xgene1-linuxapp-gcc @@ -32,3 +32,4 @@ #include "defconfig_arm64-armv8a-linuxapp-gcc" CONFIG_RTE_MACHINE="xgene1" +CONFIG_RTE_CACHE_LINE_SIZE=64