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 E37D045B50; Wed, 16 Oct 2024 10:50:12 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id D28D440273; Wed, 16 Oct 2024 10:50:12 +0200 (CEST) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by mails.dpdk.org (Postfix) with ESMTP id E3F8540273 for ; Wed, 16 Oct 2024 10:50:10 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1729068610; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=ozrq6A7L23gBxgXlyPU1O3tCYyqmp/lWxYlSB81jGYw=; b=V0Ni4SbDtC31tb12g1bEyGLzrOjOUydiF9bzPe5CMqBQwT/NlhSiKJL6W3VIYLd6e3gSgd h3F1xJCoYY4SS4DYZ2uOS6B6RnOZ5gwiE+YgQ5rhZxCOAG7igFOfzrfATpdvnfntzsnvK6 aw5SCku6cvz93M8Cxojb5wbjEtU7RSE= Received: from mail-lj1-f197.google.com (mail-lj1-f197.google.com [209.85.208.197]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-679-L6wLWGfHO-K29ka0tEeXnw-1; Wed, 16 Oct 2024 04:50:09 -0400 X-MC-Unique: L6wLWGfHO-K29ka0tEeXnw-1 Received: by mail-lj1-f197.google.com with SMTP id 38308e7fff4ca-2fac931e7c6so41821161fa.3 for ; Wed, 16 Oct 2024 01:50:09 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1729068608; x=1729673408; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ozrq6A7L23gBxgXlyPU1O3tCYyqmp/lWxYlSB81jGYw=; b=wYC73UpXqxIR+e9q2uX3Wur+3sqt6RkHwrDaHSo0724D2hf7c5vLTZOGde/D+qZmSX Etmj1BZEX6hg+xl1bpqvnohd/r0OuyK19HH6z49sR0JaCQsIQdkrdeoDJOB4F1cNxDaT 3CWw6Es3qGOGG5FwIcnla2Vc0giPUwdvuaOLM0i3v1muRhAkEP1LDkpEpQdFSzalA84w Mx4rmUxj9OR++pJHGBmP/fEbjhptlt6CCqKG4C7E1Rb6A2zRYbj6QkRSTsaeLV01P1bE aOkqBitrIl54Qb4M3S2M+58ycKq8KlaJdtRpbkT79UEg94CRkhNE448hdzF7xzdvQogi ABKA== X-Forwarded-Encrypted: i=1; AJvYcCV2YvtKTtgNTtEnjVV+SfKNELGBeNedd5rAzcVQeLvlCnblYwO7JImUzT4W3werA8I5B6o=@dpdk.org X-Gm-Message-State: AOJu0YwDUjCRvfpLGU4d0xjm9mDPpFikUf4xM4r5vH0o1C0s1AaZ+nag 2Sv2W7rt0zbh+jdyr99H5hbJmhoBqQveJJMahWgpmU5B2jPfyq1wUIJPzCZ1WPZ2fxiv202xPRO 9Oud0YX7lnI9AUamuQbRUrWVwNyUG251E9T6PBcsqGhN2cm1Kv/4zWW9LQ5GWlC5LvGL0tb7nQb InLBCVK9wGArp3Sl4= X-Received: by 2002:a2e:be8c:0:b0:2f9:ccc3:38cf with SMTP id 38308e7fff4ca-2fb3f2e8407mr68477521fa.37.1729068607416; Wed, 16 Oct 2024 01:50:07 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFvBSgVWyjbQ7EU/hnPCljPcyTsjKpsQBR99VsKfNdJdpvJtCQGf/7BiItRNMjdDwEpRwWoK5me569u0IJ+XYo= X-Received: by 2002:a2e:be8c:0:b0:2f9:ccc3:38cf with SMTP id 38308e7fff4ca-2fb3f2e8407mr68477021fa.37.1729068606114; Wed, 16 Oct 2024 01:50:06 -0700 (PDT) MIME-Version: 1.0 References: <20241014161036.12225-1-pbhagavatula@marvell.com> <20241015054241.2447-1-pbhagavatula@marvell.com> In-Reply-To: <20241015054241.2447-1-pbhagavatula@marvell.com> From: David Marchand Date: Wed, 16 Oct 2024 10:49:55 +0200 Message-ID: Subject: Re: [PATCH v7 0/3] Introduce node-specific xstats in graph library To: pbhagavatula@marvell.com Cc: jerinj@marvell.com, ndabilpuram@marvell.com, kirankumark@marvell.com, zhirun.yan@intel.com, rjarry@redhat.com, dev@dpdk.org X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable 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 On Tue, Oct 15, 2024 at 7:42=E2=80=AFAM wrote: > > From: Pavan Nikhilesh > > Introduce the ability for nodes to advertise xstats counters during > registration and increment them during the node process function in > the graph library. > This enhancement allows for better stats tracking and debugging > capabilities within the graph framework. > > The number of xstats and the mapping of xstat IDs to xstat descriptions > are defined during node registration. > > Example: > static struct rte_node_xstats ip4_reassembly_xstats =3D { > .nb_xstats =3D 1, > .xstat_desc =3D { > [0] =3D "ip4_reassembly_error", > }, > }; > > Here, "ip4_reassembly_error" is mapped to xstat ID 0, and the same ID is > used in the `ip4_reassembly_node_process` function to increment reassembl= y > errors as an xstat. > Depending on the node, there can be multiple such xstats that can be > updated independently and retrieved using `rte_graph_cluster_stats_get`. > > Example: > +-------------------------------+---------------+---------------+--------= ------+ > |Node |calls |objs |realloc_= count | > +-------------------------------+---------------+---------------+--------= ------+ > |ip4_lookup |1324083 |338965248 |2 = | > | ip4_lookup_error | |338965496 | = | > |pkt_drop |1324084 |338965504 |1 = | > |ethdev_rx-0-0 |1324086 |338966016 |2 = | > |pkt_cls |1324086 |338966016 |1 = | > +-------------------------------+---------------+---------------+--------= ------+ > > v2 Changes: > - Fix compilation. > v3 Changes: > - Resend as 1/5 didn't make it through. > v4 Changes: > - Address review comments. > - Rebase on main branch. > v5 Changes: > - Shrink structure member names.(Robin) > - add rte_node_error_increment utility function. (Robin) > - Squash patches. (Robin) > - Update RN, DN. (David) > v6 Changes: > - Rename error to xstat. (Robin) > - Rearranges patches, update SVG fonts. > v7 Changes: > - Fix doxygen. (Jerin) > > Pavan Nikhilesh (3): > graph: add support for node specific xstats > doc: update graph layout and node anatomy images > node: add xstats for ip4 nodes > > doc/guides/prog_guide/graph_lib.rst | 22 +- > .../prog_guide/img/anatomy_of_a_node.svg | 329 +++++-- > .../prog_guide/img/graph_mem_layout.svg | 921 +++++++++++++----- > doc/guides/rel_notes/deprecation.rst | 6 - > doc/guides/rel_notes/release_24_11.rst | 8 + > lib/graph/graph_populate.c | 20 +- > lib/graph/graph_private.h | 3 + > lib/graph/graph_stats.c | 79 +- > lib/graph/node.c | 37 +- > lib/graph/rte_graph.h | 15 + > lib/graph/rte_graph_worker_common.h | 23 + > lib/graph/version.map | 7 + > lib/node/ip4_lookup.c | 9 + > lib/node/ip4_lookup_neon.h | 5 + > lib/node/ip4_lookup_sse.h | 6 + > lib/node/ip4_reassembly.c | 9 + > lib/node/node_private.h | 8 + > 17 files changed, 1197 insertions(+), 310 deletions(-) Series applied, thanks. --=20 David Marchand