DPDK patches and discussions
 help / color / mirror / Atom feed
From: David Young <dave@youngcopy.com>
To: dev@dpdk.org
Cc: Bruce Richardson <bruce.richardson@intel.com>,
	Aaron Conole <aconole@redhat.com>,
	David Young <dave@youngcopy.com>
Subject: [PATCH v4 1/6] Section 1: Introduction
Date: Wed, 22 Nov 2023 20:26:22 -0500	[thread overview]
Message-ID: <20231123012633.2005-2-dave@youngcopy.com> (raw)
In-Reply-To: <20231123012633.2005-1-dave@youngcopy.com>

Added link to Getting Started Guide in index.rst

Moved run_apps.rst to GSG index

Removed run_apps/index.rst - no longer needed

Added run_apps.rst to index

-Reformatted the introduction paragraph for better readability.
-Clarified that the guide provides basic step-by-step instructions with OS-specific instructions
included only where necessary for each operating system.
-Emphasized that by the end of this guide, the user should have a solid understanding of how to
implement and use DPDK in their networking projects, regardless of the operating system they are using.

Moved run_apps into GSG root directory
---
 doc/guides/getting_started_guide/index.rst    |  18 +++
 doc/guides/getting_started_guide/intro.rst    |  13 ++
 doc/guides/getting_started_guide/run_apps.rst | 114 ++++++++++++++++++
 doc/guides/index.rst                          |   1 +
 4 files changed, 146 insertions(+)
 create mode 100644 doc/guides/getting_started_guide/index.rst
 create mode 100644 doc/guides/getting_started_guide/intro.rst
 create mode 100644 doc/guides/getting_started_guide/run_apps.rst

diff --git a/doc/guides/getting_started_guide/index.rst b/doc/guides/getting_started_guide/index.rst
new file mode 100644
index 0000000000..3d7c0eb6ee
--- /dev/null
+++ b/doc/guides/getting_started_guide/index.rst
@@ -0,0 +1,18 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(c) 2010-2025 Intel Corporation.
+
+.. _getting_started_guide:
+
+Getting Started Guide
+=====================
+
+.. toctree::
+    :maxdepth: 2
+    :numbered:
+
+    intro
+    install_and_build/index
+    system_setup
+    run_apps
+    appendix/index
+    glossary
diff --git a/doc/guides/getting_started_guide/intro.rst b/doc/guides/getting_started_guide/intro.rst
new file mode 100644
index 0000000000..3560d705d0
--- /dev/null
+++ b/doc/guides/getting_started_guide/intro.rst
@@ -0,0 +1,13 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(c) 2010-2014 Intel Corporation.
+
+Introduction
+============
+
+Welcome to the getting started guide for the Data Plane Development Kit (DPDK) covering Linux, 
+FreeBSD, and Windows. DPDK is a set of libraries and drivers that accelerate packet processing 
+and allow the user to create high-performance networking applications.
+
+The guide is structured to provide basic step-by-step instructions with OS-specific instructions included only where necessary for each operating system. 
+By the end of this guide, you should have a solid understanding of how to implement
+and use DPDK in your networking projects, regardless of the operating system you are using.
diff --git a/doc/guides/getting_started_guide/run_apps.rst b/doc/guides/getting_started_guide/run_apps.rst
new file mode 100644
index 0000000000..d9ef1a6f96
--- /dev/null
+++ b/doc/guides/getting_started_guide/run_apps.rst
@@ -0,0 +1,114 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(c) 2010-2025 Intel Corporation.
+
+.. _run_apps:
+
+Running Applications
+====================
+
+Running Applications on Linux and FreeBSD
+-----------------------------------------
+
+Compiling and Running Sample Applications
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+To compile a sample application:
+
+1. Navigate to the application's directory in the DPDK distribution.
+2. Execute the ``make`` command on Linux or ``gmake`` on FreeBSD.
+
+For instance, to compile the ``helloworld`` application:
+
+::
+
+    cd examples/helloworld
+    make    # On Linux
+    gmake   # On FreeBSD
+
+.. note::
+   If DPDK is not installed system-wide, 
+   you can compile the examples as part of the DPDK build itself. 
+   If DPDK is not installed system-wide, you can compile the examples as part of the DPDK build 
+   itself. Use the meson build option ``-Dexamples=helloworld`` to compile specific examples 
+   or ``-Dexamples=all`` to compile all examples.
+
+To run the application, use:
+
+::
+
+    ./build/helloworld -l 0-2
+
+The ``-l`` option indicates the cores on which the application should run.
+This command runs the `helloworld` application on cores 0, 1, and 2.
+
+Sample Applications Overview
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+For a comprehensive list of sample applications and their guides, 
+refer to the `DPDK Sample Applications User Guides <https://doc.dpdk.org/guides/sample_app_ug/index.html>`_.
+
+EAL Parameters
+--------------
+
+Every DPDK application is linked with the DPDK target environment’s 
+Environmental Abstraction Layer (EAL) library. The most essential EAL option is ``-l CORELIST``, which specifies the cores the application should run on. For example:
+
+- ``-l 1-3`` to run on 3 cores: 1, 2, and 3.
+- ``-l 8,16`` to run on 2 cores: 8 and 16.
+- ``-l 1-7,9-15`` to run on 14 cores: 1 through 7 and 9 through 15.
+
+Please refer to the `EAL parameters section <eal_parameters>` section for a more comprehensive list of options.
+
+Running Without Root Privileges
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+Refer to :ref:`running_dpdk_apps_without_root`.
+
+Running Applications on Windows
+-------------------------------
+
+Running DPDK applications on Windows involves a few different steps. 
+This guide provides detailed instructions on how to run the helloworld example
+application, which can be used as a reference for running other DPDK applications.
+
+Grant Lock Pages in Memory Privilege
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+Use of hugepages ("large pages" in Windows terminology) requires
+``SeLockMemoryPrivilege`` for the user running an application. 
+This privilege allows the DPDK application to keep data in physical memory, 
+preventing the system from paging the data to virtual memory. 
+This can significantly improve the performance of your DPDK applications.
+
+To grant this privilege:
+
+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.
+2. Open Local Policies / User Rights Assignment / Lock pages in memory.
+3. Add desired users or groups to the list of grantees.
+
+The privilege is applied upon the next logon. If the privilege has been granted to the
+current user, a logoff is required before it is available. 
+More details can be found in the `Large-Page Support in MSDN <https://docs.microsoft.com/en-us/windows/win32/memory/large-page-support>`_.
+
+Running the helloworld Example
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+After setting up the drivers, you can run the helloworld example to verify your setup.
+Here are the steps:
+
+1. Navigate to the examples in the build directory::
+
+        cd C:\\Users\\me\\dpdk\\build\\examples
+
+2. Run the helloworld application::
+
+        dpdk-helloworld.exe -l 0-3
+
+The output should display a hello message from each core, like this:
+
+::
+
+    hello from core 1
+    hello from core 3
+    hello from core 0
+    hello from core 2
diff --git a/doc/guides/index.rst b/doc/guides/index.rst
index 244b99624c..51a47d3a51 100644
--- a/doc/guides/index.rst
+++ b/doc/guides/index.rst
@@ -7,6 +7,7 @@ DPDK documentation
 .. toctree::
    :maxdepth: 1
 
