From patchwork Sun May 28 19:58:29 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jerin Jacob X-Patchwork-Id: 24815 X-Patchwork-Delegate: jerinj@marvell.com Return-Path: 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 6E84A7CEA; Sun, 28 May 2017 22:00:30 +0200 (CEST) Received: from NAM03-DM3-obe.outbound.protection.outlook.com (mail-dm3nam03on0081.outbound.protection.outlook.com [104.47.41.81]) by dpdk.org (Postfix) with ESMTP id 21B127CE7 for ; Sun, 28 May 2017 22:00:24 +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=GWWcPb/XNFfB1UU76eLe5yhgD1HawYG5DHzuLiHKyQk=; b=R5G6bIzyC3lSWhr+aRyGTFKNlcqu7E6rl9BkZp8R+xjIpleEX2fqdEMWBrbB09jmYJp525cIj9Y6mF5sOrK/jY5iSDSfj4cizeGyF2awGxQLPX8vL10nE0Rl0i4sOGvEdo5uZeUYpDrdrvK8HGln9nq2bnj3CsNb8Nn2E6ZIT5o= 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.domain.name (111.93.218.67) by CY1PR0701MB1725.namprd07.prod.outlook.com (10.163.21.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1124.9; Sun, 28 May 2017 20:00:20 +0000 From: Jerin Jacob To: dev@dpdk.org Cc: bruce.richardson@intel.com, harry.van.haaren@intel.com, hemant.agrawal@nxp.com, gage.eads@intel.com, nipun.gupta@nxp.com, narender.vangati@intel.com, nikhil.rao@intel.com, gprathyusha@caviumnetworks.com, Jerin Jacob Date: Mon, 29 May 2017 01:28:29 +0530 Message-Id: <20170528195854.6064-9-jerin.jacob@caviumnetworks.com> X-Mailer: git-send-email 2.13.0 In-Reply-To: <20170528195854.6064-1-jerin.jacob@caviumnetworks.com> References: <20170528195854.6064-1-jerin.jacob@caviumnetworks.com> MIME-Version: 1.0 X-Originating-IP: [111.93.218.67] X-ClientProxiedBy: BMXPR01CA0003.INDPRD01.PROD.OUTLOOK.COM (10.174.214.141) To CY1PR0701MB1725.namprd07.prod.outlook.com (10.163.21.14) X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CY1PR0701MB1725: X-MS-Office365-Filtering-Correlation-Id: 263569b6-1e07-4214-20db-08d4a6042d90 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(201703131423075)(201703031133081); SRVR:CY1PR0701MB1725; X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB1725; 3:H7JygIRnGvRWqtyubchOGpESc7XTUhUjT9QQDEb9I2JBhbUPnzMX01Wd2id6IWAx4OTfVafOfLFf/VpEXkNoO8+qJMMJYRKQlUMsHM6lqc4w3AqowtKKRiEm1110sBTE8Cw8F1gKcRXyHgkQrDqkeR3j51pNpW75aohOxL6Xxqy2goH72S9n/W/7CGdvX0mpMGoF7xL3ge1f/w3/WZanNzEpGwMx44Kt/r1aJ+NvFJAzyZqO1agC0QR1Om+OgqsX9t2G72scMcCI9MaulmxXTX9k84OwMbc40RgdiHVj9Lucmk6S85cOdAwC3bycNIquGo5xclk/7WMsE797L4KsJg==; 25:kkVMVAybT0/ba+rOqjR2CN5O6ymlVHFeNADCfo6VXfVSe/Ea7BGai72k+IKVOZLFtvt8js+u5bhp9grf2yXJLH+HcfrOZTTp4cM3y/uSCtgrScpmlVHuMtx86Xv73D/dc5tCYvmJlUv5IjrJ/LVzbWLgNmU/SBYUPTnE/7TVWNlVQu1turm0Bo8fZLEsOPYSlBDe+gS0AnkCQk4aEhJ5b4iIWoLTvOmAmUIeGlnyi89SlwDujh59ZTIGCGPIv/TJxak3eccjnAurdMSEF3DQIMN0rqgewLOkQ7qNfGXpJkPAD0k6uHmMauuQIU45AE/TYI7ZllrDfkfUzkqIG68P8txVcspNQpDZ7JEDaRktPQgI6f+3s+6hv/CaVyaRgs2hD0GM39B9xDwf01i+ihT0klzZh29oCVnVjsemcRiN64qzsK87NIGS82mHjshgmgKzCUjY2jyrZazsnrJ26a2zDMGL10Yqc9gBhzzZe/ES+ac= X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB1725; 31:b2Q4pdqroNMImGmfeyYEn3yHEa59fMMYCjMX/gsIkM+RPOsDixfFHUV1fW7jjwzXd+OBGWoUyL40O48lUeTdd8p4QHzk5mUED6SW1a6I82Glj0chasgp0xcOoq/hB535IEbtHp2Ug+8PcLCn4Ut3v5WFfUofi2uGsBvS1ZPuSxmpEP+eW25tXs4JC1SzuJWD0LvR+f1Gj+JAW1fcGVDVe16JgWIVPsBYBrbN/CZpI/A=; 20:JLs2/sYs+ebsVwq86jMA/HdEftX7UrCu+jicM12dSfRre4UXy4p35ifgyolOs4aeZpXVIE55h3gIaxJ0die/H6M+8/fDJRAjxSIdmW4d+k7vwxiu8woVOJIPEugrLCLaWguZ7XoLT4j1Sl7xKhScZPkNElzK7WJmrghp99Hgju1FBSE+iU2+sNnuCS2nA/VW1aexPD7oXT2GryMogkgOAmFliGwW/C6ZeiJcjLjWpl1VgJwHPhc6E+u4Uc5mhACDAaMDbBJF/9s/EHXledZoSLkjCm7PzOjxjVF6M0yufKKfTE6V4GK3+q1pPrL9hehDFoUIXj0FILHVhK2YGKSH32ArBS6PIG0GY3TwqD6m2mGx3E8Q3QXlrQGyKFyGPa40/zvel2k45fQ3J2z44UbTx/QoDIqSEf/40BqhsA+NQJT6YoJBUYC4rMM8GyjTx7i1ShyBLo562QIQN1vzn8Y396z3AIeAj3Vkf+z0mLTGVYd3dlsaP9HrgGfMRcUVPkGFKkyUcJugYdhFgAzuAKmFTu+Gwn7Nz/dzkARTnMbt7I+GwM3Wn+10PDsXSAKNuRso9scr794TRqYLcN4whXikeONw5k9hZgJ6fW2oA4ZIuAg= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700073)(100105000095)(100000701073)(100105300095)(100000702073)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(93006095)(100000703073)(100105400095)(6041248)(20161123562025)(20161123555025)(20161123560025)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(6072148)(100000704073)(100105200095)(100000705073)(100105500095); SRVR:CY1PR0701MB1725; BCL:0; PCL:0; RULEID:(100000800073)(100110000095)(100000801073)(100110300095)(100000802073)(100110100095)(100000803073)(100110400095)(100000804073)(100110200095)(100000805073)(100110500095); SRVR:CY1PR0701MB1725; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY1PR0701MB1725; 4:7ABuxkD+3pRWtVn8xPIXrNtjD55niBZmH0df3Wz7?= VM4iyp5fTJinofni8Bl9tQoJYckC7OfqS1YORVr+H7w3dvvIiNM44OMY85sQsnmgJbODVjnndLIvyTx2kKQxcoU9HGzYb8i0Zm1HCOe/QHAKMluaaYUtspU0DfHEG6siMK1r2vVhJ1kJ6Jhdkj/zzddDww849nrWIhhxeDTHr9JFSgb5ap3TM1w6mrPOzlDVNI/XruyuGyJVYMvrljIVxYvGpZ9zZsYLw5CFi01y00wlItlPE9xmX0iZbYS5WyNpthYaNg69IvaF7LS/NGJ8UM1UN74BFE9TIuuMKSOvtFsvaMh8PpqDJLDkaSFmbomvfU/mz/cTkfHjEx+sRfXSmlrCL2DJvvLgR9SuBxLzE6ef4a4mSo9hoKoDpFVWANIHQtqts0wv0gEDvg3OYZwx8V2WFn6gz33r86luK93g/x3edqbmT+mnfUpBdgkee1YE1afSGlEZ+LSFwK8nU/rYg4rb0e/nh2kMhYB+VW7PPY373yfPk/ubZ1nMA1G3LmwtyM41phkZuRBcX1WNouevnSrhHeaXofL0rtJxdnPLbil3SORkL7j4+C3C/j42Qqo2Exaklnhy/vFdDHEcKtbbdN1YU+qdmCLngrRgSd7r5sRB2BfDEDlH8DpsbD+6yU3PuUy0L9B1iG4383PAcKateRHMEFx7g561a2UxQ7O1nELSdn3No62cLCydjJ0qyxysqMi9oxF0Co6yoynRyV9ePvpRz6dXSQ+eccyI7YAnk1ofxNihntiPnLM59itLT4E/KW459a1bu3rh/arzSg5GWrREvIMvQ6ul/HcAwTdyhqJLTosMpCs8uEwx5k/dTrv0Hp6yTgvEUxjjMOijHK626ffcYpZvfmjUXK6gQWTbwJuJMB8kYPAnUUMnuy30YLNrBIcEKFDVz9fKqJRYBXwM3e1PtHPexzgx8dYFQ2lx/z6W8dR58Ty6UFgFGu9hqXV7lZR3179X4n2LQ3q4712dbFZfRZ79Xn5DYbJETpsROILiXf3iFDdb3Xh/bazXhaFhuHE3gMpAneYMaJbSufEF5uSA4d9f63iFKb1D+XM8ZbmAtayoarRVcldvOx2yJtt+X7w= X-Forefront-PRVS: 03218BFD9F X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(39450400003)(39850400002)(39410400002)(39840400002)(39400400002)(81166006)(6486002)(66066001)(4326008)(50986999)(76176999)(50226002)(189998001)(72206003)(36756003)(6506006)(38730400002)(5003940100001)(5009440100003)(110136004)(107886003)(42186005)(53416004)(7736002)(8676002)(48376002)(50466002)(1076002)(3846002)(6116002)(6512007)(2361001)(305945005)(2906002)(478600001)(25786009)(5660300001)(2351001)(6916009)(42882006)(2950100002)(33646002)(8656002)(47776003)(53936002); DIR:OUT; SFP:1101; SCL:1; SRVR:CY1PR0701MB1725; H:jerin.domain.name; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY1PR0701MB1725; 23:aDXRIWn+/63WY00FCF+jHRS7K9fnvYZp50r2Im7?= B1YnxB4m4hwGM7fkSskWXKH67w/9jyf17kJsz2ZuKFm1dER6UESRNWV7bqa2nFVQcQZ1HJE/XKf2YPG/GK2SUpDnxczMEmwMwyOqG0ty+mW0bzSaoVuXdrTIj/uP7wPCUk7wPz3chGVaoUXF5cjkxLYZPVxEj5lcP/bvNPz8cBhdIocByvb25R94K75epIJGlcyxdpW5IpQyg3TPUoIRcUFNZe2iuTLEZje4Z8m+YomaQrAYfsux1qeV/Qu5/AI82azCh4PdXupwn9sPMlDLxmx85CQ+taLUZ+kaymhI3yCWdOfb5tgwAXm7KrPy20h+D5m0BqJ/L4sZiPmrPwv/38JKqkYXfMAduipvOBo8f6nr3BPWPmWB+fiSR6irIVrlzoyYVvr5ROYRxn7YbwQeUwA+ZHbC4Oss9O0p9ZLh90Pjo6PsAcTjIwUrGEBeigVT4O5lHu4qNM0jQJ0KDSA1NUvHQQ7WPyTmYfeUsixstfe6Tl8s1VJbjHmjyGL9pTScOa8eujQEY32B/uYy7l3GC++351kbvaNxzZ9wbUeNdQfkGbg3xI/wmr1kGUkSg4AwTEemk8R5+xEBCOy0TEncvzk8pr1azcwRrOFjKevhm8BOQ0MZ5CL89DhKLwUDQuMcA5EP4pnDk/GCZtTc0bL1ncd8qySC1CaZ127QRSO5aEGdmei7dTyLiCn765G1U3/GNCDDqZsMgI/+BfdKcm0nHSezjAxZJVjS2ixTMY+L2bAPP5808A+sDm6ravy/dCPEbTgG2yBVbfNYU2uNVF+NL9PeI0HWWhWHMqKJjKChC1pSMfROi+cMgdnsTfa8CtramsVkdXLdHSlCJDuvJBGbNcN00JO5J5571VaN2RAWS3yQvfJ6Gflaid1QuWndA5FJBBUqc6trKZf8ZFxNXwtRUSA4NlmgJRsUmcCGHbU2PN4wvbtAFGeOpBkZ34xmZq9FqoAVkcMquh3XIIp5J+zwWNSyjn3DW8WEMLxGu+EdM0P3nT0g19zKmJIPHC+1xryE27U594mmNajjpctAdaxoDnpqCdv2I8j89UMCXFAUcaJSjMdh/L2WbfEOn23B51mb9W0Hmr+PThxYQkb9JD8c5Tc4gnFolCz4zF3sWI6ts2w3/nIVJRA2+zQzYB9GM7i43c5I= X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB1725; 6:1RNuaRDDi7o1OegAr5ckg1Ol42b6n+EsrCKzFUhGm2hd/t2SE7Y57JoeDxbJjONhd3NSYFxC3FTVBR5J6vfWFHgn8sPuJreeLxku4iF9BD2Hz8cdoLsQiZoLoesJEmzwxMCYPvGSIykEKn2nVf0L04nkD9NSO3Jd1j+uXjwTJEM3Jg9PNj7418AhT5X9EHT3MRs502icD60wUQbJoyqoaX/W64vnmEOCrjTft9qhTXhbQaT5+H/9g3CuprvgLfs93EZHOX1lsk+cpJKiLyEtO2Q4MNDoYoWrzt+eeyuSMDwSqBSICKt+k8i6hor0u1tjKg0HG1j2ooUeicDz4CzBKDaHoM1fcnKxe8aH3b0owUQ8RwgEWAjd8M4DrSyWssaV+lLDUg6qhpigdxoT4B+YaRK3mpmhmOtoiImoL3JJ3MLqnfdSaWdYv9lOL0sffNJRSWiwyUPE1N+OpkBZxUdgSAJ/T83ZhFeqqZrebU+XB6Udn+f8SlO+YBn8czoi/xDXPluTVST0CnZqIujUDwDMTQ== X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB1725; 5:o434B9pa27SCNthu8vWNDSKWnnWdOHqiiCOUPYBUUbOuPWtp9jgwpu8pjI4JTejTutMh3FQR8FkUBXKMicrymMaBlJBUE3pN13O1RdR/MWnJ3KAHstc7joljgepsKmCyMYBuVhwi8qosD9B9NAVjWf6DhiFge/0dNxpbU0jXnjWV0qk/ptWzw25bBdhZFUjqT3+6VTbN+dIlVLu+GFUe4I/D1ty0v7ay2OAJEMUlhHwVoNC45kM520UWcxKrnIyIsFjDDHJhfPzRtFUPDNIVGqHykRx7fk57HVLKgcP21oi/YMQS7IM5+kFUq22q7XTlPkWx0Ed2NJ6QvFJzgO7yeq86BKMYsbYRW2xv/z/yoycBMSLDKymKIuWCN5oMl1fo8w1/ovq+NwpHyQLSdweaUmc8IL2GJFE1XtXkhLszCKCn++/0uK9uVMmjAhUI+XO8qLMLcXKtsV5JGtXhngn0qctnvijXmwpCK0H7EB5J/kLEqPTrPj3ref2gJt5B6NUl; 24:HoBNhqNyWzLGYg9Bvy/OLtDsK4zhuIuMpgpmMtyQr7kS5CQ/6MloZhl38/NlRNLAXi6SGD0y1aZqUk8KbIf1XLEGjs8Dlui5Ras23IQ0UQw= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB1725; 7:PUhrjFNSLNV8A6i0IfPrf88Sp2NsT7FNyB2zQgplm6tKkDR6jd9hkk0u20CRgImTR4kG5F44VY5lJtM9IWx7Ve9fIUfrVEc2z0PAz0Y/Qkec1+rxPSc3xYwnkLgg353HA8JVtzuNiS/ZkKv8gxS3VgViyv3gcHogJZ7EgzpO7CvQS2knRXv6xZcyXMAcTfvQzd+rqENUHZvUmL7z22QFp7tJrbPWzXL/0pl6/tjPZyLV4S/WL4393D+6vRsYiWtLG12EtJ/OmgDgKFz5Z0TsiR4NleWZlN4/U7s/Vqw9+o68cCV3BXateaKJTvmuA0s6k4tr1jQ21pyOdiVDc+sR4Q== X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 May 2017 20:00:20.3432 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR0701MB1725 Subject: [dpdk-dev] [PATCH 08/33] app/testeventdev: add helper functions to dump options 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" Signed-off-by: Jerin Jacob Signed-off-by: Guduri Prathyusha --- app/test-eventdev/evt_options.c | 23 ++++++++++ app/test-eventdev/evt_options.h | 97 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 120 insertions(+) diff --git a/app/test-eventdev/evt_options.c b/app/test-eventdev/evt_options.c index 103adb686..c657ec306 100644 --- a/app/test-eventdev/evt_options.c +++ b/app/test-eventdev/evt_options.c @@ -56,3 +56,26 @@ evt_options_default(struct evt_options *opt) opt->wkr_deq_dep = 16; opt->nb_pkts = (1ULL << 22); } + +void +evt_options_dump(struct evt_options *opt) +{ + int lcore_id; + struct rte_event_dev_info dev_info; + + rte_event_dev_info_get(opt->dev_id, &dev_info); + evt_dump("driver", "%s", dev_info.driver_name); + evt_dump("test", "%s", opt->test_name); + evt_dump("dev", "%d", opt->dev_id); + evt_dump("verbose_level", "%d", opt->verbose_level); + evt_dump("socket_id", "%d", opt->socket_id); + evt_dump("pool_sz", "%d", opt->pool_sz); + evt_dump("master lcore", "%d", rte_get_master_lcore()); + evt_dump("nb_pkts", "%"PRIu64, opt->nb_pkts); + evt_dump_begin("available lcores"); + RTE_LCORE_FOREACH(lcore_id) + printf("%d ", lcore_id); + evt_dump_end; + evt_dump_nb_flows(opt); + evt_dump_worker_dequeue_depth(opt); +} diff --git a/app/test-eventdev/evt_options.h b/app/test-eventdev/evt_options.h index 1a932febc..b01e8daeb 100644 --- a/app/test-eventdev/evt_options.h +++ b/app/test-eventdev/evt_options.h @@ -42,6 +42,8 @@ #include "evt_common.h" +#define EVT_BOOL_FMT(x) ((x) ? "true" : "false") + struct evt_options { #define EVT_TEST_NAME_MAX_LEN 32 char test_name[EVT_TEST_NAME_MAX_LEN]; @@ -63,6 +65,7 @@ struct evt_options { }; void evt_options_default(struct evt_options *opt); +void evt_options_dump(struct evt_options *opt); /* options check helpers */ static inline bool @@ -154,5 +157,99 @@ evt_has_invalid_sched_type(struct evt_options *opt) return false; } +/* option dump helpers */ +static inline void +evt_dump_worker_lcores(struct evt_options *opt) +{ + int c; + + evt_dump_begin("worker lcores"); + for (c = 0; c < RTE_MAX_LCORE; c++) { + if (opt->wlcores[c]) + printf("%d ", c); + } + evt_dump_end; +} + +static inline void +evt_dump_producer_lcores(struct evt_options *opt) +{ + int c; + + evt_dump_begin("producer lcores"); + for (c = 0; c < RTE_MAX_LCORE; c++) { + if (opt->plcores[c]) + printf("%d ", c); + } + evt_dump_end; +} + +static inline void +evt_dump_nb_flows(struct evt_options *opt) +{ + evt_dump("nb_flows", "%d", opt->nb_flows); +} + +static inline void +evt_dump_producer_lcore(struct evt_options *opt) +{ + evt_dump("producer lcore", "%d", opt->plcore); +} + +static inline void +evt_dump_scheduler_lcore(struct evt_options *opt) +{ + evt_dump("scheduler lcore", "%d", opt->slcore); +} + +static inline void +evt_dump_worker_dequeue_depth(struct evt_options *opt) +{ + evt_dump("worker deq depth", "%d", opt->wkr_deq_dep); +} + +static inline void +evt_dump_nb_stages(struct evt_options *opt) +{ + evt_dump("nb_stages", "%d", opt->nb_stages); +} + +static inline void +evt_dump_fwd_latency(struct evt_options *opt) +{ + evt_dump("fwd_latency", "%s", EVT_BOOL_FMT(opt->fwd_latency)); +} + +static inline void +evt_dump_queue_priority(struct evt_options *opt) +{ + evt_dump("queue_priority", "%s", EVT_BOOL_FMT(opt->q_priority)); +} + +static inline const char* +evt_sched_type_2_str(uint8_t sched_type) +{ + + if (sched_type == RTE_SCHED_TYPE_ORDERED) + return "O"; + else if (sched_type == RTE_SCHED_TYPE_ATOMIC) + return "A"; + else if (sched_type == RTE_SCHED_TYPE_PARALLEL) + return "P"; + else + return "I"; +} + +static inline void +evt_dump_sched_type_list(struct evt_options *opt) +{ + int i; + + evt_dump_begin("sched_type_list"); + for (i = 0; i < opt->nb_stages; i++) + printf("%s ", evt_sched_type_2_str(opt->sched_type_list[i])); + + evt_dump_end; +} #endif /* _EVT_OPTIONS_ */