From patchwork Wed Nov 23 10:19:27 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Robin Jarry X-Patchwork-Id: 120106 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id B0AB4A09E5; Wed, 23 Nov 2022 11:19:40 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 5646942B77; Wed, 23 Nov 2022 11:19:40 +0100 (CET) Received: from relay8-d.mail.gandi.net (relay8-d.mail.gandi.net [217.70.183.201]) by mails.dpdk.org (Postfix) with ESMTP id C9F6B40E5A for ; Wed, 23 Nov 2022 11:19:38 +0100 (CET) Received: (Authenticated sender: robin@jarry.cc) by mail.gandi.net (Postfix) with ESMTPSA id 65C231BF204; Wed, 23 Nov 2022 10:19:35 +0000 (UTC) From: Robin Jarry To: dev@dpdk.org Cc: Bruce Richardson , Jerin Jacob , Kevin Laatz , Konstantin Ananyev , =?utf-8?q?Mattias_R?= =?utf-8?q?=C3=B6nnblom?= , =?utf-8?q?Morten_Br=C3=B8?= =?utf-8?q?rup?= , Robin Jarry Subject: [RFC PATCH 0/4] lcore telemetry improvements Date: Wed, 23 Nov 2022 11:19:27 +0100 Message-Id: <20221123101931.1688238-1-rjarry@redhat.com> X-Mailer: git-send-email 2.38.1 MIME-Version: 1.0 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 This is a follow up on previous work by Kevin Laatz: http://patches.dpdk.org/project/dpdk/list/?series=24658&state=* This is a much more basic and naive approach which leaves the busy cycles percentage completely up to the application. This series is aimed at allowing DPDK applications to expose their CPU busy cycles ratio in the DPDK telemetry under /eal/lcore/info. I have left it as RFC since calculating busy cycles can be a controversial topic. For reference, I have implemented a draft patch in OvS to use rte_lcore_register_busy_percent_cb() and return the already available busy cycles information: https://github.com/rjarry/ovs/commit/4286c0e75583075a223a67eee746084a2f3b0547 Robin Jarry (4): eal: add lcore info in telemetry eal: allow applications to report their cpu utilization testpmd: add show lcores command testpmd: report lcore usage app/test-pmd/5tswap.c | 5 +- app/test-pmd/cmdline.c | 31 ++++++++ app/test-pmd/csumonly.c | 6 +- app/test-pmd/flowgen.c | 2 +- app/test-pmd/icmpecho.c | 6 +- app/test-pmd/iofwd.c | 5 +- app/test-pmd/macfwd.c | 5 +- app/test-pmd/macswap.c | 5 +- app/test-pmd/noisy_vnf.c | 4 + app/test-pmd/rxonly.c | 5 +- app/test-pmd/shared_rxq_fwd.c | 5 +- app/test-pmd/testpmd.c | 69 +++++++++++++++- app/test-pmd/testpmd.h | 25 +++++- app/test-pmd/txonly.c | 7 +- lib/eal/common/eal_common_lcore.c | 127 +++++++++++++++++++++++++++++- lib/eal/include/rte_lcore.h | 30 +++++++ lib/eal/version.map | 1 + 17 files changed, 306 insertions(+), 32 deletions(-)