Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/134545/?format=api
http://patches.dpdk.org/api/patches/134545/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/patch/20231123012633.2005-5-dave@youngcopy.com/", "project": { "id": 1, "url": "http://patches.dpdk.org/api/projects/1/?format=api", "name": "DPDK", "link_name": "dpdk", "list_id": "dev.dpdk.org", "list_email": "dev@dpdk.org", "web_url": "http://core.dpdk.org", "scm_url": "git://dpdk.org/dpdk", "webscm_url": "http://git.dpdk.org/dpdk", "list_archive_url": "https://inbox.dpdk.org/dev", "list_archive_url_format": "https://inbox.dpdk.org/dev/{}", "commit_url_format": "" }, "msgid": "<20231123012633.2005-5-dave@youngcopy.com>", "list_archive_url": "https://inbox.dpdk.org/dev/20231123012633.2005-5-dave@youngcopy.com", "date": "2023-11-23T01:26:25", "name": "[v4,4/6] Section 4: Running Applications", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "807e9ee9126b9843c6d683a97d3bbb6c75fe5b3c", "submitter": { "id": 3122, "url": "http://patches.dpdk.org/api/people/3122/?format=api", "name": "Dave Young", "email": "dave@youngcopy.com" }, "delegate": { "id": 1, "url": "http://patches.dpdk.org/api/users/1/?format=api", "username": "tmonjalo", "first_name": "Thomas", "last_name": "Monjalon", "email": "thomas@monjalon.net" }, "mbox": "http://patches.dpdk.org/project/dpdk/patch/20231123012633.2005-5-dave@youngcopy.com/mbox/", "series": [ { "id": 30365, "url": "http://patches.dpdk.org/api/series/30365/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=30365", "date": "2023-11-23T01:26:21", "name": "docs: getting started guide consolidation", "version": 4, "mbox": "http://patches.dpdk.org/series/30365/mbox/" } ], "comments": "http://patches.dpdk.org/api/patches/134545/comments/", "check": "warning", "checks": "http://patches.dpdk.org/api/patches/134545/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "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])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 2AB1D4339F;\n\tThu, 23 Nov 2023 02:27:25 +0100 (CET)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 7178D42D89;\n\tThu, 23 Nov 2023 02:27:10 +0100 (CET)", "from mail-yw1-f170.google.com (mail-yw1-f170.google.com\n [209.85.128.170])\n by mails.dpdk.org (Postfix) with ESMTP id A887142D66\n for <dev@dpdk.org>; Thu, 23 Nov 2023 02:27:00 +0100 (CET)", "by mail-yw1-f170.google.com with SMTP id\n 00721157ae682-5cc933f9219so908917b3.0\n for <dev@dpdk.org>; Wed, 22 Nov 2023 17:27:00 -0800 (PST)", "from localhost.localdomain\n ([2600:1700:20c0:a560:40f7:d2c:d53a:d071])\n by smtp.gmail.com with ESMTPSA id\n j184-20020a0dc7c1000000b005a815346d95sm89832ywd.71.2023.11.22.17.26.57\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Wed, 22 Nov 2023 17:26:57 -0800 (PST)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=youngcopy-com.20230601.gappssmtp.com; s=20230601; t=1700702819;\n x=1701307619;\n darn=dpdk.org;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:from:to:cc:subject:date\n :message-id:reply-to;\n bh=78Yn5i8ehISscfBlUdClNrI/spv0HhuYxBJLTMBPRx0=;\n b=gOFFBxmPCVevZN1vs6Gv0JWrPHFeGv5fhDBpGfzRHWq7bKnwQ+7lpzyoWfz3M4JqqF\n mzbU3BU73Fj6WtNlf179B3WHqYcDvH9NBPai/aFZfvs3lioLDT2eNoLtc+hiGIrKnWAj\n lv1ldR5vIlGNge7Noq/ZOQR7xefnJjhKjNTNsuZtFprgMy+9d+khTSWb6VSUzQ5Ai7zg\n OFTqppPEVYpktNDit2KyCpxLHEGHZOcdLg+CL+gdSHAKlx/ImVcz3oucCcu6Ww+ipg1H\n 5OqGQ6Ik2l37dvoZv0YnHSPcA2qqFp2sZT4BtsmIVEyH4iDfyXn816vbJUcalg04jVNl\n Fm/w==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20230601; t=1700702819; x=1701307619;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc\n :subject:date:message-id:reply-to;\n bh=78Yn5i8ehISscfBlUdClNrI/spv0HhuYxBJLTMBPRx0=;\n b=KY6XSLXCc0DWkJDog0ojqd/hJt6sMziQyIGhM5t/KVvxBLU1uGueeJPB5OOuzNYQpW\n mio1qt/tFWmOVmlSsOPZuBCdojqre7XResFXqeeiONXlj3az0yWZDiK6oN8yZxtfOgWO\n U784wSXFw5JvVE1i+T7gWO+4VUYNuf+rbjkqGtHzwS1DMX/PjCMF45k8f24zglCLAEsS\n A4OSVmP8evdsPgHs0LTNGzos530aunxBKKj/RJZEHxxnHPyGLknjW2FDjLUOVQ47j0h9\n PwRrNI19vQ3/x2teehOA2nSqRR7G2M9xORaXBgyoGdJKMxCwGJSvwMSZgKTHYJytt3Gg\n YJFA==", "X-Gm-Message-State": "AOJu0Ywo5oI1cmgJRBlL2zDLMNBVKAT4zaHsNFTFSnyX9VWOkkt8ttA3\n crElFH3hi0W4z6vyUdKcQYsUFOdGbBRTOMpBNwc=", "X-Google-Smtp-Source": "\n AGHT+IG6EfpjrZYV0dXLhooELOB1c8icV7v7QK86Z/rzh/pnXnkExhr1uPSDSQJ3+EKo43gy9c7hVA==", "X-Received": "by 2002:a81:af1c:0:b0:5af:a690:e47f with SMTP id\n n28-20020a81af1c000000b005afa690e47fmr3149404ywh.5.1700702819198;\n Wed, 22 Nov 2023 17:26:59 -0800 (PST)", "From": "David Young <dave@youngcopy.com>", "To": "dev@dpdk.org", "Cc": "Bruce Richardson <bruce.richardson@intel.com>,\n Aaron Conole <aconole@redhat.com>, David Young <dave@youngcopy.com>", "Subject": "[PATCH v4 4/6] Section 4: Running Applications", "Date": "Wed, 22 Nov 2023 20:26:25 -0500", "Message-ID": "<20231123012633.2005-5-dave@youngcopy.com>", "X-Mailer": "git-send-email 2.41.0.windows.1", "In-Reply-To": "<20231123012633.2005-1-dave@youngcopy.com>", "References": "<20231103040202.2849-1-dave@youngcopy.com>\n <20231123012633.2005-1-dave@youngcopy.com>", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=UTF-8", "Content-Transfer-Encoding": "8bit", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "content": "---\n .../getting_started_guide/run_apps/index.rst | 10 ++\n .../run_apps/run_apps.rst | 118 ++++++++++++++++++\n 2 files changed, 128 insertions(+)\n create mode 100644 doc/guides/getting_started_guide/run_apps/index.rst\n create mode 100644 doc/guides/getting_started_guide/run_apps/run_apps.rst", "diff": "diff --git a/doc/guides/getting_started_guide/run_apps/index.rst b/doc/guides/getting_started_guide/run_apps/index.rst\nnew file mode 100644\nindex 0000000000..f033cac5f0\n--- /dev/null\n+++ b/doc/guides/getting_started_guide/run_apps/index.rst\n@@ -0,0 +1,10 @@\n+.. SPDX-License-Identifier: BSD-3-Clause\n+ Copyright(c) 2010-2025 Intel Corporation.\n+\n+Running Applications\n+====================\n+\n+.. toctree::\n+ :maxdepth: 2\n+\n+ run_apps\n\\ No newline at end of file\ndiff --git a/doc/guides/getting_started_guide/run_apps/run_apps.rst b/doc/guides/getting_started_guide/run_apps/run_apps.rst\nnew file mode 100644\nindex 0000000000..339d4c0a68\n--- /dev/null\n+++ b/doc/guides/getting_started_guide/run_apps/run_apps.rst\n@@ -0,0 +1,118 @@\n+.. SPDX-License-Identifier: BSD-3-Clause\n+ Copyright(c) 2010-2025 Intel Corporation.\n+\n+.. _run_apps:\n+\n+Running Applications\n+====================\n+\n+The following instructions apply to Linux, FreeBSD, and Windows.\n+\n+.. contents:: Table of Contents\n+ :local:\n+\n+Running Applications on Linux and FreeBSD\n+-----------------------------------------\n+\n+Compiling and Running Sample Applications\n+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n+\n+To compile a sample application:\n+\n+1. Navigate to the application's directory in the DPDK distribution.\n+2. Execute the ``make`` command on Linux or ``gmake`` on FreeBSD.\n+\n+For instance, to compile the ``helloworld`` application:\n+\n+::\n+\n+ cd examples/helloworld\n+ make # On Linux\n+ gmake # On FreeBSD\n+\n+To run the application, use:\n+\n+::\n+\n+ ./build/helloworld -l 0-2\n+\n+The ``-l`` option indicates the cores on which the application should run.\n+\n+Sample Applications Overview\n+^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n+\n+1. **Hello World**: A basic application that prints a \"hello world\" message.\n+2. **Basic Forwarding**: A skeleton example of a forwarding application.\n+3. **Command Line**: Demonstrates the command line interface in DPDK.\n+4. **Ethtool**: Showcases the Ethtool API in DPDK.\n+\n+For a comprehensive list of sample applications and their guides, \n+refer to the `DPDK Sample Applications User Guides <https://doc.dpdk.org/guides/sample_app_ug/index.html>`_.\n+\n+EAL Parameters\n+^^^^^^^^^^^^^^\n+\n+Every DPDK application is linked with the DPDK target environment’s \n+Environmental Abstraction Layer (EAL) library, which provides generic options. \n+Some of these options include:\n+\n+- ``-c COREMASK`` or ``-l CORELIST``: Specifies the cores to run on.\n+- ``-n NUM``: Number of memory channels per processor socket.\n+- ``--socket-mem``: Memory allocation from hugepages on specific sockets.\n+\n+For a detailed list of EAL options, \n+refer to the `EAL parameters section <eal_parameters>`.\n+\n+Running Without Root Privileges\n+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n+\n+Refer to :ref:`running_dpdk_apps_without_root`.\n+\n+Running Applications on Windows\n+-------------------------------\n+\n+Running DPDK applications on Windows involves a few different steps. \n+This guide provides detailed instructions on how to run the helloworld example\n+application, which can be used as a reference for running other DPDK applications.\n+\n+Grant Lock Pages in Memory Privilege\n+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n+\n+Use of hugepages (\"large pages\" in Windows terminology) requires\n+``SeLockMemoryPrivilege`` for the user running an application. \n+This privilege allows the DPDK application to keep data in physical memory, \n+preventing the system from paging the data to virtual memory. \n+This can significantly improve the performance of your DPDK applications.\n+\n+To grant this privilege:\n+\n+1. Open Local Security Policy snap-in, either through Control Panel / Computer Management / Local Security Policy, or by pressing Win+R, typing ``secpol``, and pressing Enter.\n+2. Open Local Policies / User Rights Assignment / Lock pages in memory.\n+3. Add desired users or groups to the list of grantees.\n+\n+The privilege is applied upon the next logon. If the privilege has been granted to the\n+current user, a logoff is required before it is available. \n+More details can be found in the `Large-Page Support in MSDN <https://docs.microsoft.com/en-us/windows/win32/memory/large-page-support>`_.\n+\n+Running the helloworld Example\n+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n+\n+After setting up the drivers, you can run the helloworld example to verify your setup.\n+Here are the steps:\n+\n+1. Navigate to the examples in the build directory::\n+\n+ cd C:\\\\Users\\\\me\\\\dpdk\\\\build\\\\examples\n+\n+2. Run the helloworld application::\n+\n+ dpdk-helloworld.exe -l 0-3\n+\n+The output should display a hello message from each core, like this:\n+\n+::\n+\n+ hello from core 1\n+ hello from core 3\n+ hello from core 0\n+ hello from core 2\n", "prefixes": [ "v4", "4/6" ] }{ "id": 134545, "url": "