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 D229945CF1; Tue, 12 Nov 2024 09:51:22 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id B1CD0402C3; Tue, 12 Nov 2024 09:51:22 +0100 (CET) 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 06D0F40298 for ; Tue, 12 Nov 2024 09:51:20 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1731401480; 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=rmDZldz4dTtXNqppjJ0Ey2NCxMmbrPAsF6eYobl7cI4=; b=C9id1eltxj46a1kS5GcRWs763+yFiNzWELCn5FhF7oZ6bBkP707+MRr6jJf/8SKKAYiB+w 6R71iRTHobqwf41lx8mq5GzjpV0QwgM4Y7A9ksZ/C0KMBJD1Fb8BXi3EV8PmWCwv55soK9 YhN4SAL1vYe+QFDcmLujXhZ3ySwzD7k= Received: from mail-lj1-f198.google.com (mail-lj1-f198.google.com [209.85.208.198]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-577-_LG7C4zzMt-W-xNs5Jx3SQ-1; Tue, 12 Nov 2024 03:51:19 -0500 X-MC-Unique: _LG7C4zzMt-W-xNs5Jx3SQ-1 X-Mimecast-MFC-AGG-ID: _LG7C4zzMt-W-xNs5Jx3SQ Received: by mail-lj1-f198.google.com with SMTP id 38308e7fff4ca-2ff29e23641so14184341fa.0 for ; Tue, 12 Nov 2024 00:51:18 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1731401478; x=1732006278; 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=rmDZldz4dTtXNqppjJ0Ey2NCxMmbrPAsF6eYobl7cI4=; b=mqFQeE8HQ0kB/C5nXTS/zL2frEEsjuW82+3iDeNcO16uSO7fz/YXj68O+a4nFls1cx n7etPICQ+mF2niocgoKsN4AVcmceaAsnR76zjQFzr5XaQBla7Zle6HOslaI3W9nIkiS2 HsL42deh2KIlU4ivWM1gx9c7LaY1GhyUl9+fBrjXSLhh9E2um0/Or9LtjTScMs98dEDx Ua8KeXFylIfs45IutcwP3UMWdEEN8D/He+fFoKhnRcIM57+lhIJfYI5cJ8O2WN8MhDWw QX4p1S2d3YtC/W6lacvHYKWWc9qK8OBtYVXUcANFgFvDuZ/s6ybXYFs7Dd0I4r95R17e E0bQ== X-Forwarded-Encrypted: i=1; AJvYcCXxO/E7/nQFyJym1FO+FWMEcX/KDj8SHy08tNw0swedkgjNbl5sNQHG3GKW5VuXCOEdB8g=@dpdk.org X-Gm-Message-State: AOJu0YxMlxwaKiiMAIrgrB6tDs7c04WYgI6B5ExzacGT2NweTQ9TpRVx ajkkDSdX28nQCTSZ03Thhqq8+duPVhd5rN1F6ygBhdcbl10tNt1W4HPYsWaDnjVOB3rQJQiwWjt B70n0eIj7g68Wr/rjCp/rp3K4wTqhuJmxtO6VA059jJZDThuXVmSGcv410nqs77gE7zKdachSUI iI8U8uTXZAdcM8am4= X-Received: by 2002:a2e:8905:0:b0:2fb:3a12:a582 with SMTP id 38308e7fff4ca-2ff202808bfmr54621741fa.23.1731401477644; Tue, 12 Nov 2024 00:51:17 -0800 (PST) X-Google-Smtp-Source: AGHT+IGSV5fB7Cgs2sHs9EFhRnymxQFSpcBEFQor4v5QKlp6e430ax56prrM+x/WtOe5rmYOlLAPhw8M02ff46ofE3Y= X-Received: by 2002:a2e:8905:0:b0:2fb:3a12:a582 with SMTP id 38308e7fff4ca-2ff202808bfmr54621641fa.23.1731401477178; Tue, 12 Nov 2024 00:51:17 -0800 (PST) MIME-Version: 1.0 References: <1730966682-2632-1-git-send-email-chcchc88@163.com> <44cd588c.1867.193096d6e2b.Coremail.chcchc88@163.com> In-Reply-To: From: David Marchand Date: Tue, 12 Nov 2024 09:51:06 +0100 Message-ID: Subject: Re: Re:RE: [EXTERNAL] [PATCH] graph: optimize graph search when scheduling nodes To: Jerin Jacob Cc: Huichao Cai , Kiran Kumar Kokkilagadda , Nithin Kumar Dabilpuram , "yanzhirun_163@163.com" , "dev@dpdk.org" , Thomas Monjalon , Robin Jarry X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: saci7ix3fYMpFKA2rGHGKm6X9aPHHGOk9JeZ6kqfgnU_1731401478 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 Mon, Nov 11, 2024 at 6:39=E2=80=AFAM Jerin Jacob wr= ote: > > > > > -----Original Message----- > > From: David Marchand > > Sent: Friday, November 8, 2024 7:08 PM > > To: Jerin Jacob > > Cc: Huichao Cai ; Kiran Kumar Kokkilagadda > > ; Nithin Kumar Dabilpuram > > ; yanzhirun_163@163.com; dev@dpdk.org; > > Thomas Monjalon ; Robin Jarry > > Subject: Re: Re:RE: [EXTERNAL] [PATCH] graph: optimize graph search whe= n > > scheduling nodes > > > > Hello Jerin, On Fri, Nov 8, 2024 at 1:=E2=80=8A22 PM Jerin Jacob > > wrote: > > > Is n't breaking the ABI? > > > > So can't we modify the AB= I, or is > > there any special operation required to modify > > > > Hello Jerin, > > Hello David, > > > > > On Fri, Nov 8, 2024 at 1:22=E2=80=AFPM Jerin Jacob = wrote: > > > > > Is n't breaking the ABI? > > > > > > > > So can't we modify the ABI, or is there any special operation > > > > required to modify the ABI? > > > > > > Only LTS release (xx.11) can change the ABI after sending deprecation= notice. > > > Looking at the pahole output, one option will be making dispatch and > > > new semi fastpath Additions like xstat_off can be min cache aligned > > > to make room for future expansion and to make sure have better > > performance. > > > > Adding holes may be a short term solution, but in my opinion, the slow = path > > part should be entirely hidden and we only expose the fp part. > > The new cache line alignment items are proposed are fastpath items only. I had only noticed the second comment: + alignas(RTE_CACHE_LINE_MIN_SIZE) rte_graph_off_t xstat_off; /**< Offset to xstat counters. */ /* Fast path area */ ^^^^^^^^^^^^ And I assumed the part in the struct before was slow path. (it may be worth enhancing these comments, with a single limit of slow/fast path areas) > > > Reminder, those holes must be in a "known state" as we release v24.11 s= o that > > the presence of future additions can be safely detected. If the rte_node objects are allocated by the graph library and zero'd, then we are good. It seems to be the case in graph_nodes_populate(), and the rte_node objects are embedded in the rte_graph object. Is there another location in the graph library where a rte_node object is allocated? If not, and an application can not create a rte_node object, your proposal looks good to me. --=20 David Marchand