Compiling the Application
-------------------------
-#. Go to example directory:
+To compile the sample application see :doc:`compiling`
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/cmdline
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- Refer to the *DPDK Getting Started Guide* for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
-
- make
+The application is located in the ``cmd_line`` sub-directory.
Running the Application
-----------------------
--- /dev/null
+ .. BSD LICENSE
+ Copyright(c) 2015 Intel Corporation. All rights reserved.
+ All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions
+ are met:
+
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in
+ the documentation and/or other materials provided with the
+ distribution.
+ * Neither the name of Intel Corporation nor the names of its
+ contributors may be used to endorse or promote products derived
+ from this software without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+Compiling the Sample Applications
+=================================
+
+This section explains how to compile the DPDK sample applications.
+
+To compile all the sample applications
+--------------------------------------
+
+
+Set the path to DPDK source code if its not set:
+
+ .. code-block:: console
+
+ export RTE_SDK=/path/to/rte_sdk
+
+Go to DPDK source:
+
+ .. code-block:: console
+
+ cd $RTE_SDK
+
+Build DPDK:
+
+ .. code-block:: console
+
+ make defconfig
+ make
+
+Build the sample applications:
+
+ .. code-block:: console
+
+ export RTE_TARGET=build
+ make -C examples
+
+For other possible ``RTE_TARGET`` values and additional information on
+compiling see
+:ref:`Compiling DPDK on Linux <linux_gsg_compiling_dpdk>` or
+:ref:`Compiling DPDK on FreeBSD <building_from_source>`.
+Applications are output to: ``$RTE_SDK/examples/app-dir/build`` or
+``$RTE_SDK/examples/app-dir/$RTE_TARGET``.
+
+
+In the example above the compiled application is written to the ``build`` subdirectory.
+To have the applications written to a different location,
+the ``O=/path/to/build/directory`` option may be specified in the make command.
+
+ .. code-block:: console
+
+ make O=/tmp
+
+To build the applications for debugging use the ``DEBUG`` option.
+This option adds some extra flags, disables compiler optimizations and
+sets verbose output.
+
+ .. code-block:: console
+
+ make DEBUG=1
+
+
+To compile a single application
+-------------------------------
+
+Set the path to DPDK source code:
+
+ .. code-block:: console
+
+ export RTE_SDK=/path/to/rte_sdk
+
+Go to DPDK source:
+
+ .. code-block:: console
+
+ cd $RTE_SDK
+
+Build DPDK:
+
+ .. code-block:: console
+
+ make defconfig
+ make
+
+Go to the sample application directory. Unless otherwise specified the sample
+applications are located in ``$RTE_SDK/examples/``.
+
+
+Build the application:
+
+ .. code-block:: console
+
+ export RTE_TARGET=build
+ make
Performance Benchmarking Setup (Basic Environment)
-
Compiling the Application
-------------------------
-#. Go to the sample application directory:
-
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/distributor
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- See the DPDK Getting Started Guide for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
+To compile the sample application see :doc:`compiling`.
- make
+The application is located in the ``distributor`` sub-directory.
Running the Application
-----------------------
Compiling the Application
-------------------------
-To compile the application:
+To compile the sample application see :doc:`compiling`.
-#. Go to the sample application directory:
-
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/ethtool
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- See the *DPDK Getting Started Guide* for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
-
- make
+The application is located in the ``ethtool`` sub-directory.
Running the Application
-----------------------
Compiling the Application
-------------------------
-To compile the application:
+To compile the sample application see :doc:`compiling`.
-#. Go to the sample application directory:
+The application is located in the ``examples`` sub-directory.
- .. code-block:: console
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/eventdev_pipeline_sw_pmd
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- See the *DPDK Getting Started Guide* for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
-
- make
Running the Application
-----------------------
Compiling the Application
-------------------------
-#. Go to example directory:
+To compile the sample application see :doc:`compiling`.
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/exception_path
-
-#. Set the target (a default target will be used if not specified).
- For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
-This application is intended as a linuxapp only.
-See the *DPDK Getting Started Guide* for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
-
- make
+The application is located in the ``exception_path`` sub-directory.
Running the Application
-----------------------
Compiling the Application
-------------------------
-#. Go to the example directory:
+To compile the sample application see :doc:`compiling`.
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/helloworld
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- See the *DPDK Getting Started* Guide for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
-
- make
+The application is located in the ``helloworld`` sub-directory.
Running the Application
-----------------------
:numbered:
intro
+ compiling
cmd_line
ethtool
exception_path
By default, input frame sizes up to 9.5 KB are supported.
Before forwarding, the input IP packet is fragmented to fit into the "standard" Ethernet* v2 MTU (1500 bytes).
-Building the Application
-------------------------
+Compiling the Application
+-------------------------
-To build the application:
+To compile the sample application see :doc:`compiling`.
-#. Go to the sample application directory:
-
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/ip_fragmentation
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
-See the *DPDK Getting Started Guide* for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
-
- make
+The application is located in the ``ip_fragmentation`` sub-directory.
Running the Application
-----------------------
The Longest Prefix Match (LPM for IPv4, LPM6 for IPv6) table is used to store/lookup an outgoing port number, associated with that IPv4 address. Any unmatched packets are forwarded to the originating port.Compiling the Application
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-To compile the application:
-#. Go to the sample application directory:
+Compiling the Application
+-------------------------
- .. code-block:: console
+To compile the sample application see :doc:`compiling`.
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/ip_reassembly
+The application is located in the ``ip_reassembly`` sub-directory.
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
-See the *DPDK Getting Started Guide* for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
-
- make
Running the Application
-----------------------
* Each SA must be handle by a unique lcore (*1 RX queue per port*).
* No chained mbufs.
-
Compiling the Application
-------------------------
-To compile the application:
-
-#. Go to the sample application directory::
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/ipsec-secgw
-
-#. Set the target (a default target is used if not specified). For example::
-
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- See the *DPDK Getting Started Guide* for possible RTE_TARGET values.
-
-#. Build the application::
+To compile the sample application see :doc:`compiling`.
- make
+The application is located in the ``rpsec-secgw`` sub-directory.
#. [Optional] Build the application for debugging:
This option adds some extra flags, disables compiler optimizations and
Also, the application does not consider the Ethernet addresses;
it looks only at the IPv4 destination address for any given packet.
-Building the Application
-------------------------
+Compiling the Application
+-------------------------
-To compile the application:
+To compile the sample application see :doc:`compiling`.
-#. Go to the sample application directory:
-
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/ipv4_multicast
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
-See the *DPDK Getting Started Guide* for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
-
- make
-
-.. note::
-
- The compiled application is written to the build subdirectory.
- To have the application written to a different location,
- the O=/path/to/build/directory option may be specified in the make command.
+The application is located in the ``ipv4_multicast`` sub-directory.
Running the Application
-----------------------
Compiling the Application
-------------------------
-To compile the application:
+To compile the sample application see :doc:`compiling`.
-#. Go to the sample application directory:
-
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk cd ${RTE_SDK}/examples/keep_alive
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- See the *DPDK Getting Started Guide* for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
-
- make
+The application is located in the ``l2fwd_keep_alive`` sub-directory.
Running the Application
-----------------------
Kernel NIC Application Packet Flow
-
Compiling the Application
-------------------------
-Compile the application as follows:
-
-#. Go to the example directory:
-
- .. code-block:: console
+To compile the sample application see :doc:`compiling`.
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/kni
+The application is located in the ``kni`` sub-directory.
-#. Set the target (a default target is used if not specified)
-
- .. note::
+.. note::
This application is intended as a linuxapp only.
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
-#. Build the application:
-
- .. code-block:: console
-
- make
-
Loading the Kernel Module
-------------------------
Compiling the Application
-------------------------
+.. note::
-Requires ``libpqos`` from Intel's
-`intel-cmt-cat software package <https://github.com/01org/intel-cmt-cat>`_
-hosted on GitHub repository. For installation notes, please see ``README`` file.
+ Requires ``libpqos`` from Intel's
+ `intel-cmt-cat software package <https://github.com/01org/intel-cmt-cat>`_
+ hosted on GitHub repository. For installation notes, please see ``README`` file.
-GIT:
+ GIT:
-* https://github.com/01org/intel-cmt-cat
-
-To compile the application export the path to PQoS lib
-and the DPDK source tree and go to the example directory:
-
-.. code-block:: console
+ * https://github.com/01org/intel-cmt-cat
- export PQOS_INSTALL_PATH=/path/to/libpqos
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/l2fwd-cat
+#. To compile the application export the path to PQoS lib
+ and the DPDK source tree and go to the example directory:
-Set the target, for example:
+ .. code-block:: console
-.. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
+ export PQOS_INSTALL_PATH=/path/to/libpqos
-See the *DPDK Getting Started* Guide for possible ``RTE_TARGET`` values.
-Build the application as follows:
-
-.. code-block:: console
+To compile the sample application see :doc:`compiling`.
- make
+The application is located in the ``l2fwd-cat`` sub-directory.
Running the Application
Compiling the Application
-------------------------
-#. Go to the example directory:
+To compile the sample application see :doc:`compiling`.
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/l2fwd-crypto
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- *See the DPDK Getting Started Guide* for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
-
- make
+The application is located in the ``l2fwd-crypt`` sub-directory.
Running the Application
-----------------------
Compiling the Application
-------------------------
-#. Go to the example directory:
+To compile the sample application see :doc:`compiling`.
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/l2fwd-jobstats
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- *See the DPDK Getting Started Guide* for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
-
- make
+The application is located in the ``l2fwd-jobstats`` sub-directory.
Running the Application
-----------------------
Compiling the Application
-------------------------
-#. Go to the example directory:
+To compile the sample application see :doc:`compiling`.
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/l2fwd
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- *See the DPDK Getting Started Guide* for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
-
- make
+The application is located in the ``l2fwd`` sub-directory.
Running the Application
-----------------------
Compiling the Application
-------------------------
-To compile the application:
+To compile the sample application see :doc:`compiling`.
-#. Go to the sample application directory:
-
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/l3fwd
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- See the *DPDK Getting Started Guide* for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
-
- make
+The application is located in the ``l3fwd`` sub-directory.
Running the Application
-----------------------
Compiling the Application
-------------------------
-To compile the application:
+To compile the sample application see :doc:`compiling`.
-#. Go to the sample application directory:
-
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/l3fwd-acl
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- See the *DPDK IPL Getting Started Guide* for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
-
- make
+The application is located in the ``l3fwd-acl`` sub-directory.
Running the Application
-----------------------
Compiling the Application
-------------------------
-To compile the application:
+To compile the sample application see :doc:`compiling`.
-#. Go to the sample application directory:
-
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/l3fwd-power
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- See the *DPDK Getting Started Guide* for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
-
- make
+The application is located in the ``l3fwd-power`` sub-directory.
Running the Application
-----------------------
Compiling the Application
-------------------------
-To compile the application:
+To compile the sample application see :doc:`compiling`.
-#. Go to the sample application directory:
-
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/l3fwd-vf
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- See the *DPDK Getting Started Guide* for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
-
- make
-
-.. note::
-
- The compiled application is written to the build subdirectory.
- To have the application written to a different location,
- the O=/path/to/build/directory option may be specified in the make command.
+The application is located in the ``l3fwd-vf`` sub-directory.
Running the Application
-----------------------
Compiling the Application
-------------------------
-#. Go to the example directory:
+To compile the sample application see :doc:`compiling`.
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/link_status_interrupt
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- See the *DPDK Getting Started Guide* for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
-
- make
-
-.. note::
-
- The compiled application is written to the build subdirectory.
- To have the application written to a different location,
- the O=/path/to/build/directory option may be specified on the make command line.
+The application is located in the ``link_status_interrupt`` sub-directory.
Running the Application
-----------------------
Compiling the Application
-------------------------
-The sequence of steps used to build the application is:
+To compile the sample application see :doc:`compiling`.
-#. Export the required environment variables:
-
- .. code-block:: console
-
- export RTE_SDK=<Path to the DPDK installation folder>
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
-#. Build the application executable file:
-
- .. code-block:: console
-
- cd ${RTE_SDK}/examples/load_balancer
- make
-
- For more details on how to build the DPDK libraries and sample applications,
- please refer to the *DPDK Getting Started Guide.*
+The application is located in the ``load_balancer`` sub-directory.
Running the Application
-----------------------
Building the Sample Applications
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
The multi-process example applications are built in the same way as other sample applications,
and as documented in the *DPDK Getting Started Guide*.
-To build all the example applications:
-
-#. Set RTE_SDK and go to the example directory:
-
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/multi_process
-
-#. Set the target (a default target will be used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- See the *DPDK Getting Started Guide* for possible RTE_TARGET values.
-#. Build the applications:
- .. code-block:: console
+To compile the sample application see :doc:`compiling`.
- make
+The applications are located in the ``multi_process`` sub-directory.
.. note::
It shows how a minimal Netmap application with minimal and straightforward source code changes can be run on top of the DPDK.
Please refer to ``$RTE_SDK/examples/netmap_compat/bridge/bridge.c`` for an example of a ported application.
-Compiling the "bridge" Sample Application
------------------------------------------
+Compiling the Application
+-------------------------
-#. Go to the example directory:
+To compile the sample application see :doc:`compiling`.
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/netmap_compat
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- See the *DPDK Getting Started Guide for Linux* for possible ``RTE_TARGET`` values.
-
-#. Build the application:
-
- .. code-block:: console
-
- make
+The application is located in the ``netmap_compat`` sub-directory.
Running the "bridge" Sample Application
---------------------------------------
from the reorder buffer and sends them to the NIC ports for transmission.
Compiling the Application
---------------------------
+-------------------------
-#. Go to the example directory:
+To compile the sample application see :doc:`compiling`.
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/helloworld
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- See the *DPDK Getting Started* Guide for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
-
- make
+The application is located in the ``packet_ordering`` sub-directory.
Running the Application
-----------------------
Compiling the Application
-------------------------
-The application is located in the sample application folder in the
-``performance-thread`` folder.
-#. Go to the example applications folder
-
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/performance-thread/l3fwd-thread
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- See the *DPDK Linux Getting Started Guide* for possible RTE_TARGET values.
-
-#. Build the application:
-
- make
+To compile the sample application see :doc:`compiling`.
+The application is located in the `performance-thread/l3fwd-thread` sub-directory.
Running the Application
-----------------------
If the command line parameter ``-T 1`` is used the application also
synchronizes the PTP PHC clock with the Linux kernel clock.
-
Compiling the Application
-------------------------
-To compile the application, export the path to the DPDK source tree and edit
-the ``config/common_linuxapp`` configuration file to enable IEEE1588:
-
-.. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
-
- # Edit common_linuxapp and set the following options:
- CONFIG_RTE_LIBRTE_IEEE1588=y
-
-Set the target, for example:
+To compile the sample application see :doc:`compiling`.
-.. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
-See the *DPDK Getting Started* Guide for possible ``RTE_TARGET`` values.
-
-Build the application as follows:
-
-.. code-block:: console
+The application is located in the ``ptpclient`` sub-directory.
- # Recompile DPDK.
- make install T=$RTE_TARGET
+.. note::
+ To compile the application edit the ``config/common_linuxapp`` configuration file to enable IEEE1588
+ and then recompile DPDK:
- # Compile the application.
- cd ${RTE_SDK}/examples/ptpclient
- make
+ .. code-block:: console
+ CONFIG_RTE_LIBRTE_IEEE1588=y
Running the Application
-----------------------
Compiling the Application
-------------------------
-#. Go to the example directory:
+To compile the sample application see :doc:`compiling`.
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/qos_meter
-
-#. Set the target
- (a default target is used if not specified):
-
- .. note::
-
- This application is intended as a linuxapp only.
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
-#. Build the application:
-
- .. code-block:: console
-
- make
+The application is located in the ``qos_meter`` sub-directory.
Running the Application
-----------------------
Compiling the Application
-------------------------
-To compile the application:
+To compile the sample application see :doc:`compiling`.
-#. Go to the sample application directory:
-
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/qos_sched
-
-#. Set the target (a default target is used if not specified). For example:
+The application is located in the ``qos_sched`` sub-directory.
.. note::
This application is intended as a linuxapp only.
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
-#. Build the application:
-
- .. code-block:: console
-
- make
-
.. note::
To get statistics on the sample app using the command line interface as described in the next section,
Ring-based Processing Pipeline Performance Setup
-
Compiling the Application
-------------------------
-#. Go to the example directory:
-
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/quota_watermark
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- See the *DPDK Getting Started Guide* for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
+To compile the sample application see :doc:`compiling`.
- make
+The application is located in the ``quota_watermark`` sub-directory.
Running the Application
-----------------------
Compiling the Application
-------------------------
-To compile the application export the path to the DPDK source tree and go to
-the example directory:
+To compile the sample application see :doc:`compiling`.
-.. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
-
- cd ${RTE_SDK}/examples/rxtx_callbacks
-
-
-Set the target, for example:
-
-.. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
-See the *DPDK Getting Started* Guide for possible ``RTE_TARGET`` values.
+The application is located in the ``rxtx_callbacks`` sub-directory.
The callbacks feature requires that the ``CONFIG_RTE_ETHDEV_RXTX_CALLBACKS``
setting is on in the ``config/common_`` config file that applies to the
CONFIG_RTE_ETHDEV_RXTX_CALLBACKS=y
-Build the application as follows:
-
-.. code-block:: console
-
- make
-
-
Running the Application
-----------------------
Compiling the Application
-------------------------
-The sequence of steps used to build the application is:
-
-#. Export the required environment variables:
-
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
-#. Build the application executable file:
-
- .. code-block:: console
-
- cd ${RTE_SDK}/examples/server_node_efd/
- make
-
- For more details on how to build the DPDK libraries and sample
- applications,
- please refer to the *DPDK Getting Started Guide.*
+To compile the sample application see :doc:`compiling`.
+The application is located in the ``server_node_efd`` sub-directory.
Running the Application
-----------------------
application. For more detailed implementations see the L2 and L3 forwarding
sample applications.
-
Compiling the Application
-------------------------
-To compile the application export the path to the DPDK source tree and go to
-the example directory:
-
-.. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
-
- cd ${RTE_SDK}/examples/skeleton
-
-Set the target, for example:
-
-.. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
-See the *DPDK Getting Started* Guide for possible ``RTE_TARGET`` values.
-
-Build the application as follows:
-
-.. code-block:: console
-
- make
+To compile the sample application see :doc:`compiling`.
+The application is located in the ``skeleton`` sub-directory.
Running the Application
-----------------------
Compiling the Sample Code
-------------------------
-#. Compile vhost lib:
- To enable vhost, turn on vhost library in the configure file config/common_linuxapp.
+To enable vhost, turn on vhost library in the configure file
+``config/common_linuxapp``.
.. code-block:: console
CONFIG_RTE_LIBRTE_VHOST=y
-
-#. Go to the examples directory:
-
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/tep_termination
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- See the DPDK Getting Started Guide for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
-
- cd ${RTE_SDK}
- make config ${RTE_TARGET}
- make install ${RTE_TARGET}
- cd ${RTE_SDK}/examples/tep_termination
- make
+Then following the to compile the sample application shown in
+:doc:`compiling`.
Running the Sample Code
-----------------------
Test Pipeline Application
-
Compiling the Application
-------------------------
+To compile the sample application see :doc:`compiling`
-#. Go to the app/test directory:
-
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/app/test/test-pipeline
-
-#. Set the target (a default target is used if not specified):
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
-#. Build the application:
-
- .. code-block:: console
+The application is located in the ``$RTE_SDK/test/test-pipline`` directory.
- make
Running the Application
-----------------------
Compiling the Application
-------------------------
-#. Go to the example directory:
+To compile the sample application see :doc:`compiling`.
- .. code-block:: console
-
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/timer
-
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- See the *DPDK Getting Started Guide* for possible *RTE_TARGET* values.
-
-#. Build the application:
-
- .. code-block:: console
-
- make
+The application is located in the ``timer`` sub-directory.
Running the Application
-----------------------
Build
~~~~~
-Follow the *Getting Started Guide for Linux* on generic info about
-environment setup and building DPDK from source.
+To compile the sample application see :doc:`compiling`.
-In this example, you need build DPDK both on the host and inside guest.
-Also, you need build this example.
-
-.. code-block:: console
-
- export RTE_SDK=/path/to/dpdk_source
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- cd ${RTE_SDK}/examples/vhost
- make
+The application is located in the ``vhost`` sub-directory.
+.. note::
+ In this example, you need build DPDK both on the host and inside guest.
Start the vswitch example
~~~~~~~~~~~~~~~~~~~~~~~~~
This section shows the steps how to start a VM with the block device as
fast data path for critical application.
-Build
-~~~~~
+Compiling the Application
+-------------------------
-Follow the *Getting Started Guide for Linux* on generic info about
-environment setup and building DPDK from source.
+To compile the sample application see :doc:`compiling`.
-In this example, you need build DPDK both on the host and inside guest.
-Also, you need build this example.
-
-.. code-block:: console
-
- export RTE_SDK=/path/to/dpdk_source
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- cd ${RTE_SDK}/examples/vhost_scsi
- make
+The application is located in the ``examples`` sub-directory.
+You will also need to build DPDK both on the host and inside the guest
Start the vhost_scsi example
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Compiling
~~~~~~~~~
-#. export RTE_SDK=/path/to/rte_sdk
-#. cd ${RTE_SDK}/examples/vm_power_manager
-#. make
+Compiling the Application
+-------------------------
+
+To compile the sample application see :doc:`compiling`.
+
+The application is located in the ``vm_power_manager`` sub-directory.
Running
~~~~~~~
Compiling the Application
-------------------------
-#. Go to the examples directory:
- .. code-block:: console
- export RTE_SDK=/path/to/rte_sdk
- cd ${RTE_SDK}/examples/vmdq_dcb
+To compile the sample application see :doc:`compiling`.
-#. Set the target (a default target is used if not specified). For example:
-
- .. code-block:: console
-
- export RTE_TARGET=x86_64-native-linuxapp-gcc
-
- See the *DPDK Getting Started Guide* for possible RTE_TARGET values.
-
-#. Build the application:
-
- .. code-block:: console
-
- make
+The application is located in the ``vmdq_dcb`` sub-directory.
Running the Application
-----------------------