+   getting_started_guide/index
    linux_gsg/index
    freebsd_gsg/index
    windows_gsg/index
-- 
2.41.0.windows.1


  reply	other threads:[~2023-11-23  1:27 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-11-03  4:01 [PATCH v3 0/7] docs: getting started guide consolidation David Young
2023-11-03  4:01 ` [PATCH v3 1/7] Section 1: Introduction David Young
2023-11-03 13:11   ` Bruce Richardson
2023-11-03  4:01 ` [PATCH v3 2/7] Section 2: Install and Build DPDK David Young
2023-11-03 13:55   ` Bruce Richardson
2023-11-03  4:01 ` [PATCH v3 3/7] Section 3: Setting up a System to Run DPDK Applications David Young
2023-11-03 14:17   ` Bruce Richardson
2023-11-03  4:01 ` [PATCH v3 4/7] Section 4: Running Applications David Young
2023-11-03 15:13   ` Bruce Richardson
2023-11-03  4:01 ` [PATCH v3 5/7] Section 5: Appendix David Young
2023-11-03 15:23   ` Bruce Richardson
2023-11-16  1:28     ` Dave Young
2023-11-17 13:04       ` Bruce Richardson
2023-11-03  4:01 ` [PATCH v3 6/7] Added link to Getting Started Guide in index.rst David Young
2023-11-03 13:32   ` Bruce Richardson
2023-11-03 14:22   ` Bruce Richardson
2023-11-08  1:47     ` Dave Young
2023-11-08  2:06       ` Dave Young
2023-11-03  4:01 ` [PATCH v3 7/7] Section 6: Glossary David Young
2023-11-03 15:26   ` Bruce Richardson
2023-11-23  1:26 ` [PATCH v4 0/6] docs: getting started guide consolidation David Young
2023-11-23  1:26   ` David Young [this message]
2023-11-23  1:26   ` [PATCH v4 2/6] Section 2: Install and Build DPDK David Young
2023-11-23  1:26   ` [PATCH v4 3/6] Section 3: Setting up a System to Run DPDK Applications David Young
2023-11-23  1:26   ` [PATCH v4 4/6] Section 4: Running Applications David Young
2023-11-23  1:26   ` [PATCH v4 5/6] Section 5: Appendix David Young
2023-11-23  1:26   ` [PATCH v4 6/6] Section 6: Glossary David Young
2023-12-01 15:17   ` [PATCH v4 0/6] docs: getting started guide consolidation Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20231123012633.2005-2-dave@youngcopy.com \
    --to=dave@youngcopy.com \
    --cc=aconole@redhat.com \
    --cc=bruce.richardson@intel.com \
    --cc=dev@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).